一、环境
Centos 6.8
MongoDB 3.2.7
二、安装
这里我们在官网下载源码进行安装. 下载地址: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.7.tgz
下载源码-> 使用wget下载
cd /usr/local
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.7.tgz
tar -xvf mongodb-linux-x86_64-rhel62-3.2.7.tgz
mv mongodb-linux-x86_64-rhel62-3.2.7 mongodb
修改/etc/profile, 添加如下内容配置环境变量
export MONGODB_HOME=/usr/local/mongodb
export PATH=$MONGODB_HOME/bin:$PATH
执行命令:
vim /etc/profile
source /etc/profile
查看mongodb版本信息 mongod -v
mongod -v
2018-09-11T21:48:56.481+0800 I CONTROL [initandlisten] MongoDB starting : pid=44121 port=27017 dbpath=/data/db 64-bit host=centos-01
2018-09-11T21:48:56.481+0800 I CONTROL [initandlisten] db version v3.2.7
2018-09-11T21:48:56.481+0800 I CONTROL [initandlisten] git version: 4249c1d2b5999ebbf1fdf3bc0e0e3b3ff5c0aaf2
2018-09-11T21:48:56.481+0800 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1e-fips 11 Feb 2013
安装成功了! 下面进行配置, 启动
三、启动
创建数据库目录
MongoDB需要自建数据库文件夹
mkdir -p /data/mongodb
mkdir -p /data/mongodb/log
touch /data/mongodb/log/mongodb.log
添加配置文件,请参考官方文档
vim /etc/mongodb.conf
配置文件内容:
dbpath=/data/mongodb
logpath=/data/mongodb/log/mongodb.log
logappend=true
bind_ip=0.0.0.0
port=27017
fork=true
##auth = true # 先关闭, 创建好用户在启动
通过配置文件启动
mongod -f /etc/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 2814
child process started successfully, parent exiting
出现suceessfully表示启动成功了
配置防火墙
将27017端口添加到防火墙中
vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 27017 -j ACCEPT
/etc/init.d/iptables reload
在外面测试连接成功
四、当Mongodb非正常关闭,重启出现错误的解决办法
ERROR: child process failed, exited with error number 1
1.此时需要查看端口是否还在活动,如果还在活动,请杀掉进程
2.重新修复一下数据库路径和日志
mongod --repair --dbpath=/data/mongodb --logpath=/data/mongodb/log/mongodb.log
2018-09-14T08:19:56.981+0800 I CONTROL [main] log file "/data/mongodb/log/mongodb.log" exists; moved to "/data/mongodb/log/mongodb.log.2018-09-14T00-19-56".
4.出现successfully就重启成功啦
5.进入/usr/local/mongodb/bin,使用mongo命令就可以启动mongo命令行,此时就可以为所欲为的创建数据库了