1、创建MongoDB的安装路径
在/usr/local/ 创建文件夹mongoDB
mkdir mongoDB
2、上传文件到Linux上的/usr/local/source目录下
mongodb-linux-x86_64-3.4.21-rc0.tgz 的下载地址:https://download.csdn.net/download/cnzyyh/11241208
将以上文件放置到以上目录。
3、解压文件
3.1. 进入到/usr/local/source目录:
cd /usr/local/source
3.2. 运行如下命令: tar -zxvf mongodb-linux-x86_64-3.4.21-rc0.tgz -C /usr/local/mongoDB
3.3. 重命名 mv mongodb-linux-x86_64-3.4.21-rc0 mongodbserver
4、创建配置文件
4.1. 创建数据库文件夹
cd /usr/local/mongoDB/mongodbserver
mkdir data
4.2. 创建日志文件夹
cd /usr/local/mongoDB/mongodbserver
mkdir logs
4.3. 创建配置文件夹与配置文件
4.3.1 创建配置文件夹etc
cd /usr/local/mongoDB/mongodbserver
mkdir etc
4.3.2 创建配置文件mongodb.conf
cd /usr/local/mongoDB/mongodbserver/etc
vim mongodb.conf
dbpath=/usr/local/mongoDB/mongodbserver/data
logpath=/usr/local/mongoDB/mongodbserver/logs/mongodb.log
port=27017
fork=true
journal=false
storageEngine=mmapv1
5、启动MongoDB
5.1. mongodb安装好后第一次进入是不需要密码的,也没有任何用户,通过shell命令可直接进入,cd到mongodb目录下的bin文件夹,执行命令./mongo即可,如下所示:
./mongod --config /usr/local/mongoDB/mongodbserver/etc/mongodb.conf
启动成功后,访问http://10.237.149.45:27017/ , 可以看到:
5.2、添加管理用户(mongoDB 没有无敌用户root,只有能管理用户的用户 userAdminAnyDatabase)
利用mongo命令连接mongoDB服务器端:
> use admin
switched to db admin
> db.createUser( {user: "pfnieadmin",pwd: "123456",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]});
成功后,你将会看到:
注:添加完用户后可以使用show users或db.system.users.find()查看已有用户.
5.3、添加完管理用户后,关闭MongoDB,并使用权限方式再次开启MongoDB,这里注意不要使用kill直接去杀掉mongodb进程,(如果这样做了,请去data/db目录下删除mongo.lock文件),可以使用db.shutdownServer()关闭.
5.4、使用权限方式启动MongoDB
在配置文件中添加:auth=true , 然后启动:
5.5、进入mongo shell,使用admin数据库并进行验证,如果不验证,是做不了任何操作的。
> use admin
> db.auth("pfnieadmin","123456") #认证,返回1表示成功
6、将mongod路径添加到系统路径中,方便随处执行mongod命令
6.1. 在/etc/profile文件中,添加 export PATH=$PATH:/usr/local/mongoDB/mongodbserver/bin
6.2. 执行source /etc/profile,使系统环境变量立即生效
7、将mongo路径软链到/usr/bin路径下,方便随处执行mongo命令
7.1. 执行命令: ln -s /usr/local/mongoDB/mongodbserver/bin/mongo /usr/bin/mongo
8、测试是否方便随处执行mongo命令
8.1. 回到任意路径下,执行mongo命令,连接mongod服务
8.2. 关闭mongod服务,执行db.shutdownServer()
解决办法,执行下面的语句,添加权限:
db.updateUser(
"pfnieadmin",
{
roles : [
{"role" : "userAdminAnyDatabase","db" : "admin"},
{"role" : "dbOwner","db" : "admin"},
{"role" : "clusterAdmin", "db": "admin"}
]
}
)
然后在执行db.shutdownServer()
或者执行下面的命令关闭:
killall mongod
8.3. 启动mongod服务
mongod --config /usr/local/mongoDB/mongodbserver/etc/mongodb.conf
9、MongoDB设置为系统服务并且设置开机启动
9.1.通过上面简单的操作,我们已经将MongoDB配置文件配置完成,那么接下里我们将为MongoDB设置系统服务。
9.2.首先添加MongoDB系统服务,命令如下:vim /etc/rc.d/init.d/mongod
9.3.打开编辑器后,我们将下面的配置粘贴进去,然后保存
start() {
/usr/local/mongoDB/mongodbserver/bin/mongod --config /usr/local/mongoDB/mongodbserver/etc/mongodb.conf
}
stop() {
/usr/local/mongoDB/mongodbserver/bin/mongod --config /usr/local/mongoDB/mongodbserver/etc/mongodb.conf --shutdown
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo
$"Usage: $0 {start|stop|restart}"
exit 1
esac