CentOS-7部署MongoDB

MongoDB 官网:https://www.mongodb.com/

各版本软件下载地址:https://www.mongodb.com/download-center/community?jmp=nav

#1,安装前准备

在安装之前首先确认该版本软件是否支持你的操作系统。

更多详情查看:https://docs.mongodb.com/manual/installation/

Platform4.0 Community & Enterprise3.6 Community & Enterprise3.4 Community & Enterprise3.2 Community & Enterprise3.0 Community & Enterprise
RHEL/CentOS 6.2 and later
RHEL/CentOS 7.0 and later

#2,环境说明

系统环境说明:

[root@localhost ~]$cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

软件版本说明

本次使用的mongodb版本为:mongodb-linux-s390x-rhel72-4.0.10.tgz

#3,部署 MongoDB

#1,安装所需依赖

yum -y install libcurl openssl

#2,下载所需包

[root@localhost src]$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.10.tgz

#3,解压包

[root@localhost src]$ tar xf mongodb-linux-x86_64-rhel70-4.0.10.tgz
[root@localhost src]$ mv mongodb-linux-x86_64-rhel70-4.0.10 /usr/local/mongodb

#4,创建数据存储目录和日志文件目录

mkdir -p /usr/local/mongodb/data/db
mkdir -p /usr/local/mongodb/logs

#5,编辑 MongoDB 启动配置文件

cd /usr/local/mongodb/bin
vim mongodb.conf
#数据存储目录
dbpath=/usr/local/mongodb/data/db
#日志文件目录
logpath=/usr/local/mongodb/logs/mongodb.log
#后台运行
fork=true
auth=true
bind_ip=0.0.0.0

参数说明:

参数参数说明
–dbpath数据存放路径
–logpath日志文件路径
–logappend日志输出方式
–port启用端口号
–fork在后台运行
–auth是否需要验证权限登录 (用户名和密码)
–bind_ip限制访问的 ip
–shutdown关闭数据库

#6,MongoDB 的可执行文件位于 bin 目录下,需要将其添加到 PATH 路径中

vim /etc/profile
export MONGODB_HOME=/usr/local/mongodb
export PATH=$PATH:$MONGODB_HOME/bin   #末尾处添加
source /etc/profile    #重新加载环境变量

#7,启动 MongoDB

cd /usr/local/mongodb/bin
mongod -f mongodb.conf

#8,访问

[root@localhost ~]$mongo
MongoDB shell version v4.0.10
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("cdd40824-7611-41cb-a3ab-ef737a82068d") }
MongoDB server version: 4.0.10
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
>
[root@localhost bin]$mongod -f mongodb.conf --shutdown  #关闭服务

#9,使用脚本加入开机自启

给系统添加 MongoDB 管理脚本。

cat > /usr/lib/systemd/system/mongod.service << EOF
[Unit]
Description=MongoDB database server
After=network.target
[Service]
Type=forking
#PIDFile=/home/dp/data/mongodb/pid
ExecStart=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
EOF

然后加载启动。

[root@localhost ~]$systemctl daemon-reload
[root@localhost ~]$systemctl start  mongod
[root@localhost ~]$systemctl status  mongod
● mongod.service - MongoDB database server
   Loaded: loaded (/usr/lib/systemd/system/mongod.service; disabled; vendor preset: disabled)
   Active: active (running) since Wed 2019-07-03 11:41:13 CST; 1min 29s ago
 Main PID: 18489 (mongod)
   CGroup: /system.slice/mongod.service
           └─18489 /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb.conf
Jul 03 11:41:12 localhost.localdomain systemd[1]: Starting MongoDB database server...
Jul 03 11:41:12 localhost.localdomain mongod[18487]: about to fork child process, waiting until server is ready for connections.
Jul 03 11:41:12 localhost.localdomain mongod[18487]: forked process: 18489
Jul 03 11:41:13 localhost.localdomain mongod[18487]: child process started successfully, parent exiting
Jul 03 11:41:13 localhost.localdomain systemd[1]: Started MongoDB database server.
[root@localhost ~]$systemctl enable  mongod
Created symlink from /etc/systemd/system/multi-user.target.wants/mongod.service to /usr/lib/systemd/system/mongod.service.

这样就能够实现比较简单的管理了。

#1,数据库的启动与关闭

启动:mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/log/mongodb.log --port=27017 --logappend --fork
关闭:mongod --shutdown  --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/log/mongodb.log --port=27017 --logappend --fork

#2, 参数说明:

参数参数说明
–dbpath数据存放路径
–logpath日志文件路径
–logappend日志输出方式
–port启用端口号
–fork在后台运行
–auth是否需要验证权限登录 (用户名和密码)
–bind_ip限制访问的 ip
–shutdown关闭数据库

#3,使用配置文件的方式管理数据库

#1,普通格式配置文件

[mongod@MongoDB conf]$ vim mongod1.conf 
dbpath=/usr/local/mongodb/data
logpath=/usr/local/mongodb/log/mongodb.log
port=27017
logappend=1
fork=1

使用配置文件时的启动与关闭:

启动:mongod -f mongod1.conf 
关闭:mongod -f mongod1.conf  --shutdown

#2,YAML 格式配置文件(官方推荐使用)

[mongod@MongoDB conf]$ cat  mongod.conf 
systemLog:
   destination: file
   path: "/usr/local/mongodb/log/mongod.log"
   logAppend: true
storage:
   journal:
      enabled: true
   dbPath: "/usr/local/mongodb/data"
processManagement:
   fork: true
net:
   port: 27017

注:mongod 进程收到 SIGINT 信号或者 SIGTERM 信号,会做一些处理

  • 关闭所有打开的连接
  • 将内存数据强制刷新到磁盘
  • 当前的操作执行完毕
  • 安全停止

#3,切忌 kill -9

如果使用 kill -9 直接关闭数据库,可能会造成数据丢失,数据文件损失等风险。

可通过如下安全的方式进行关闭。

$ kill -2 PID
  原理:-2表示向mongod进程发送SIGINT信号。
$ kill -4 PID
  原理:-4表示向mognod进程发送SIGTERM信号。

当然也可以通过使用systemctl stop mongod来关闭数据库。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CN-FuWei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值