Windows 系统 MongoDB副本集的建立

Windows 系统 MongoDB副本集的建立

(由于设备限制,选择在一台widonws系统下的一台电脑中建立集群)

1.主节点的创建

文件名:myrs_27018

内含文件:conf——存储该节点配置文件(建立文本文件,然后改后缀名)

                  log——存储日志和pid文件(日志文件记录已经进行的操作,方便查错)

                      data——存储数据

配置文件:

systemLog:

 destination: file

 path: D:/App/MongoDB/Server/4.4/myrs_27018/log/mongod.log//创建的日志文件位置

 logAppend: true

storage:

 dbPath: "D:\\App\\MongoDB\\Server\\4.4\\myrs_27018\\data"//创建的存储数据的文件的位置

 journal:

  enabled: true

processManagement:

 pidFilePath: "D:\\App\\MongoDB\\Server\\4.4\\myrs_27018\\log\\mongod.pid"

net:

 bindIp: localhost//绑定的ip地址

 port: 27018//绑定的接口

replication:

 replSetName: myrs//绑定的为当前主机的27018端口,副本集名称为myrs

 2.副本从节点的创建

文件名:myrs_27019

内含文件:conf——存储该节点配置文件

                  log——存储日志和pid文件(日志文件记录已经进行的操作,方便查错)

                      data——存储数据

配置文件:

systemLog:

 destination: file

 path: D:/App/MongoDB/Server/4.4/myrs_27019/log/mongod.log

 logAppend: true

storage:

 dbPath: "D:\\App\\MongoDB\\Server\\4.4\\myrs_27019\\data"

 journal:

  enabled: true

processManagement:

 pidFilePath: "D:\\App\\MongoDB\\Server\\4.4\\myrs_27019\\log\\mongod.pid"

net:

 bindIp: localhost

 port: 27019

replication:

 replSetName: myrs//绑定的为当前主机的27019端口,副本集名称为myrs

3.仲裁节点的创建

文件名:myrs_27020

内含文件:conf——存储该节点配置文件

                        log——存储日志和pid文件(日志文件记录已经进行的操作,方便查错)

                     data——存储数据

配置文件:

systemLog:

 destination: file

 path: D:/App/MongoDB/Server/4.4/myrs_27020/log/mongod.log

 logAppend: true

storage:

 dbPath: "D:\\App\\MongoDB\\Server\\4.4\\myrs_27020\\data"

 journal:

  enabled: true

processManagement:

 pidFilePath: "D:\\App\\MongoDB\\Server\\4.4\\myrs_27020\\log\\mongod.pid"

net:

 bindIp:  localhost

 port: 27020

replication:

 replSetName: myrs//绑定的为当前主机的27019端口,副本集名称为myrs

4. 通过配置文件方式启动各mongodb服务

 mongod -f 配置文件位置

5.shell连接

mongo --host=主机ip  --port=接口

6.初始化主节点(在连接的是主节点的shell页面进行)

7.加入从节点和仲裁节点(在连接的是主节点的shell页面进行)

端口号为27019的为从节点

27020为仲裁节点(在连接的是主节点的shell页面进行)

8.查看副本集状态:

rs.status()

可得:

 "members" : [

                {

                        "_id" : 0,

                        "name" : "localhost:27018",

                        "health" : 1,

                        "state" : 1,

                        "stateStr" : "PRIMARY",

                        "uptime" : 1206,

                        "optime" : {

                                "ts" : Timestamp(1616908414, 1),

                                "t" : NumberLong(1)

                        },

                        "optimeDate" : ISODate("2021-03-28T05:13:34Z"),

                        "syncSourceHost" : "",

                        "syncSourceId" : -1,

                        "infoMessage" : "",

                        "electionTime" : Timestamp(1616907304, 2),

                        "electionDate" : ISODate("2021-03-28T04:55:04Z"),

                        "configVersion" : 3,

                        "configTerm" : 1,

                        "self" : true,

                        "lastHeartbeatMessage" : ""

                },

                {

                        "_id" : 1,

                        "name" : "localhost:27019",

                        "health" : 1,

                        "state" : 2,

                        "stateStr" : "SECONDARY",

                        "uptime" : 1078,

                        "optime" : {

                                "ts" : Timestamp(1616908414, 1),

                                "t" : NumberLong(1)

                        },

                        "optimeDurable" : {

                                "ts" : Timestamp(1616908414, 1),

                                "t" : NumberLong(1)

                        },

                        "optimeDate" : ISODate("2021-03-28T05:13:34Z"),

                        "optimeDurableDate" : ISODate("2021-03-28T05:13:34Z"),

                        "lastHeartbeat" : ISODate("2021-03-28T05:13:42.680Z"),

                        "lastHeartbeatRecv" : ISODate("2021-03-28T05:13:42.818Z"),

                        "pingMs" : NumberLong(0),

                        "lastHeartbeatMessage" : "",

                        "syncSourceHost" : "localhost:27018",

                        "syncSourceId" : 0,

                        "infoMessage" : "",

                        "configVersion" : 3,

                        "configTerm" : 1

                },

                {

                        "_id" : 2,

                        "name" : "localhost:27020",

                        "health" : 1,

                        "state" : 7,

                        "stateStr" : "ARBITER",

                        "uptime" : 1017,

                        "lastHeartbeat" : ISODate("2021-03-28T05:13:42.679Z"),

                        "lastHeartbeatRecv" : ISODate("2021-03-28T05:13:42.783Z"),

                        "pingMs" : NumberLong(0),

                        "lastHeartbeatMessage" : "",

                        "syncSourceHost" : "",

                        "syncSourceId" : -1,

                        "infoMessage" : "",

                        "configVersion" : 3,

                        "configTerm" : 1

                }

建立完成。

9.使从节点承认自己为从节点(在连接的是副本从节点的shell页面进行)

rs.secondaryOk()

如果该代码无法执行,就换成rs.slaveOk()

10.建立存储集合(在主节点中建立)

建立数据库名称为:weibo

在该数据库下建立:搜索结果集合:result,用户信息集合:information,微博评论集合:comment,微博转发信息集合:transmint,URL队列库:URL

       查看集合:

建立完成

11.故障检测

当主节点正常运行时,向副本节点插入数据:

Ok为0,不可写入数据

当主节点断开连接后,副本节点自动变为主节点。

再次写入数据

写入成功。

再次连接原来的主节点,原来的主节点变成了副本节点,在该节点查看刚刚写入的数据:

写入成功。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值