mongodb在Linux下部署

Posted shu-hua

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongodb在Linux下部署相关的知识,希望对你有一定的参考价值。

1、下载上传mongodb安装文件,创建mongodb的安装路径

在路径下https://www.mongodb.org/dl/linux下载需要的mongodb安装版本,我下载的是linux4.0.0版

下载到本地后,使用ftp将文件上传到linux服务器上,当然你也可以用其他方式上传。

新建一个mongodb文件夹

技术图片

 

解压压缩文件,并移动到mongodb文件夹下,执行如下命令tar -zxvf mongodb-linux-x86_64-4.0.0.tgz -C /usr/local/mongodb

技术图片

将解压出来的文件进行重命名,执行命令mv mongodb-linux-x86_64-4.0.0 mongodbserver

技术图片

2、在文件夹下创建数据文件夹data,日志文件log,配置文件夹etc

 在mongodbserver下创建三个文件夹,分别是data,log,etc

技术图片

 创建配置文件mongodb.conf,

命令:cd /usr/local/mongodb/mongodbserver/etc
vi mongodb.conf
具体的配置项如下

技术图片

 3、启动mongodb

先进入bin目录,执行如下命令启动MongoDB,

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

启动时出现一个报错,检查了配置文件,还从网上找了很多方法,发现问题还是没有解决,于是又再仔细的检查了一遍配置文件,惊奇的发现logpath中的路径错了,配置文件中写的是logs,而我实际建的文件夹是log(使用Linux系统就是这样,输错一个字符就能让你检查的半死,所以细心细心再细心)

技术图片

技术图片

 重新修改了配置文件后终于正常启动了

 技术图片

 4、在admin数据库中添加test账号

先在bin目录下执行./mongo命令

技术图片

 接下来就进入到MongoDB数据库,指定进入admin库,执行如下命令:

> use admin
switched to db admin
> db.createUser( {user: "test",pwd: "123456",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]});

成功后会这样显示

技术图片

  添加完用户后可以使用show users或db.system.users.find()查看已有用户

技术图片 

添加用户后关闭mongo,使用db.shutdownServer()关闭,注意不要使用kill直接杀掉进程,如果这样做了,要把data/db目录下的mongo.lock文件删除

技术图片

 5、验证用test账号登录admin库

启动mongodb,用test账号登陆admin数据库,需要用test账号进行验证,没有验证不能进行其他操作,返回1表示成功。

技术图片

 6、在任意路径下可以执行mongodb命令来连接mongo服务

将mongo路径添加到系统环境变量中,在/etc/profile文件中添加一条配置如下:
export PATH=$PATH:/usr/local/mongoDB/mongodbserver/bin

技术图片

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

技术图片

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

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

 技术图片

回到任意路径下面,测试执行mongo命令是否可以连接mongo服务

发现连接失败,原因是我之前执行了命令db.shutdownServer()将mongo服务都关闭了,那自然那是连不上的,所以要先将服务启动

 技术图片

 技术图片

 7、将mongodb设置为系统服务并且设置为开机启动

首先添加MongoDB系统服务,命令如下:vim /etc/rc.d/init.d/mongod,进入编辑器后将如下内容复制进去

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 

退出保存后,使用service mongod start来启动服务,使用service mongod stop来停止服务

技术图片

 

PS: 本文参考博客https://www.cnblogs.com/pfnie/articles/6759105.html

以上是关于mongodb在Linux下部署的主要内容,如果未能解决你的问题,请参考以下文章

Mongodb~Linux环境下的部署~服务的部署与自动化

如何在linux中部署mongodb并设置连接认证

Linux下部署MongoDB

Linux下源码安装部署mongodb

Linux下源码安装部署mongodb

Linux下部署MongoDB4.2版本sharding集群