Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6664218
  • 博文数量: 1005
  • 博客积分: 8199
  • 博客等级: 中将
  • 技术积分: 13071
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-25 20:19
个人简介

脚踏实地、勇往直前!

文章分类

全部博文(1005)

文章存档

2020年(2)

2019年(93)

2018年(208)

2017年(81)

2016年(49)

2015年(50)

2014年(170)

2013年(52)

2012年(177)

2011年(93)

2010年(30)

分类: NOSQL

2019-02-21 09:16:53

需求:因为端口调整,需要改变副本的备份集
1.查看当前的副本集信息
[root@localhost bin]# ./mongo 192.168.1.134:10001
repltest:PRIMARY> use admin
repltest:PRIMARY> db.auth("sa","123456")
repltest:PRIMARY> rs.config()
{
        "_id" : "repltest",
        "version" : 1,
        "members" : [
                {
                        "_id" : 0,
                        "host" : "192.168.1.134:10001",
                        "arbiterOnly" : false,
                        "buildIndexes" : true,
                        "hidden" : false,
                        "priority" : 1,
                        "tags" : {


                        },
                        "slaveDelay" : 0,
                        "votes" : 1
                },
                {
                        "_id" : 1,
                        "host" : "192.168.1.135:10002",
                        "arbiterOnly" : false,
                        "buildIndexes" : true,
                        "hidden" : false,
                        "priority" : 1,
                        "tags" : {


                        },
                        "slaveDelay" : 0,
                        "votes" : 1
                },
                {
                        "_id" : 2,
                        "host" : "192.168.1.135:10003",
                        "arbiterOnly" : true,
                        "buildIndexes" : true,
                        "hidden" : false,
                        "priority" : 1,
                        "tags" : {


                        },
                        "slaveDelay" : 0,
                        "votes" : 1
                }
        ],
        "settings" : {
                "chainingAllowed" : true,
                "heartbeatTimeoutSecs" : 10,
                "getLastErrorModes" : {


                },
                "getLastErrorDefaults" : {
                        "w" : 1,
                        "wtimeout" : 0
                }
        }
}


我们需要将这里各机器的端口10001,10002,10003分别修改为20001,20002,20003


2.修改从库192.168.1.135:10002为192.168.1.135:20002
2.1 停掉该从库
[root@localhost bin]# ./mongo localhost:10002
repltest:SECONDARY> use admin
repltest:SECONDARY> db.auth("sa","123456")
repltest:SECONDARY> db.shutdownServer()


2.2修改配置文件(mongo.cnf)将端口10002修改为20002
port = 20002


2.3启动该重库
[root@localhost bin]# ./mongod -f /opt/mongodb3015_slave/conf/mongo.cnf


2.4登陆主库执行如下命令
repltest:PRIMARY> rs.remove("192.168.1.135:10002")  ##移除原配置文件中的已经变更地址的主机
repltest:PRIMARY> rs.add("192.168.1.135:20002")     ##添加变更后的端口


2.5查看配置是否生效
rs.config()
rs.status()


3.修改仲裁节点的端口
3.1停掉仲裁节点
[root@localhost bin]# ./mongo localhost:10003
MongoDB shell version: 3.0.15
connecting to: localhost:10003/test
repltest:ARBITER> use admin
switched to db admin
repltest:ARBITER> db.auth("sa","123456")
Error: 18 Authentication failed.
0
repltest:ARBITER> db.shutdownServer()


3.2修改配置文件(mongo.cnf)将端口10003修改为20003
port = 20002


3.3启动该重库
[root@localhost bin]# ./mongod -f /opt/mongodb3015_arbiter/conf/mongo.cnf


3.4登陆主库执行如下命令
repltest:PRIMARY> rs.remove("192.168.1.135:10003")  ##移除原配置文件中的已经变更地址的主机
repltest:PRIMARY> rs.addArb("192.168.1.135:20003")  ##添加仲裁节点


3.5查看配置是否生效
rs.config()
rs.status()


4.修改主库192.168.1.134:10001为192.168.1.134:10002
4.1 停掉该主库
[root@localhost bin]# ./mongo localhost:10001
repltest:PRIMARY> use admin
repltest:PRIMARY> db.auth("sa","123456")
repltest:PRIMARY> db.shutdownServer()
这个时候该另外一个从库会变更为主库


