Linux下MongoDB副本集搭建(主--从--仲裁模式)

1、下载MongoDB安装文件:mongodb-linux-x86_64-3.2.1.tgz(版本随意);

2、解压安装MongoDB:tar  -zxvf  mongodb-linux-x86_64-3.2.1.tgz  -C /指定路径  (我的路径:/app/hems/mongo/)

3、复制两份数据实例,并重命名(搭建主--从--仲裁)结构,并新建conf、data、log目录,结构如下图:

4、data目录下 新建 db1、db2、db3目录(存放各自数据库文件)

5、log目录下 新建mongod1.log、 mongod2.log、mongod3.log文件(作为各自数据库的日志存放文件)

6、conf目录下,新建mongo1.conf、mongo2.conf、mongo3.conf 文件配置mongo数据库信息

具体配置如下(配置含义百度不赘述):

mongo1.conf(mongo2.conf、mongo3.conf 文件配置只是端口号不同(60002 60003))

replSet = shard1
port = 60001
dbpath = /app/hems/mongo/data/db1
logpath = /app/hems/mongo/log/mongod1.log
logappend = true
fork = true
oplogSize = 30720

7、通过配置文件分别启动数据库

进入mongodb_1\bin 目录,执行命令:numactl --interleave=all mongod --config /app/hems/mongo/conf/mongo1.conf

进入mongodb_2\bin 目录,执行命令:numactl --interleave=all mongod --config /app/hems/mongo/conf/mongo2.conf

进入mongodb_3\bin 目录,执行命令:numactl --interleave=all mongod --config /app/hems/mongo/conf/mongo3.conf

启动完成;

 

8、配置主、从、仲裁节点

进入mongodb_1\bin 目录,执行命令:

#连接到主节点
./mongo --port 60001

#连接admin库
use admin

#配置角色
config={_id:'shard1',members:[{_id:0,host:'127.0.0.1:60001'},{_id:1,host:'127.0.0.1:60002'}]}
rs.initiate(config)
rs.addArb("127.0.0.1:60003")

#修改主节点优先级:
config=rs.conf();
config.members[0].priority = 2;
rs.reconfig(config);

副本集搭建完成;

9、测试

登陆主节点(60001端口),进入mongodb_1\bin 目录,执行命令:

./mongo --port 60001

use admin;

db.shutdownServer();

登陆从节点(60002端口),进入mongodb_2\bin 目录,执行命令:

./mongo --port 60002

#查看角色信息是否已经从Secondary转变成primary

rs.stauts()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值