mongodb主从搭建

#tigergao

官网进行下包,可以下载源码包或者二进制包,本次下载的为二进制包,进行试验。
主服务器搭建:
mkdir mongomaster
cp mongodb-linux-x86_64-rhel62-3.6.5.tgz /app/mongomaster/

mv mongodb-linux-x86_64-rhel62-3.6.5 mongo

useradd -m -s /bin/bash -d /home/mongod mongod
chown -R mongod:mongod mongomaster/

 mkdir -p data log

cd mongo
mkdir conf
vim mongo.conf

主库配置文件内容:
logpath=/app/mongomaster/log/mongodb.log
dbpath=/app/mongomaster/data
#verbose = true
#vvvv=true
port = 27019
bind_ip = 主库ip
maxConns = 5000
directoryperdb=true
objcheck = true
#replSet = rs0
#shardsvr=true
logappend=true
nounixsocket = false
fork = true
#auth = true
cpu = true
journal=true
journalCommitInterval=100
noprealloc = false
nssize  = 256
profile = 1
slowms  = 200
quota = true
quotaFiles = 8
master=true
注意:bind ip 此处绑定主库的ip。fork=true为指定mongo后台运行,同时设置master=true,指定为主库。
加入环境变量:
export  MONGODB_HOME=/app/mongomaster/mongo
export  PATH=$PATH:$MONGODB_HOME/bin
修改用户文件限制数:
vim /etc/security/limits.conf 末尾加入如下参数:


启动mongo:
./mongod -f /app/mongomaster/mongo/conf/mongo.conf

查看主库mongo进程已经起来了。
主库的mongo搭建完毕。开始搭建从库。

从库搭建:创建从库上放程序的目录和用户,并加入环境变量,修改打开文件数等等,并清空data目录和log目录。
 mkdir mongoslave
 scp -r  /app/mongomaster/* username@ip:/app/mongoslave
cd data
rm -rf *
cd log
rm -rf *

指定从库配置文件:

从库配置内容:
logpath=/app/mongoslave/log/mongodb.log
dbpath=/app/mongoslave/data
#verbose = true
#vvvv=true
port = 27019
bind_ip = 从库IP
maxConns = 500
#directoryperdb=true
objcheck = true
#replSet = rs0
#shardsvr=true
logappend=true
nounixsocket = false
fork = true
#auth = true
cpu = true
journal=true
journalCommitInterval=100
noprealloc = false
nssize  = 256
profile = 1
slowms  = 200
quota = true
quotaFiles = 8
slave=true
source=主库的ip:主库端口
注意:bind_ip为从库ip地址,指定角色为slave=true,source后面为主库ip:端口。表示从主库同步数据。
启动mongo:

查看mongo进程已经起来了。
接下来进行主从测试,看数据是否同步。
现在主库上进行登录mongo,建库,建表,并插入数据。
登录./mongo 主库ip:主库端口

show dbs 显示mongo默认认证库和系统库。
创建数据库
use tigergao
db.tigergao.insert({"name":"mongo主从"})
show dbs
db.tigergao.find()--查询数据
接下来在从库上验证是否有这个数据库以及这张表和这条数据。在从库上进行操作。
链接mongo:
同样在从库上进行登录:

rs.slaveOk();
show dbs
可以看到从库上已经把主库的数据自动同步过来了,表示主从搭建成功。

可以看一下从库的日志里面也会包含主库的信息:
cd /app/mongoslave/log
tailf mongodb.log日志里面显示的是主库的信息。
 

猜你喜欢

转载自www.cnblogs.com/tigergaonotes/p/11074128.html