一、mongodb安装
1、下载并解压
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.0.tgz
tar zxvf mongodb-linux-x86_64-rhel62-3.2.0.tgz
2、移动到指定目录下
mv mongodb-linux-x86_64-rhel62-3.2.0 /usr/local/mongodb
3、添加到PATH中
vim /etc/profile
export PATH=/usr/local/mongodb/bin:$PATH
source /etc/profile
二、mongodb配置启动
1、创建数据目录和日志目录及更改配置文件
默认下,mongodb的数据目录在/data/db,如果放到其他目录启动时需要指定--dbpath参数
mkdir -p /data/db
mkdir -p /data/log
touch /data/log/mongodb.log
1、vi mongodb.conf
内容如下:
port=27017
dbpath=/data/db
logpath=/data/logs/mongodb.log
fork=true
nohttpinterface=true
bind_ip=0.0.0.0
auth=true
2、启动mongod服务
[root@node1 log]# mongod --dbpath=/data/db --fork --logpath=/data/log/mongodb.log #默认启动27017端口
about to fork child process, waiting until server is ready for connections.
forked process: 45134
child process started successfully, parent exiting
参数说明
--dbpath #数据文件存储路径
--fork #用子进程在后台启动,否则一直占有终端,用该参数时,必须指定logpath参数
--logpath #日志文件的存储路径
--httpinterface #网页管理mongodb接口,之前版本默认是开启的,由于安全性,本版本默认是关闭的,如需要加上该参数启动
3、连接到mongodb
[root@node1 ~]# mongo
MongoDB shell version: 3.2.0
connecting to: test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
Server has startup warnings:
2015-11-29T11:04:05.002+0800 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2015-11-29T11:04:05.002+0800 I CONTROL [initandlisten]
2015-11-29T11:04:05.002+0800 I CONTROL [initandlisten]
2015-11-29T11:04:05.003+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2015-11-29T11:04:05.003+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2015-11-29T11:04:05.003+0800 I CONTROL [initandlisten]
2015-11-29T11:04:05.003+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2015-11-29T11:04:05.003+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2015-11-29T11:04:05.003+0800 I CONTROL [initandlisten]
> 2+3
4、关闭mongod服务
mongod --dbpath=/data/db --fork --logpath=/data/log/mongodb.log --shutdown
5、一些基本操作
[root@localhost bin]# ./mongo 127.0.0.1
#查看数据库列表
show dbs
#当前db版本
db.version();
6、注意
注意,开启守护进程模式 fork 的时候,一定要设置log日志;
设置log日志要注意,logpath的路径一定要是文件路径,而不是文件夹路径 测试启动
进入bin目录,输入命令
./mongod -f ./mongodb.conf
这时候会显示数据库启动成功
在服务器本地测试一下,使用命令
1../mongo 127.0.0.1
2.MongoDB shell version: 2.6.4
3.connecting to: 127.0.0.1/test
这标识数据库启动成功 在局域网内的其它机器使用工具连接测试一下。
有的小伙伴可能会发现无法连接,通常这都是防火墙的端口没有打开造成的
使用命令打开端口
1.开启端口
2.firewall-cmd --zone=public --add-port=27017/tcp --permanent
3.查看端口
4.firewall-cmd --permanent --query-port=27017/tcp
5.重启防火墙
6.firewall-cmd --reload
注意事项:
a,要加上 --permanent 才能保证重启后也能打开
b,这里最好重启一下防火墙,有时候开启端口并不能立即生效,什么原因我也不清楚
好了,现在局域网内其它机器也可以连接到数据库了 注册到系统开机启动
centos 7的开机启动跟之前版本的centos有很大不同。现在用 systemctl命令代替了之前的chkconfig 和 service 命令
注册到开机启动的方法如下:
vi /etc/rc.d/rc.local
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf
7、设置系统启动
在系统服务目录下新建mongodb的启动服务,并给与754的权限
1.cd /lib/systemd/system
2.vi mongodb.service 1.chmod 754 mongodb.service 1.vi mongodb.service 1.[Unit]
2.
3.Description=mongodb
4.After=network.target remote-fs.target nss-lookup.target
5.
6.[Service]
7.Type=forking
8.ExecStart=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb.conf
9.ExecReload=/bin/kill -s HUP $MAINPID
10.ExecStop=/usr/local/mongodb/bin/mongod --shutdown -f /usr/local/mongodb/bin/mongodb.conf
11.PrivateTmp=true
12.
13.[Install]
WantedBy=multi-user.target 路径必须要写绝对路径 1.启动
2.systemctl start mongodb.service
3.关闭
4.systemctl stop mongodb.service
5.注册到开机启动
6.systemctl enable mongodb.service 重启机器验证
reboot