当前位置: 首页 > article >正文

《Linux运维总结:使用 MongoDB工具备份和恢复mongodb 7.0.14分片集群(方案一)》

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:《Linux运维篇:Linux系统运维指南》


一、备份说明

1、要使用mongodump备份分片集群,您必须 停止负载均衡器 停止写入,避免备份的数据出现状态不一致问题。
2、从MongoDB7.0.2开始(也可以从6.0.11和5.0.22开始使用),fsync和fsyncUnlock命令可以在mongos上运行,以锁定和解锁分片集群。


二、备份步骤

2.1、查找备份窗口(路由节点)

说明、要找到执行备份的好时机,请监控应用程序和数据库的使用情况,以找到不太可能发生数据块迁移、重分片和模式转换操作的时间。

负载均衡默认是开启的,为了避免chunk迁移影响线上业务,可以通过设置迁移执行窗口,例如只允许凌晨02:00~06:00期间进行迁移。

# 连接其中一个路由节点
use config
db.settings.updateOne(
   {
    _id : "balancer" },
   {
    $set : {
    activeWindow : {
    start : "02:00", stop : "06:00" } } },
   true
)
db.settings.find({
    _id: "balancer" })

如下图所示:
在这里插入图片描述

总结、此操作将负载均衡器配置为在服务器时间上午02:00到晚上06:00之间运行。 安排备份操作在此时间之外运行和完成。 确保当负载均衡器正在运行时,备份可以在窗口外完成,并且负载均衡器可以在分配给每个分片的窗口中有效地平衡分片之间的集合。


2、假设你希望恢复到默认的活动窗口设置(例如,不启用活动窗口限制),你可以再次使用updateOne命令:

use config
db.settings.updateOne(
   {
    _id : "balancer" },
   {
    $unset : {
    activeWindow : "" } },
   {
    upsert: true }
)
db.settings.find({
    _id: "balancer" })

2.2、停止负载均衡器(路由节点)

为防止数据块迁移干扰备份,请连接到其中一个路由节点并使用 sh.stopBalancer() 方法停止负载均衡器:

[direct: mongos] test> sh.isBalancerRunning().mode
[direct: mongos] test> sh.stopBalancer()
[direct: mongos] test> sh.isBalancerRunning().mode
off

如果返回值为off,则表示已经关闭,如下图所示:
在这里插入图片描述


2.3、锁定集群(分片节点)

说明:路由节点、配置节点不需要锁定,分片节点需要锁定。分片节点通过主节点进行锁定,锁定完成后,需要在路由节点确认锁定集群。

1、未锁定集群前,路由节点查看锁定情况

[direct: mongos] test> db.getSiblingDB("admin").aggregate( [
   {
     $currentOp: {
    } },
   {
   </

http://www.kler.cn/news/324548.html

相关文章:

  • elementUi / elementPlus自定义上传方法 Upload自定义文件上传
  • Hive命令及属性配置
  • 我设置了路由器自动切换ip,这会让我的账号登录地址经常改变吗
  • 初识C#(二)- 流程控制
  • Apache APISIX学习(2):安装Grafana、prometheus
  • LeeCode打卡第三十一天
  • 基于springboot+vue学生宿舍管理系统设计与实现
  • 【Verilog学习日常】—牛客网刷题—Verilog企业真题—VL68
  • [240929] 12 款最佳免费开源隐写工具 | Llama 3.2: 开源、可定制模型,革新边缘人工智能和视觉体验
  • Windows 10 on ARM, version 22H2 (updated Sep 2024) ARM64 AArch64 中文版、英文版下载
  • Flask 实现文件下载
  • Vue3 项目环境变量配置(Vite)
  • 2024年7月大众点评全国小吃快餐前百名城市分析
  • U盘打开提示要格式化:深度解析、恢复策略与预防之道
  • CSS列表
  • 每天学习一个技术栈 ——【Celery】篇(2)
  • FTP 服务器 linux安装
  • 面试速通宝典——5
  • 解锁免费数据恢复工具的潜力,找回珍贵数据记忆
  • android设计模式的建造者模式,请举例
  • RabbitMQ的各类工作模式介绍
  • SOCKS5代理和HTTP代理哪个快?深度解析两者的速度差异
  • 支持云边协同的「物联网平台+边缘计算底座」
  • tcpdump捕获指定端口的网络流量并实时输出
  • OpenCV_自定义线性滤波(filter2D)应用详解
  • 护眼灯行业分水岭渐显,书客革命性创新成为企业扩容市场的第一动力
  • qt6 使用QPSQL
  • 【k8s】:DevOps 模式详解
  • 物联网系统中模拟温度传感器测温方案
  • 设计模式之享元(Flyweight)模式