努力挣扎的生活 努力挣扎的生活
  • 前端文章

    • JavaScript
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 运维基础
  • 监控
  • 日志系统
  • gitlab安装
  • jenkins安装和管理
  • Jenkins工具集成
  • pipeline流水线
  • Docker
  • Kubernetes
  • Nexus
  • Rancher
  • Prometheus
  • ELK(EFK)
  • 虚拟化
  • Mysql
  • PostgreSQL
  • Redis
  • MongoDB
  • clickhouse
关于
  • 分类
  • 标签
  • 归档
  • 收藏
  • 更多
GitHub (opens new window)

yangfk

瑟瑟发抖的小运维
  • 前端文章

    • JavaScript
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 运维基础
  • 监控
  • 日志系统
  • gitlab安装
  • jenkins安装和管理
  • Jenkins工具集成
  • pipeline流水线
  • Docker
  • Kubernetes
  • Nexus
  • Rancher
  • Prometheus
  • ELK(EFK)
  • 虚拟化
  • Mysql
  • PostgreSQL
  • Redis
  • MongoDB
  • clickhouse
关于
  • 分类
  • 标签
  • 归档
  • 收藏
  • 更多
GitHub (opens new window)
  • Mysql

  • PostgreSQL

  • Redis

  • MongoDB

    • MongoDB安装
    • MongoDB副本集
      • 副本集
        • 创建和配置
        • 从无法读,配置slaveOK()
    • MongoDB分片
    • MongoDB备份
  • ClickHouse

  • SqlServer

  • openGuassDB

//
  • DBA
  • MongoDB
yangfk
2021-11-03

MongoDB副本集

//

# 副本集

注意:官方推荐的Mongodb副本集机器数量为至少3个节点

1.当只有两个

权限高的,宕了,什么都做不了,恢复宕掉的,切换主到备的后,瞬间又会切换回来权限高的

2.当有三个

权限高的宕了,先切换到正常的,然后切换到正常使用中,且 priority权限最高的那个

# 创建和配置

创建副本集:mongod --bind_ip 192.168.40.85 -f /opt/mongodb/conf/mongodb.conf --replSet yyy

参数:"--replSet" 指定副本集名称,若想加入该集群,后面都使用这个名称

连接:mongo 192.168.40.85:27014/admin

一切操作修改只能在 主 PRIMARY 上操作

初始化,备份数据,会删除所有的数据

mongo > rs.initiate()

#添加副本
添加方式1:mongo > rs.add({host:"192.168.40.85:27013",priority:3}) #指定权重为 3
添加方式2:mongo > rs.add("192.168.40.85:27017") #priority默认为1

#设置仲裁者
mongo > rs.add('192.168.40.85:27017',arbiterOnly:true)
1
2
3
4
5
6
  • 删除

mongo > rs.remove("192.168.40.85:27012")

  • 查看配置

mongo > rs.config()

  • 查看状态

mongo > rs.status()

  • 查看主从关系

mongo > rs.isMaster()

  • 重新配置权重,选主

mongo > config = rs.config()

  • 修改权重,members:是rs.config()当前节点数的下标,比如总共4个,想要修改第3个,下标就是2

mongo > config.members[2].priority=2

  • 生效配置

mongo > rs.reconfig(config)

  • 检查节点信息

mongo > rs.config()

  • 查看备份节点的复制信息

mongo > db.printSlaveReplicationInfo()

# 从无法读,配置slaveOK()

mongo命令行:rs.slaveOk()

配置文件,永久生效
find / -name .mongorc.js  #/root/.mongorc.js 权限600
rs.slaveOk(); #添加改行,默认文件为空

代码层:db.getMongo().setSlaveOk()

1
2
3
4
5
6
7
8
//
如果此文章对您有帮助,点击 -->> 请博主喝咖啡 (opens new window)
上次更新: 2023/11/06, 17:40:01
MongoDB安装
MongoDB分片

← MongoDB安装 MongoDB分片→

最近更新
01
Linux Polkit 权限提升漏洞(CVE-2021-4034)
03-28
02
postgreSQL维护
03-17
03
trivy系统漏洞扫描
02-25
更多文章>
Theme by Vdoing | Copyright © 2019-2025 yangfk | 湘ICP备2021014415号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×
//