centos7部署mongodb集群部署 linux部署mongodb
转载
1、概述
1.1、目的
规范Mongodb数据库安装及参数配置,形成统一的数据库部署格式,达到Mongodb数据库安装及其维护工作的标准化,规范化,自动化。
1.2、环境
操作系统: Linux(RHEL,CentOS)
数据库版本: MongoDB官方社区4.0.9
1.3、注意事项
文中以>开头,表示在数据库中的操作。
$开头,表示在mongodb用户下的操作。
#开头,表示需要root权限操作。
2、系统
操作系统参数调整:
参数类型 | 注释 | 修改方法 |
IO | 调整IO调度规则 | # cat <<EOF >>/etc/rc.local echo deadline >/sys/block/sdb/queue/scheduler EOF Centos 7.2中sdb改为sda |
IO | 禁用交换区 | # echo "vm.swappiness=0" >>/etc/sysctl.conf # sysctl –p |
内核 | 关闭numa | 方法一:硬件层,在BIOS中设置关闭,联系系统管理员。 方法二:操作系统启动时关闭,步骤如下(centOS 7): 1.#vim /etc/grub2.cfg 2.在第一个UTF-8后添加numa=off 3.在第二个quiet后添加numa=off |
文件系统 | 文件数进程数限制 | #cat >>/etc/security/limits.conf <<EOF * soft nproc 65535 * hard nproc 65535 * soft nofile 65536 * hard nofile 65536 EOF |
文件系统 | 文件挂载系统 | # mount -o remount -o noatime -o nodiratime /data |
网络 | 禁用iptables | # systemctl stop iptables.service |
网络 | 禁用iv6 | # echo "net.ipv6.conf.all.disable_ipv6 =1" >>/etc/sysctl.conf # sysctl –p |
3、下载安装
3.1、安装
操作步骤:
创建用户:
#groupadd mongodb
#useradd -g mongodb -m mongodb
|
软件部署:
改名,放到指定目录:/usr/local
$ mv mongodb-linux-x86_64-4.0.9 /usr/local/mongodb
|
新建必要的文件夹(依次存放:数据库文件,日志文件,配置文件)
$ cd /usr/local/mongodb
$ mkdir data
$ mkdir log
$ mkdir etc
|
添加系统路径
$ vi /etc/profile
$ export PATH=$PATH:/usr/local/mongodb/bin
|
配置生效
$ source /etc/profile
查看是否添加成功
$ echo $PATH
|
或者做软连接
$ ln -s /usr/local/mongodb/bin/mongo /usr/bin/mongo
|
3.2、编写配置文件
配置文件编写基础内容
$ vi etc/mongodb.conf
# db存放的目录
dbpath=/usr/local/mongodb/data
# 后台启动需要配置日志输出
logpath=/usr/local/mongodb/log/mongodb.log
# 端口(根据业务情况进行填写)
port=27017
bind_ip = 127.0.0.1
# 设置成后台启动(根据业务情况进行填写)
fork=true
journal=false
|
3.3、启动关闭
启动关闭方式
# 启动服务
$ mongod --config /usr/local/mongodb/etc/mongodb.conf
# 关闭服务
$ mongod --config /usr/local/mongodb/etc/mongodb.conf --shutdown
# 或者
$ killall mongod
|
4、外网访问和权限
4.1、添加用户
# 本地连接
$ mongo
# 查看数据库
> show dbs
#切换到admin库
> use admin
switched to db admin
#创建超级管理员
> db.createUser({user: "账户名",pwd: "密码",roles: [ { role: "root", db: "admin" } ]});
#创建普通用户
> db.createUser({user: "账户名",pwd: "密码",roles: [ { role: "readWrite", db: "admin" } ]});
# 查看已有用户
> show users
|
4.2、配置文件补充
$ vi /usr/local/mongodb/etc/mongodb.conf
# 登录验证(根据业务情况进行填写)
auth=true
# 外网访问(根据业务情况进行填写)
bind_ip = 0.0.0.0
#不同版本可能配置不一样
# mongod -v
#db version v4.0.26
# 登录验证
# security:
# authorization: enabled
|
4.3、验证启动
# 本地连接 - 连接时验证
$ mongo -u username -p password
# 远程连接 - 连接时验证
$ mongo 127.0.0.1/admin -u username -p password
# 远程连接 - 连接后验证
$ mongo 127.0.0.1/admin
> use admin
switched to db admin
> db.auth("username", "password")
|
5、设置开机启动
编写启动关闭脚本
$ vi /etc/rc.d/init.d/mongod.sh
|
内容如下,(注意使用绝对路径)
#/bin/bash
start() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf
}
stop() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf --shutdown
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo
$"Usage: $0 {start|stop|restart}"
exit 1
esac
|
授权启用
# 更改权限
# chmod +x /etc/rc.d/init.d/mongod.sh
# 启动服务
$ sh mongod.sh start
# 关闭服务
$ sh mongod.sh stop
|
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。