1,下载安装包
下载mongoDB的安装文件
地址:https://www.mongodb.org/downloads#production
选择Linux 64-bit legacy 版本,下载到目标服务器上。
解压文件
tar -zxvf mongodb-linux-x86_64-3.6.1.tgz
进入解压后的目录,把bin文件夹内的文件都置为可执行权限
chmod -R 755 bin
2,创建数据文件路径
这里,我希望把数据文件和日志文件都放在data目录下,在任意位置创建data目录
mkdir data
进入data,创建数据文件目录
mkdir db
给data目录赋可写权限
我这里粗暴一些,直接777了
chmod -R 777 data
3,编写配置文件
为了便于我们启动mongoDB,先编写一个配置文件
我这里把配置文件直接放入了bin目录下
vi mongodb.conf
内容如下:
-
port=27017
# 设置端口号(默认的端口号是 27017) -
dbpath=/usr/appdata/mongodb/data/db
# 设置数据文件的存放目录 -
fork=true
# 设置为以守护进程的方式运行,即在后台运行 -
logpath=/usr/appdata/mongodb/data/logs
# 设置日志文件的存放目录及其日志文件名 -
auth = true # 开启授权登录,使远程可以访问
-
bind_ip = 0.0.0.0 #绑定所有网卡
注意,开启守护进程模式 fork 的时候,一定要设置log日志;
设置log日志要注意,logpath的路径一定要是文件路径,而不是文件夹路径。
4,测试启动
进入bin目录,输入命令
./mongod -f ./mongodb.conf
这时候会显示数据库启动成功
在服务器本地测试一下,使用命令
-
./mongo 127.0.0.1
-
MongoDB shell version v3.6.1
connecting to: mongodb://127.0.0.1:27017/test
MongoDB server version: 3.6.1
这标识数据库启动成功
在局域网内的其它机器使用工具连接测试一下。
有的小伙伴可能会发现无法连接,通常这都是防火墙的端口没有打开造成的
使用命令打开端口
-
开启端口
-
firewall-cmd --zone=public --add-port=27017/tcp --permanent
-
查看端口
-
firewall-cmd --permanent --query-port=27017/tcp
-
重启防火墙
-
firewall-cmd --reload
注意事项:
a,要加上 --permanent 才能保证重启后也能打开
b,这里最好重启一下防火墙,有时候开启端口并不能立即生效,什么原因我也不清楚
好了,现在局域网内其它机器也可以连接到数据库了。
5,注册到系统开机启动
centos 7的开机启动跟之前版本的centos有很大不同。现在用 systemctl命令代替了之前的chkconfig 和 service 命令
注册到开机启动的方法如下:
在系统服务目录下新建mongodb的启动服务,并给与754的权限
-
cd /lib/systemd/system
-
vi mongodb.service
chmod 754 mongodb.service
内容如下
-
[Unit]
-
-
Description=mongodb
-
After=network.target remote-fs.target nss-lookup.target
-
-
[Service]
-
Type=forking
-
ExecStart=/usr/appdata/mongodb/bin/mongod -f /usr/appdata/mongodb/bin/mongodb.conf
-
ExecReload=/bin/kill -s HUP $MAINPID
-
ExecStop=/usr/appdata/mongodb/bin/mongod --shutdown -f /usr/appdata/mongodb/bin/mongodb.conf
-
PrivateTmp=true
-
-
[Install]
-
WantedBy=multi-user.target
路径必须要写绝对路径
-
启动
-
systemctl start mongodb.service
-
关闭
-
systemctl stop mongodb.service
-
注册到开机启动
-
systemctl enable mongodb.service
6,重启机器验证
#reboot