一、mongodb安装部署
- 关闭防火墙和selinux
[root@mongodb ~]# iptables -F
[root@mongodb ~]# setenforce 0
[root@mongodb ~]# systemctl stop firewalld
2.指定一个进程同一时间最多可开启的文件数
[root@mongodb ~]# ulimit -n
1024
[root@mongodb ~]# ulimit -n 65535
[root@mongodb ~]# ulimit -n
65535
3.用户最多可开启的进程数目
[root@mongodb ~]# ulimit -u
7758
[root@mongodb ~]# ulimit -u 65535
[root@mongodb ~]# ulimit -u
65535
[root@mongodb ~]#cat /etc/rc.local
ulimit –SHn 102400
4.安装版本下载地址:
[root@mongodb ~]#
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.6.tgz
[root@mongodb ~]# tar xf mongodb-linux-x86_64-rhel70-4.0.6.tgz
[root@mongodb ~]# mv mongodb-linux-x86_64-rhel70-4.0.6 /usr/local/mongodb
[root@mongodb ~]# ln -s /usr/local/mongodb/bin/* /bin/
5.创建数据目录,日志文件及目录并创建相应配置文件
[root@mongodb ~]# mkdir -p /data/mongodb1 //数据目录
[root@mongodb ~]# mkdir -p /data/logs/mongodb //日志目录
[root@mongodb ~]# touch /data/logs/mongodb/mongodb1.log //日志文件
[root@mongodb ~]# cd /usr/local/mongodb/
[root@mongodb mongodb]# mkdir conf //配置文件目录
[root@mongodb mongodb]# vim conf/mongodb1.conf //配置文件
port=27017 //监听端口
dbpath=/data/mongodb1 //指定数据目录
logpath=/data/logs/mongodb/mongodb1.log //指定日志文件路径
logappend=true //允许写入日志
fork=true //允许创建子进程
maxConns=5000 //最大连接数
storageEngine=mmapv1 //存储引擎
6.启动MongoDB数据库,-f指定配置文件
[root@mongodb mongodb]#
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
about to fork child process, waiting until server is ready for connections.
forked process: 1825
child process started successfully, parent exiting
[root@mongodb ~]# netstat -lnpt | grep mongod
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN
1874/mongod
[root@mongodb ~]# ps aux | grep mongod | grep -v grep
root 1874 4.7 9.3 1502244 93728 ? Sl 11:55 0:02
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
7、设置开机自动启动
[root@mongodb mongodb]# vim /etc/rc.local
rm -f /data/mongodb1/mongod.lock
mongod -f /usr/local/mongodb/conf/mongodb1.conf
- 连接数据库
[root@mongodb ~]# mongo
> show dbs
admin 0.078GB
config 0.078GB
local 0.078GB
> exit
bye
关闭MongoDB的方式:
方法一:
[root@mongodb ~]# mongo
> use admin
switched to db admin
> db.shutdownServer(); //关闭服务
> exit
bye
[root@mongodb ~]# netstat -anpt |grep mongod
方法二:
[root@mongodb ~]#
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
about to fork child process, waiting until server is ready for connections.
forked process: 2123
child process started successfully, parent exiting
[root@mongodb ~]# netstat -lnpt | grep mongod
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN
2123/mongod
[root@mongodb ~]#
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf --shutdown
killing process with pid: 2123
[root@mongodb ~]# netstat -lnpt | grep mongod
方法三:
[root@mongodb ~]# /usr/local/mongodb/bin/mongod -f
/usr/local/mongodb/conf/mongodb1.conf
about to fork child process, waiting until server is ready for connections.
forked process: 2159
child process started successfully, parent exiting
[root@mongodb ~]# ps aux | grep mongod
root 2159 1.5 8.6 1500184 86340 ? Sl 12:14 0:00
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb1.conf
root 2179 0.0 0.0 112720 984 pts/0 R+ 12:14 0:00 grep --color=auto
mongod
[root@mongodb ~]# kill -9 2159 //杀死进程号
[root@mongodb ~]# netstat -lnpt | grep mongod
Mongodb多实例配置:
[root@mongodb ~]# cd /usr/local/mongodb/conf/
[root@mongodb conf]# cp mongodb{1,2}.conf
[root@mongodb conf]# vim mongodb2.conf
port=27018 #每个端口号不能相同不然启不来服务
dbpath=/data/mongodb2 #这里要修改
logpath=/data/logs/mongodb/mongodb2.log #这里也要根据情况修改
logappend=true
fork=true
maxConns=5000
storageEngine=mmapv1
[root@mongodb conf]# mkdir /data/mongodb2
[root@mongodb conf]# touch /data/logs/mongodb/mongodb2.log
[root@mongodb ~]# /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb2.conf
about to fork child process, waiting until server is ready for connections.
forked process: 63890
child process started successfully, parent exiting
[root@mongodb ~]# netstat -lnpt | grep mongod
cp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN
2159/mongod
tcp 0 0 127.0.0.1:27018 0.0.0.0:* LISTEN
63890/mongod
编写启停脚本
[root@mongodb ~]# vim /etc/init.d/mongodb
#!/bin/bash
INSTANCE=$1
ACTION=$2
case "$ACTION" in
'start')
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/"$INSTANCE".conf;;
'stop')
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/"$INSTANCE".conf --shutdown;;
'restart')
/usr/l