查找自己要用的版本
https://www.mongodb.org/downloads#production
[yxkong@localhost local]$ su root
密码:
[root@localhost local]# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.0.6.tgz #下载mongodb
[root@localhost local]# tar -zxvf mongodb-linux-x86_64-rhel70-3.0.6.tgz
[root@localhost local]# mv mongodb-linux-x86_64-rhel70-3.0.6.tgz mongodb/
[root@localhost mongodb]# mkdir -p /data/db #新建mongodb数据文件存放目录
[root@localhost mongodb]# mkdir -p /data/logs #新建log文件存放目录
[root@localhost mongodb]# cd bin/
新建配置文件,mongodb支持把参数写进配置文件,然后以配置文件的配置来启动,我们此处也使用此方式。
[root@localhost bin]# vim mongodb.conf #新建配置文件
配置文件内容
dbpath=/data/db #数据库文件存放目录
logpath=/data/logs/mongodb.log #日志文件
port=27017 #端口
fork=true #以守护程序的方式启用(后台运行)
#通过访问http://IP:28017/可以查看到mongodb启动的一些信息,同时也对mongodb运行
#的统计情况进行监控。在使用mongodb过程中,我们可以使用参数将该功能禁用掉。
#修改配置文件mongodb.conf,增加参数选项:nohttpinterface = true 即可。
nohttpinterface = true
已配置文件启动mongo
[root@localhost bin]# ./mongod --config mongodb.conf
报错
about to fork child process, waiting until server is ready for connections.
forked process: 3697
ERROR: child process failed, exited with error number 100
查看日志文件:
2015-09-29T11:12:04.091+0800 I JOURNAL [initandlisten]
2015-09-29T11:12:04.091+0800 E JOURNAL [initandlisten] Insufficient free space for journal files
2015-09-29T11:12:04.091+0800 I JOURNAL [initandlisten] Please make at least 3379MB available in /data/db/journal or use --smallfiles
2015-09-29T11:12:04.091+0800 I JOURNAL [initandlisten]
2015-09-29T11:12:04.091+0800 I STORAGE [initandlisten] exception in initAndListen: 15926 Insufficient free space for journals, terminating
由上可知,journal文件的存储空间不够,我们可以选择关闭journal
journal:日志,(redo log,更多的介绍请看这里和这里)
默认值:(在64位系统)true。
默认值:(32位系统)false。
设置为true,启用操作日志,以确保写入持久性和数据的一致性,会在dbpath目录下创建journal目录。
设置为false,以防止日志持久性的情况下,并不需要开销。为了减少磁盘上使用的日志的影响,您可以启用nojournal,并设置为true。
注意:在64位系统上禁用日志必须使用带有nojournal的。
nojournal:禁止日志
默认值:(在64位系统)false。
默认值:(32位系统)true。
设置nojournal为true关闭日志,64位,2.0版本后的mongodb默认是启用 journal日志。
nojournal=true
重新启动mongo
[root@localhost bin]# ./mongod --config mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 4763
child process started successfully, parent exiting
[root@localhost bin]# ./mongo
MongoDB shell version: 3.0.6
connecting to: test
Welcome to the MongoDB shell.
开放端口
[root@localhost bin]# vim /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 27017 -j ACCEPT
添加开机启动
[root@localhost bin]# vim /etc/rc.d/rc.local
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf