CentOS 搭建MongoDB

下载

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon-3.6.3.tgz

解压

tar zxvf mongodb-linux-x86_64-amazon-3.6.3.tgz

移动

mv mongodb-linux-x86_64-amazon-3.6.3 /usr/local/mongodb

备注:不用编译,本身就是编译后的二进制执行文件

添加配置文件

vim /usr/local/mongodb/bin/mongodb.conf

复制下面代码

# 数据库文件路径
dbpath=/usr/local/mongodb/data/db/
# 日志文件路径
logpath=/usr/local/mongodb/data/log/mongodb.log
# 是否追加日志
logappend=true
# 端口
port=27017
# 是否后台程序启动
fork=true
# 是否启动授权认证
auth=true

备注:需创建数据库、日志目录

配置文件详解
dbpath = \ 指定数据的存放位置,必需项
logpath = \ 指定日志的存放位置
logappend = \ 日志以追加方式写入
pidfilepath = \ 存放启动mongod是分配的进程号
bind_ip = \ mongod监听的ip,可以不设置,不设置时,通过机器的ip访问
port = \监听的端口号,务必设置,默认的端口不安全
directoryperdb = \为每个数据库的数据分配一个存储目录,建议设置,数据更好管理
journal=\ 启用恢复日志,如果mongod意外退出,下一次启动时会根据恢复日志进行恢复,但恢复日志所占空间比较大。建议设置true
keyFile = \指定使用的key的路径,集群中的所有节点都要使用相同的key才能相互连接。(在集群搭建完成之前,不应当使用keyFile,否则在部署副本集和分片时会出现没有权限操作的情况)
auth = \ 是否使用授权认证机制,集群使用时,应当使用auth=true,但在集群部署时不应该使用auth=true
noprealloc = \ 是否预分配空间,预分配空间比较占空间;不预分配空间可能对性能有影响。
replSet = \节点所属副本集的名称
fork 务必将fork选项设置为true,否则当启动节点的终端意外退出时,节点的运行进程会被杀掉
 

配置mongodb服务

vim /lib/systemd/system/mongodb.service

复制如下代码

[Unit]

Description=mongodb
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/bin/mongodb.conf
PrivateTmp=true

[Install]
WantedBy=multi-user.target
开机启动

systemctl enable mongodb.service

启动服务

systemctl start mongodb.service

停止服务

systemctl stop mongodb.service

标签:

发表评论

电子邮件地址不会被公开。 必填项已用*标注