4.2修改配置文件(mongo.cnf)将端口10001修改为20001
port = 20001


4.3启动该库
[root@localhost bin]# ./mongod -f /opt/mongodb3015/conf/mongo.cnf


4.4登陆主库执行如下命令
root@localhost bin]# ./mongo 192.168.1.135:20002
repltest:PRIMARY> use admin
repltest:PRIMARY> db.auth("sa","123456")
repltest:PRIMARY> rs.remove("192.168.1.134:10001")  ##移除原配置文件中的已经变更地址的主机
repltest:PRIMARY> rs.add("192.168.1.134:20001")     ##添加变更后的端口


5.整个配置完成后查看配置和状态
repltest:PRIMARY> rs.conf()
{
        "_id" : "repltest",
        "version" : 7,
        "members" : [
                {
                        "_id" : 3,
                        "host" : "192.168.1.135:20002",
                        "arbiterOnly" : false,
                        "buildIndexes" : true,
                        "hidden" : false,
                        "priority" : 1,
                        "tags" : {


                        },
                        "slaveDelay" : 0,
                        "votes" : 1
                },
                {
                        "_id" : 4,
                        "host" : "192.168.1.135:20003",
                        "arbiterOnly" : true,
                        "buildIndexes" : true,
                        "hidden" : false,
                        "priority" : 1,
                        "tags" : {


                        },
                        "slaveDelay" : 0,
                        "votes" : 1
                },
                {
                        "_id" : 5,
                        "host" : "192.168.1.134:20001",
                        "arbiterOnly" : false,
                        "buildIndexes" : true,
                        "hidden" : false,
                        "priority" : 1,
                        "tags" : {


                        },
                        "slaveDelay" : 0,
                        "votes" : 1
                }
        ],
        "settings" : {
                "chainingAllowed" : true,
                "heartbeatTimeoutSecs" : 10,
                "getLastErrorModes" : {


                },
                "getLastErrorDefaults" : {
                        "w" : 1,
                        "wtimeout" : 0
                }
        }
}
repltest:PRIMARY> rs.status()
{
        "set" : "repltest",
        "date" : ISODate("2019-02-21T01:13:14.107Z"),
        "myState" : 1,
        "members" : [
                {
                        "_id" : 3,
                        "name" : "192.168.1.135:20002",
                        "health" : 1,
                        "state" : 1,
                        "stateStr" : "PRIMARY",
                        "uptime" : 1504,
                        "optime" : Timestamp(1550711569, 1),
                        "optimeDate" : ISODate("2019-02-21T01:12:49Z"),
                        "electionTime" : Timestamp(1550711217, 1),
                        "electionDate" : ISODate("2019-02-21T01:06:57Z"),
                        "configVersion" : 7,
                        "self" : true
                },
                {
                        "_id" : 4,
                        "name" : "192.168.1.135:20003",
                        "health" : 1,
                        "state" : 7,
                        "stateStr" : "ARBITER",
                        "uptime" : 596,
                        "lastHeartbeat" : ISODate("2019-02-21T01:13:13.747Z"),
                        "lastHeartbeatRecv" : ISODate("2019-02-21T01:13:12.451Z"),
                        "pingMs" : 0,
                        "configVersion" : 7
                },
                {
                        "_id" : 5,
                        "name" : "192.168.1.134:20001",
                        "health" : 1,
                        "state" : 2,
                        "stateStr" : "SECONDARY",
                        "uptime" : 22,
                        "optime" : Timestamp(1550711569, 1),
                        "optimeDate" : ISODate("2019-02-21T01:12:49Z"),
                        "lastHeartbeat" : ISODate("2019-02-21T01:13:13.791Z"),
                        "lastHeartbeatRecv" : ISODate("2019-02-21T01:13:13.851Z"),
                        "pingMs" : 0,
                        "syncingTo" : "192.168.1.135:20002",
                        "configVersion" : 7
                }
        ],
        "ok" : 1
}
阅读(12416) | 评论(0) | 转发(0) |
0

上一篇:oracle审计例子

下一篇:ORA-00338

给主人留下些什么吧!~~