阿里云数据库MongoDB恢复到本地

news2025/1/11 4:06:56

共两种方式,建议使用第二种的逻辑恢复,比较方便快捷 


一、下载物理备份文件

下载的格式是xb的,主要跟实例创建时间有关,2019年03月26日之前创建的实例,物理备份文件格式为tar,后面全部都是xb的格式了,xb格式就需要使用 Percona XtraBackup 解压然后在还原.

参考阿里文档: 如何将MongoDB物理备份文件恢复至本地自建数据库_云数据库 MongoDB-阿里云帮助中心

二、下载Percona XtraBackup

目前最新版本是8.0,下载二进制的安装包  Software Downloads - Percona

这个工具只支持linux,所以要上传到linux环境下去操作。

 我们在linux 创建一下目录  /mnt/xtrabackup 并将下载的文件上传上去。

gunzip percona-xtrabackup-8.0.34-29-Linux-x86_64.glibc2.17-minimal.tar.gz 解压为.tar

 tar -xvf percona-xtrabackup-8.0.34-29-Linux-x86_64.glibc2.17-minimal.tar  在次解压

三、安装 Percona XtraBackup

 mv percona-xtrabackup-8.0.34-29-Linux-x86_64.glibc2.17-minimal /usr/local/xtrabackup  移动位置

 ln -sf /usr/local/xtrabackup/bin/* /usr/bin/   创建软连接

 xtrabackup --version   查看版本

 which xtrabackup  查看位置 

 

 四、解压xb备份文件

 我们将 xb文件放到 /mnt/xbdata目录下,因为解压会把mongodb中的集合都解压成文件了

 

 cat hins100253163_data_20231008010306_qp.xb | xbstream -x -v  解包,比较慢多等会

 

到这里发现不能执行 innobackupex  命令,应该是 Percona XtraBackup 版本问题,这里下载2.4的版本

 重新下载 然后重新在解压加入软连接,然后在执行解压操作。 

 innobackupex --decompress --remove-original /mnt/xbdata   解压物理备份文件

结果报错,需要安装  qpress 

wget -d --user-agent="Mozilla/5.0 (Windows NT x.y; rv:10.0) Gecko/20100101 Firefox/10.0" https://docs-tencentdb-1256569818.cos.ap-guangzhou.myqcloud.com/qpress-11-linux-x64.tar

tar xvf qpress-11-linux-x64.tar

cp qpress /usr/bin

 这下解压完成了 

五、还原本地MongoDb数据 

zip -r xbdata.zip xbdata/  将解压的数据压缩为zip文件然后下载到本地

创建一个mongod.conf 文件 ,文件内容如下,将数据和这个配置文件都放在了e:\目录下

systemLog:
    destination: file
    path: e:/mongod.conf
    logAppend: true
security:
    authorization: enabled
storage:
    dbPath: e:/xbdata
    directoryPerDB: true
net:
    port: 27017
    unixDomainSocket:
        enabled: false
processManagement:
    fork: true

cd "D:\Program Files\MongoDB\Server\4.4\bin>"  进入安装目录 

mongod -f e:\mongod.conf  指定配置文件来启动  各种报错,没法启动了,恢复失败。


物理备份文件比较繁琐,下面使用逻辑备份文件,备份文件小还方便 


一、下载逻辑备份文件 

二、恢复备份文件 

 cd "D:\Program Files\MongoDB\Server\4.4\bin>"   进入安装目录因为目录有空格需要双引号

mongorestore -h 127.0.0.1 --port 27017 --drop --gzip --archive=d:\data.ar -vvvv --stopOnError  执行恢复命令(参照阿里的文档 将逻辑备份文件恢复至自建MongoDB数据库中_云数据库 MongoDB-阿里云帮助中心)

 

过程可能慢一些,最后完成的结果,看下面的恢复结果

我阿里是4.2的版本,线下安装的是4.4的版本,直接逻辑恢复成功。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1071741.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

DownloadingImages 下载缓存图片,显示图片文字列表

1. 用到的技术点: 1) Codable : 可编/解码 JSON 数据 2) background threads : 后台线程 3) weak self : 弱引用 4) Combine : 取消器/组合操作 5) Publishers and Subscribers : 发布者与订阅者 6) FileManager : 文件管理器 7) NSCache : 缓存 2. 网址: 2.1 测试接口网址: …

docker入门加实战—docker安装并配置阿里云加速

docker入门加实战—docker安装并配置阿里云加速 为什么要学习docker 在开发和部署项目的过程中,经常会遇到如下问题: 软件安装包名字复杂,不知道去哪里找安装软件和部署项目步骤复杂,容易出错 这就是我们今天要学习Docker技术…

7个在Github上的flutter开源程序

阅读大量代码是提高开发技能的最佳方法之一。该开源项目是了解最佳实践、编码风格和许多其他主题的最佳场所。 软件开发最受欢迎的领域之一是跨平台移动应用程序开发。Flutter 是您可以使用的最流行的跨平台移动应用程序开发工具之一。今天,我们将了解 7 个开源 Flu…

sqlalchemy 连接池

报错 sqlalchemy.exc.TimeoutError: QueuePool limit of size 100 overflow 10 reached, connection timed out, timeout 30 (Background on this error at: http://sqlalche.me/e/3o7r) 查看数据库未活动超时时间 show variables like "interactive_timeout";一般…

R可视乎|灯芯柱状图代码解读

简介 这篇推文代码来源于:TidyTuesday,主要想学习如何绘制灯芯柱状图(名字小编瞎取的),最终结果如下: 注释:与普通柱状图相比,灯芯柱状图不仅可以展示随时间变化的总体趋势&#xf…

AQS内部的体系架构

AQS本质上是一个双向队列,加一个状态位state。内部靠Node节点形成队列。 AQS由state和CLH变体的虚拟双端队列组成。 AQS的内部类Node类 属性说明: 内部结构:

继续改进 另外一种方法 还是可以用CourseExend类

优势:可以映射许多类上 很强大 用在名称不统一上 原理 1.先把查询结果包装 取新别名(( 就是结果集的映射() 2.把中结果集映射相应的pojo类上 第一步基于类创建 第二步 注意字属性的写法 teacher 是属性 属性的属性 …

手机待办事项app哪个好?

手机是日常很多人随身携带的设备,手机除了拥有通讯功能外,还能帮助大家高效管理日常工作,借助手机上的待办事项提醒APP可以快速地帮助大家规划日常事务,提高工作的效率。 过去,我也曾经在寻找一款能够将工作任务清晰罗…

33 WEB漏洞-逻辑越权之水平垂直越权全解

目录 前言水平,垂直越权,未授权访问Pikachu-本地水平垂直越权演示(漏洞成因)墨者水平-身份认证失效漏洞实战(漏洞成因)原理越权检测-Burpsuite插件Authz安装测试(插件使用)修复防御方案 前言 越权漏洞文章分享:https://www.cnblogs.com/zhen…

LockSupport是做什么的?深入理解Java的三种线程等待通知机制

文章目录 一、LockSupport概述1、LockSupport是什么2、三种等待唤醒机制3、其他线程等待唤醒方式(了解) 二、代码实例分析1、使用wait()notify()(1)代码实例(2)分析总结 2、使用await()signal()&#xff08…

乌班图20.04简易部署k8s+kuboard第三方面板

1. 问题: 使用官方只能说步骤挺全。 😄出错?出错不管,无论是系统问题,版本兼容问题,网络插件问题,还是防火墙问题,我只能说特异性问题分析检索起来很难很难。 新人很难搞懂&#x…

基于指数趋近律的机器人滑模轨迹跟踪控制算法及MATLAB仿真

机械手是工业制造领域中应用最广泛的自动化机械设备,广泛应用于工业制造、医疗、军工、半导体制造、太空探索等领域。它们虽然形式不同,但都有一个共同的特点,即能够接受指令,并能准确定位到三维(或二维)空间的某一点进行工作。由…

RabbitMQ之topic(主题)Exchange解读

目录 基本介绍 使用场景 演示架构 工程概述 RabbitConfig配置类:创建队列及交换机并进行绑定 MessageService业务类:发送消息及接收消息 主启动类RabbitMq01Application:实现ApplicationRunner接口 基本介绍 在rabbitmq中,…

【目标检测】大图包括标签切分,并转换成txt格式

前言 遥感图像比较大,通常需要切分成小块再进行训练,之前写过一篇关于大图裁切和拼接的文章【目标检测】图像裁剪/标签可视化/图像拼接处理脚本,不过当时的工作流是先将大图切分成小图,再在小图上进行标注,于是就不考…

[NewStarCTF 2023 公开赛道] week1 Crypto

brainfuck 题目描述&#xff1a; [>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<-]>>>>>>>.>----.<-----.>-----.>-----.<<<-.>>..…

深入了解归并排序:原理、性能分析与 Java 实现

归并排序&#xff08;Merge Sort&#xff09;是一种高效且稳定的排序算法&#xff0c;其优雅的分治策略使它成为排序领域的一颗明珠。它的核心思想是将一个未排序的数组分割成两个子数组&#xff0c;然后递归地对子数组进行排序&#xff0c;最后将这些排好序的子数组合并起来。…

在JavaScript中,什么是IIFE(Immediately Invoked Function Expression)?它的作用是什么?

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…

现代化战机之路:美国空军U-2侦察机基于Jenkins和k8s的CI/CD架构演进

▲ 点击上方"DevOps和k8s全栈技术"关注公众 华为北京研究所Q27大楼 随着技术的不断进步&#xff0c;军事领域也在积极采纳现代化工具来提高战备水平和效率。美国空军的U-2侦察机项目是一个鲜明的例子&#xff0c;它成功地借助Jenkins和Kubernetes&#xff08;k8s&…

Oracle修改数据之后提交事务如何回滚?

在 MySQL 和 Oracle 数据库中&#xff0c;事务提交后都无法回滚。 在 MySQL 中&#xff0c;恢复机制是通过回滚日志&#xff08;undo log&#xff09;实现的&#xff0c;所有事务进行的修改都会先记录到这个回滚日志中&#xff0c;然后在对数据库中的对应行进行写入。当事务已经…

IDE环境要注意统一编码,否则出现中文乱码找不到头绪

最近遇到在IDEA开发项目时&#xff0c;保存中文为乱码的现象&#xff0c;如图&#xff1a; 看了项目配置文件的编码都是UTF-8&#xff0c;在别的开发机上运行都正常&#xff0c;就是这台机器上有问题。 同事一时也找不到方法&#xff0c;因为没遇到同样的事情。 一直怀疑是编…