加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 服务器 > 系统 > 正文

30分钟完成MongoDB复制集环境构建

发布时间:2023-09-26 15:10:41 所属栏目:系统 来源:
导读:环境介绍:

192.168.1.250 主 port=27408

192.168.1.250 仲裁 port=27409

192.168.1.251 备 port=27408

[root@HE4 ~]# tar xvf mongodb-linux-x86_64-2.6.10.tgz

[root@HE4 ~]# mkdir -p /exp
环境介绍:
 
192.168.1.250 主  port=27408
 
192.168.1.250 仲裁 port=27409
 
192.168.1.251 备  port=27408
 
[root@HE4 ~]# tar xvf mongodb-linux-x86_64-2.6.10.tgz
 
[root@HE4 ~]# mkdir -p /export/mongodb
 
[root@HE4 ~]# mkdir -p /export/mongodb/bin
 
[root@HE4 ~]# mkdir -p /export/mongodb/conf
 
[root@HE4 ~]# mkdir -p /export/mongodb/log
 
[root@HE4 ~]# mkdir -p /export/mongodb/data
 
[root@HE4 bin]# cd /root/mongodb-linux-x86_64-2.6.10/bin
 
[root@HE4 bin]# cp /root/mongodb-linux-x86_64-2.6.10/bin/* /export/mongodb/bin/
 
[root@HE1 bin]# vi /export/mongodb/conf/mongod.conf
 
port=27408
 
dbpath=/export/mongodb/data
 
logpath=/export/mongodb/log/mongod.log
 
fork=true
 
logappend=true
 
keyFile=/export/mongodb/key/mongod
 
nohttpinterface=true
 
replSet=shard1
 
[root@HE1 bin]# vi /export/mongodb/conf/arbiter.conf
 
port=27409
 
dbpath=/export/mongodb/arbiter
 
logpath=/export/mongodb/log/arbiter.log
 
fork=true
 
logappend=true
 
keyFile=/export/mongodb/key/arbiter
 
nohttpinterface=true
 
replSet=shard1
 
keyfile文件包括:
 
mongod,arbiter
 
创建一个生成keyfile的脚本
 
vi create_key.sh
 
cat /dev/urandom | LC_ALL=C tr -dc "[:alnum:]" | fold -w 10 |head -1 >/tmp/key.txt
 
keystring=`cat /tmp/key.txt`
 
echo $keystring >/export/mongodb/key/mongod
 
echo $keystring >/export/mongodb/key/arbiter
 
chmod 600 /export/mongodb/key/*
 
启动服务器在主
 
[root@HE3 ~]#/export/mongodb/bin/mongod -f /export/mongodb/conf/mongod.conf
 
[root@HE3 ~]# /export/mongodb/bin/mongod -f /export/mongodb/conf/arbiter.conf
 
在从
 
[root@HE4 ~]#/export/mongodb/bin/mongod -f /export/mongodb/conf/mongod.conf
 
>config={_id:'shard1',members:[{_id:0,host:'192.168.1.248:27408'},{_id:1,host:'192.168.1.249:27408'},{_id:2,host:'192.168.1.248:27409',arbiterOnly:true}]}
 
>rs.initiate(config)
 
初始化rs.initiate(config),config是之前定义的名
 
主备库配置好后,备库查询
 
shard1:SECONDARY> use test
 
switched to db test
 
shard1:SECONDARY> db.t1.find()
 
error: { "$err" : "not master and slaveOk=false", "code" : 13435 }
 
shard1:SECONDARY> rs.slaveOk()
 
shard1:SECONDARY> db.t1.find()
 
{ "_id" : ObjectId("5704c11d3e0651733bfdea23"), "x" : 1 }
 
rs.stauts()可以看状态,health:1代表健康,stateStr谁是我们的仲裁
 
想让主库降级成从库,rs.stepDown()
 
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章