下载完安装包,并解压 tgz(以下演示的是 64 位 Linux上的安装) 。
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz # 下载
tar -zxvf mongodb-linux-x86_64-3.0.6.tgz # 解压
mv mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb # 将解压包拷贝到指定目录
MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中:
export PATH=/usr/local/mongodb/bin:$PATH
/usr/local/mongodb 为 MongoDB 的安装路径。
创建数据库目录
MongoDB的数据存储在data目录的db目录下,但是这个目录在安装过程不会自动创建,所以需要手动创建data目录,并在data目录中创建db目录。
以下实例中我将data目录创建于根目录下(/)。
注意:/data/db 是 MongoDB 默认的启动的数据库路径(--dbpath)。
mkdir -p /data/db
命令行中运行 MongoDB 服务
你可以再命令行中执行mongo安装目录中的bin目录执行mongod命令来启动mongdb服务。
注意:如果你的数据库目录不是/data/db,可以通过 --dbpath 来指定。
./mongod
2015-09-25T16:39:50.549+0800 I JOURNAL [initandlisten] journal dir=/data/db/journal
2015-09-25T16:39:50.550+0800 I JOURNAL [initandlisten] recover : no journal files present, no recovery needed
2015-09-25T16:39:50.869+0800 I JOURNAL [initandlisten] preallocateIsFaster=true 3.16
2015-09-25T16:39:51.206+0800 I JOURNAL [initandlisten] preallocateIsFaster=true 3.52
2015-09-25T16:39:52.775+0800 I JOURNAL [initandlisten] preallocateIsFaster=true 7.7
在/usr/local创建log、conf目录,
mkdir logs
touch ./logs/mongodb.log
mkdir conf
添加配置文件
vim ./conf/mongodb.conf
配置说明
#数据目录
dbpath=/data/db #数据目录
#日志目录
logpath=/usr/local/mongodb/logs/mongodb.log
port=27017 #端口号
#设置后台运行
fork=true
#日志输出方式
logappend = true
#开启认证
#auth = true
启动
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/conf/mongodb.conf
检查mogodb端口
netstat -lanp | grep 27017
设置开机启动
echo "/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/bin/logs/mongodb.log --logappend --auth --port=27017" >> /etc/rc.local
添加到系统服务
vim /etc/rc.d/init.d/mongod
内容如下
start() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/conf/mongodb.conf
}
stop() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/conf/mongodb.conf --shutdown
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo
$"Usage: $0 {start|stop|restart}"
exit 1
esac
修改权限
chmod +x /etc/rc.d/init.d/mongod
启动 停止
service mongod start
service mongod stop
启动mongodb:
mongo --port 27017
创建管理员账户并赋予权限(用于管理所有数据库):
db.createUser({user:"root",pwd:"1234",roles:[{role:"root", db:"admin"}]})
user:”用户名“,
pwd:"密码”,
roles:[{role:"角色名“, db:"角色所属数据库”}, {role:"角色名2“, db:"角色所属数据库2”},.....]
新增的用户在 db.system.users 中
db.getCollectionNames()
[ "system.indexes", "system.users", "system.version" ]
验证用户是否创建成功:
db.auth("root","1234")
1
> exit
杀掉进程,重启mongoDB服务:
ps -ef | grep mongod
kill -9 pid
带认证模式开启Mongod:
mongod --auth --config /usr/local/mongodb/conf/mongodb.conf
进入账户所属数据库,再认证
use admin
>switched to db admin
db.auth("用户名","密码")
>1
show dbs
>admin 0.000GB
>config 0.000GB
>local 0.000GB