码迷,mamicode.com
首页 > 数据库 > 详细

Linux下MongoDB安装和配置详解

时间:2019-07-05 14:23:15      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:需要   tab   $1   exit   bsp   source   code   bow   上传文件   

一、创建MongoDB的安装路径

在/usr/local/  创建文件夹mongoDB

mkdir mongoDB

 

二、上传文件到Linux上的/usr/local/source目录下

1. 我首先在mongoDB下载路径下载mongoDB下载对应的版本.

2.通过FTP工具将安装包上传到linux机器上面.

 

三、解压文件

1. 进入到/usr/local/source目录:

cd /usr/local/source

2. 运行如下命令: tar -zxvf mongodb-linux-i686-3.2.13-rc0.gz -C /usr/local/mongoDB

 

2. 重命名

 

四、创建配置文件

1. 创建数据库文件夹

cd /usr/local/mongoDB/mongodbserver

mkdir data

 

2. 创建日志文件夹

cd /usr/local/mongoDB/mongodbserver

mkdir log

 123@123.com

3. 创建配置文件夹与配置文件

3.1 创建配置文件夹etc

cd /usr/local/mongoDB/mongodbserver

mkdir etc

 

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

 

五、启动MongoDB

1. mongodb安装好后第一次进入是不需要密码的,也没有任何用户,通过shell命令可直接进入,cd到mongodb目录下的bin文件夹,执行命令./mongo即可,如下所示:

./mongod --config /usr/local/mongoDB/mongodbserver/etc/mongodb.conf

 

启动成功后,访问http://npfdev1:27017/ , 可以看到:

 

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()查看已有用户.

3、添加完管理用户后,关闭MongoDB,并使用权限方式再次开启MongoDB,这里注意不要使用kill直接去杀掉mongodb进程,(如果这样做了,请去data/db目录下删除mongo.lock文件),可以使用db.shutdownServer()关闭.

4、使用权限方式启动MongoDB

在配置文件中添加:auth=true , 然后启动:

 

5、进入mongo shell,使用admin数据库并进行验证,如果不验证,是做不了任何操作的。 

 

> use admin

> db.auth("pfnieadmin","123456")   #认证,返回1表示成功

六、将mongod路径添加到系统路径中,方便随处执行mongod命令

1. 在/etc/profile文件中,添加 export PATH=$PATH:/usr/local/mongoDB/mongodbserver/bin

 

2. 执行source /etc/profile,使系统环境变量立即生效

 

七、将mongo路径软链到/usr/bin路径下,方便随处执行mongo命令

1. 执行命令: ln -s /usr/local/mongoDB/mongodbserver/bin/mongo  /usr/bin/mongo

 

八、测试是否方便随处执行mongo命令

1. 回到任意路径下,执行mongo命令,连接mongod服务

 

2. 关闭mongod服务,执行db.shutdownServer()

 

2017-04-20T18:32:26.865+0800 E QUERY [thread1] 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

解决办法,执行下面的语句,添加权限:

 

db.updateUser(

 "pfnieadmin",

        {

           roles : [

                     {"role" : "userAdminAnyDatabase","db" : "admin"},

                     {"role" : "dbOwner","db" : "admin"},
                     {"role" : "clusterAdmin", "db": "admin"}

                   ]

        }

 )

 

然后在执行db.shutdownServer().

 

或者执行下面的命令关闭:

killall mongod

3. 启动mongod服务

mongod --config /usr/local/mongoDB/mongodbserver/etc/mongodb.conf

 

九、MongoDB设置为系统服务并且设置开机启动

1.通过上面简单的操作,我们已经将MongoDB配置文件配置完成,那么接下里我们将为MongoDB设置系统服务。
2.首先添加MongoDB系统服务,命令如下:vim /etc/rc.d/init.d/mongod
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

 

4.保存完成之后,添加脚本执行权限,命令如下:chmod +x /etc/rc.d/init.d/mongod 
5.启动MongoDB,service mongod start 如下图所示,则说明启动成功:

 

6.可以使用命令service mongod stop关闭MongoDB服务。
7. 验证mongoDB是否启动,输入命令lsof -i :27017,监测端口已经在使用中,所以说启动已经完成。

 

 

Linux下MongoDB安装和配置详解

标签:需要   tab   $1   exit   bsp   source   code   bow   上传文件   

原文地址:https://www.cnblogs.com/action-L/p/11137926.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!