linux下mongodb的安装与配置

MongoDB 小智 1028℃ 1评论

测试环境:centos7.0 64位
安装目录:/usr/local/mongodb/

mongodb作为一种nosql数据库,其应用还算比较广泛,关于其安装和配置,这里做个简单的介绍

1. 下载mongodb

下载目录 /usr/local/src
https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.11.tgz

2. 解压

[root@VM_112_250_centos src]# tar -xzvf mongodb-linux-x86_64-3.2.11.tgz
mongodb-linux-x86_64-3.2.11/README
mongodb-linux-x86_64-3.2.11/THIRD-PARTY-NOTICES
mongodb-linux-x86_64-3.2.11/MPL-2
mongodb-linux-x86_64-3.2.11/GNU-AGPL-3.0
mongodb-linux-x86_64-3.2.11/bin/mongodump
mongodb-linux-x86_64-3.2.11/bin/mongorestore
mongodb-linux-x86_64-3.2.11/bin/mongoexport
mongodb-linux-x86_64-3.2.11/bin/mongoimport
mongodb-linux-x86_64-3.2.11/bin/mongostat
mongodb-linux-x86_64-3.2.11/bin/mongotop
mongodb-linux-x86_64-3.2.11/bin/bsondump
mongodb-linux-x86_64-3.2.11/bin/mongofiles
mongodb-linux-x86_64-3.2.11/bin/mongooplog
mongodb-linux-x86_64-3.2.11/bin/mongoperf
mongodb-linux-x86_64-3.2.11/bin/mongod
mongodb-linux-x86_64-3.2.11/bin/mongos
mongodb-linux-x86_64-3.2.11/bin/mongo

3. 移动到/usr/local并重命名为mongodb

[root@VM_112_250_centos src]# mv mongodb-linux-x86_64-3.2.11 ../mongodb

4. 创建数据和日志目录

[root@VM_112_250_centos src]# cd ../mongodb/
[root@VM_112_250_centos mongodb]# mkdir data
[root@VM_112_250_centos mongodb]# mkdir logs

切到bin目录,查看
[root@VM_112_250_centos bin]# ls
bsondump mongod mongoexport mongoimport mongoperf mongos mongotop
mongo mongodump mongofiles mongooplog mongorestore mongostat

5. 启动

[root@VM_112_250_centos bin]# ./mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --logappend --port=27017 --fork

about to fork child process, waiting until server is ready for connections.
forked process: 19667
ERROR: child process failed, exited with error number 1

出现了错误,关于出现这个错误的原因貌似有很多,这里是因为logpath的指定有问题
添加了mongodb.log
再次启动

[root@VM_112_250_centos bin]# ./mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs/mongodb.log --logappend --port=27017 --fork

about to fork child process, waiting until server is ready for connections.
forked process: 19976
child process started successfully, parent exiting

由此可见,mongodb已经启动成功
当然也可以把mongodb的bin目录添加到环境变量(为了方便的进入mongo的shell命令行环境),方法参考这里
当添加到环境变量后,就可以直接使用bin目录下的程序,比如启动的时候可以这样(不添加到环境变量的话,设置软连接也是可以的
[root@VM_112_250_centos bin]# mongod –dbpath=/usr/local/mongodb/data –logpath=/usr/local/mongodb/logs/mongodb.log –logappend –port=27017 –fork

//下面这个是需要权限的登录方式, 用户连接需要用户名和密码,当然前提是有用户名和密码,没有的话添加了–auth自然是也没什么效果
[root@VM_112_250_centos bin]# ./mongod –dbpath=/usr/local/mongodb/data –logpath=/usr/local/mongodb/logs/mongodb.log –logappend –port=27017 –fork –auth

注意启动时logpath /usr/local/mongodb/logs/mongodb.log 这里是指向一个文件,而不是目录,如果不是指向文件也是启动不了

6. 设置为开机自启动

采用vim命令编辑/etc/rc.d/rc.local(或者/etc/rc.local,不同的linux发行版可能不一样)
[root@VM_112_250_centos /]# vim /etc/rc.d/rc.local
然后在最后添加
/usr/local/mongodb/bin/mongod –dbpath=/usr/local/mongodb/data –logpath=/usr/local/mongodb/logs/mongodb.log –logappend –port=27017 –fork
之后保存(:w)退出(:q)即可
重启之后查看,可发现mongodb已经成功启动
[root@VM_112_250_centos ~]# netstat -antp | grep mongod
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 2050/mongod

7. 常用参数解释 

--dbpath 数据库路径(数据文件)
--logpath 日志文件
--master 指定为主机器
--slave 指定为从机器
--source 指定主机器的IP地址
--pologSize 指定日志文件大小不超过64M.因为resync是非常操作量大且耗时,最好通过设置一个

足够大的oplogSize来避免resync(默认的 oplogSize是空闲磁盘大小的5%)。
--logappend 日志文件末尾添加
--port 启用端口号
--fork 在后台运行
--only 指定只复制哪一个数据库
--slavedelay 指从复制检测的时间间隔
--auth 是否需要验证权限登录(用户名和密码)

本文固定链接:心知博客 » linux下mongodb的安装与配置
本站内容除特别标注外均为原创,欢迎转载,但请保留出处!

喜欢 (4)
发表我的评论
取消评论
表情

请填写您的昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(1)个小伙伴在吐槽