1320503165 发表于 2018-12-10 16:33:04

Linux下MongoDB安装和配置

一、创建MongoDB的安装路径在/usr/local/创建文件夹mongoDBmkdir mongoDBhttps://images2015.cnblogs.com/blog/1119433/201704/1119433-20170424210030412-62465254.png二、上传文件到Linux上的/usr/local/source目录下1. 我首先在mongoDB下载路径下载mongoDB下载对应的版本.2.通过FTP工具将安装包上传到linux机器上面.https://images2015.cnblogs.com/blog/1119433/201704/1119433-20170424210358303-227373191.png三、解压文件1. 进入到/usr/local/source目录:cd /usr/local/source2. 运行如下命令: tar -zxvf mongodb-linux-i686-3.2.13-rc0.gz -C /usr/local/mongoDBhttps://images2015.cnblogs.com/blog/1119433/201704/1119433-20170424210739397-1337671446.png2. 重命名https://images2015.cnblogs.com/blog/1119433/201704/1119433-20170424211035475-119035000.png四、创建配置文件1. 创建数据库文件夹cd /usr/local/mongoDB/mongodbservermkdir datahttps://images2015.cnblogs.com/blog/1119433/201704/1119433-20170427204211850-523478259.png2. 创建日志文件夹cd /usr/local/mongoDB/mongodbservermkdir loghttps://images2015.cnblogs.com/blog/1119433/201704/1119433-20170427204613850-843678893.png3. 创建配置文件夹与配置文件3.1 创建配置文件夹etccd /usr/local/mongoDB/mongodbservermkdir etchttps://images2015.cnblogs.com/blog/1119433/201704/1119433-20170427204740537-412044592.png3.2 创建配置文件mongodb.confcd /usr/local/mongoDB/mongodbserver/etcvim mongodb.confhttps://common.cnblogs.com/images/copycode.gif
dbpath=/usr/local/mongoDB/mongodbserver/datalogpath=/usr/local/mongoDB/mongodbserver/logs/mongodb.logport=27017fork=true
journal=falsestorageEngine=mmapv1https://common.cnblogs.com/images/copycode.gif

五、启动MongoDB1. mongodb安装好后第一次进入是不需要密码的,也没有任何用户,通过shell命令可直接进入,cd到mongodb目录下的bin文件夹,执行命令./mongo即可,如下所示:./mongod --config /usr/local/mongoDB/mongodbserver/etc/mongodb.confhttps://images2015.cnblogs.com/blog/1119433/201704/1119433-20170427213355506-683931454.png启动成功后,访问http://npfdev1:27017/ , 可以看到:https://images2015.cnblogs.com/blog/1119433/201704/1119433-20170427213447006-163786569.png2、添加管理用户(mongoDB 没有无敌用户root,只有能管理用户的用户 userAdminAnyDatabase)利用mongo命令连接mongoDB服务器端:https://images2015.cnblogs.com/blog/1119433/201704/1119433-20170427214410522-78868136.png> use admin
switched to db admin
> db.createUser( {user: "pfnieadmin",pwd: "123456",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]});成功后,你将会看到:https://images2015.cnblogs.com/blog/1119433/201705/1119433-20170507180442148-299759750.png注:添加完用户后可以使用show users或db.system.users.find()查看已有用户.3、添加完管理用户后,关闭MongoDB,并使用权限方式再次开启MongoDB,这里注意不要使用kill直接去杀掉mongodb进程,(如果这样做了,请去data/db目录下删除mongo.lock文件),可以使用db.shutdownServer()关闭.4、使用权限方式启动MongoDB在配置文件中添加:auth=true , 然后启动:https://images2015.cnblogs.com/blog/1119433/201704/1119433-20170427215146615-276991171.png5、进入mongo shell,使用admin数据库并进行验证,如果不验证,是做不了任何操作的。
https://images2015.cnblogs.com/blog/1119433/201705/1119433-20170507180549507-1781757279.png
> use admin
> db.auth("pfnieadmin","123456")   #认证,返回1表示成功
六、将mongod路径添加到系统路径中,方便随处执行mongod命令1. 在/etc/profile文件中,添加 export PATH=$PATH:/usr/local/mongoDB/mongodbserver/binhttps://images2015.cnblogs.com/blog/1119433/201705/1119433-20170504211503226-993997839.png2. 执行source /etc/profile,使系统环境变量立即生效https://images2015.cnblogs.com/blog/1119433/201705/1119433-20170504211914757-119873179.png七、将mongo路径软链到/usr/bin路径下,方便随处执行mongo命令1. 执行命令: ln -s /usr/local/mongoDB/mongodbserver/bin/mongo/usr/bin/mongohttps://images2015.cnblogs.com/blog/1119433/201705/1119433-20170504212307507-1404959127.png八、测试是否方便随处执行mongo命令1. 回到任意路径下,执行mongo命令,连接mongod服务https://images2015.cnblogs.com/blog/1119433/201705/1119433-20170504212619523-362012020.png2. 关闭mongod服务,执行db.shutdownServer()https://images2015.cnblogs.com/blog/1119433/201705/1119433-20170507180638586-1984680641.png2017-04-20T18:32:26.865+0800 E QUERY Error: shutdownServer failed: {
"ok" : 0,
"errmsg" : "not authorized on admin to execute command { shutdown: 1.0 }",
"code" : 13
} :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
DB.prototype.shutdownServer@src/mongo/shell/db.js:302:1
@(shell):1:1解决办法,执行下面的语句,添加权限:https://common.cnblogs.com/images/copycode.gif
db.updateUser( "pfnieadmin",      {         roles : [                     {"role" : "userAdminAnyDatabase","db" : "admin"},                     {"role" : "dbOwner","db" : "admin"},
                     {"role" : "clusterAdmin", "db": "admin"}                   ]      } )https://common.cnblogs.com/images/copycode.gif

然后在执行db.shutdownServer().https://images2015.cnblogs.com/blog/1119433/201705/1119433-20170507180733195-669494826.png或者执行下面的命令关闭:killall mongod3. 启动mongod服务mongod --config /usr/local/mongoDB/mongodbserver/etc/mongodb.confhttps://images2015.cnblogs.com/blog/1119433/201705/1119433-20170504214827148-118313394.png 九、MongoDB设置为系统服务并且设置开机启动1.通过上面简单的操作,我们已经将MongoDB配置文件配置完成,那么接下里我们将为MongoDB设置系统服务。
2.首先添加MongoDB系统服务,命令如下:vim /etc/rc.d/init.d/mongod
3.打开编辑器后,我们将下面的配置粘贴进去,然后保存https://common.cnblogs.com/images/copycode.gif
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 1esac https://common.cnblogs.com/images/copycode.gif

4.保存完成之后,添加脚本执行权限,命令如下:chmod +x /etc/rc.d/init.d/mongod
5.启动MongoDB,service mongod start 如下图所示,则说明启动成功:https://images2015.cnblogs.com/blog/1119433/201705/1119433-20170507154716914-744849120.png6.可以使用命令service mongod stop关闭MongoDB服务。
7. 验证mongoDB是否启动,输入命令lsof -i :27017,监测端口已经在使用中,所以说启动已经完成。

页: [1]
查看完整版本: Linux下MongoDB安装和配置