利用docker-compose搭建单机mongodb复制集下

2020-03-07linuxmongodb

初始化mongodb复制集

这里把mong1作为主节点

登陆mongodb服务器

mongo

初始化mongodb数据库

rs.initiate({
    _id: "mongoset",
    members: [
        {
            _id: 0,
            host: "mongo1"
        },
        {
            _id: 1,
            host: "mongo2"
        },
        {
            _id: 2,
            host: "mongo3"
        },
        {
            _id: 3,
            host: "mongo4"
        },
        {
            _id: 4,
            host: "mongo5"
        },
        {
            _id: 5,
            host: "mongo6"
        },
        {
            _id: 6,
            host: "mongo7"
        }
    ]
})

登陆主节点,终端会会变成

mongoset:PRIMARY>

登陆从节点,终端会变成

mongoset:SECONDARY>

默认从节点,不允许读数据

要想在从节点,读数据,需要在从节点终端执行

mongoset:SECONDARY> rs.slaveOk()

查看复制集配置信息

mongoset:PRIMARY>rs.conf()

查看其中一个节点配置信息

mongoset:PRIMARY>rs.conf().members[2]

查看节点配置信息

查看复制集状态

rs.status()

查看其中一个节点状态信息

查看状态信息

如果其中一个节点挂掉了,那么health就为0,正常为1

mongoset:PRIMARY>rs.status().members[5].health
Last Updated 8/21/2026, 3:57:15 AM