您好,登录后才能下订单哦!
环境介绍:
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()
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。