【数据库数据恢复】无法启动MongoDB服务的数据恢复案例

news2024/12/25 22:06:44

关于MongoDB数据库:

MongoDB数据库存储方式是将文档存储在集合之中,而不是像Oracle、MySQL一样的关系型数据库。

MongoDB数据库是开源数据库,也提供具有附加功能的商业版本。

MongoDB中的数据是以键值对(key-value pairs)的形式显示的,数据库受到的约束更少。对于具有快速增长或其他变化需求的数据来说,使用MongoDB数据库是非常有利的。如下图所示,MongoDB数据库提供了预定义结构,用户可以按需采用MongoDB数据库预定义的结构。

MongoDB数据库包含了以“顺次存放”的方式填充的文档集合,这些文档本身包含了各种字段和信息类型,能够存储的内容和数据量是极其丰富的。

MongoDB数据库的安全特性:基于角色的访问控制、身份验证、授权和审核、安全传输层(TLS)和SSL协议等。

作为文档数据库,MongoDB数据库并不限制存储数据的体量和类型,因此适合大数据的应用环境,适合基于云的服务。得益于水平可扩展能力、与云服务的敏捷性结合,MongoDB数据库不但能够减少开发者的工作量,简化业务与项目的扩展流程,还能够提供高可用性和数据的快速恢复。不过,MongoDB在数据的可靠性、一致性、以及安全性等方面不如MySQL。

MongoDB数据库数据恢复案例:

MongoDB数据库故障&初检:


某公司一台MongoDB数据库由于业务需要进行数据迁移,迁移后出现错误提示:“Windows无法启动MongoDB服务(位于 本地计算机 上)错误1067:进程意外终止。”

 

北亚数据恢复工程师检查了故障MongoDB数据库环境及底层数据,发现故障MongoDB数据库在迁移过程中丢失了_mdb_catalog.wt文件,所以启动数据库报错。

MongoDB数据库数据恢复过程:
1、恢复MongoDB数据库丢失的数据需要在底层数据中找到丢失的_mdb_catalog.wt文件,对底层数据进行多次扫描后发现该文件已经被覆盖。
2、数据恢复工程师调整数据恢复方法,由于故障MongoDB数据库是基于WiredTiger存储引擎的,数据恢复工程师在Windows环境下编译出可执行的wt工具。

 

3、借助编译后的wt工具对故障MongoDB数据库集合文件内所有数据清洗回写,读取数据结果并写入到文件中。
4、创建一个全新的MongoDB数据库,创建相应数据量的集合,将文件逐一写入集合中,查询数据集并重建索引信息。
5、通过查询集合中的记录,确定记录类型,重建集合索引,集合恢复完成,可以正常查看其中数据。

 

 

6、协助用户对全部集合进行索引重建之后,用户对数据库整体进行查询验证,发现数据无误,此次数据恢复完成。

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

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

相关文章

[附源码]Python计算机毕业设计Django校友社交系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

“云办公”如何用任务协同工具搞定项目和团队管理?

导语:远程参加会议、团队协同作业、项目负责人进行任务分配、团队成员多人协同编辑文件及同时推进项目、人力部门在线进行审批报销……,随着“云办公”的加速普及,人们只需一台电脑、一部手机、一根网线,就能随时进入办公状态&…

云服务器及域名到期后,公安联网注销指南

云服务器及域名到期后,公安联网注销指南 公安联网备案及注销的操作流程都写在了官方文档中,可以进入全国互联网安全管理服务平台,在下载中心找到并下载 《互联网站安全服务平台操作指南》,按照操作指南进行备案及撤销。 以下图…

JS实现关闭图片窗口

JS实现关闭图片窗口 有趣的小案例池子: JS实现定时器 JS实现关闭图片窗口 JS实现输入检验 获取焦点后隐藏提示内容的输入框 JS实现获取鼠标在画布中的位置 聊天信息框显示消息 JS点击切换背景图 自动切换背景的登录页面 JS制作跟随鼠标移动的图片 JS实现记住用…

K8S Pod控制器详细讲解

文章目录一、Pod控制器介绍二、ReplicaSet(RS)三、Deployment(Deploy)1.镜像更新:2.版本回退3.金丝雀发布/灰度发布四、Horizontal Pod Autoscaler(HPA)五、DaemonSet(DS)六、Job七、CronJob(CJ)结尾一、Pod控制器介绍 Pod是kubernetes的最小管理单元,在…

ArcGIS矢量化并进行拓扑检查

土地利用数据每年都在发生变化,故每年都要根据去年的数据进行修改。请根据以下要求,修改A区域的数据并对B区域已做好的数据进行拓扑检查。 01 数据说明 1. 地类图斑A.shp:A区域需要编辑修改的图斑数据。 2. 影像.tif:编辑A区域…

Docker数据卷自定义Docker镜像

目录 宿主机与容器之间的文件拷贝 引言:利用MySQL镜像安装MySQL服务 从容器中拷贝文件到宿主机 从宿主机拷贝文件到容器 数据卷 数据卷容器 Dockerfile自定义镜像 自定义tomcat8(熟悉几乎所有的Dockerfile命令) 宿主机与容器之间的文…

集群配置步骤_java培训

配置步骤 复制3个ZooKeeper zookeeper-3.4.9.tar.gz解压后拷贝到/myzookeeper目录下并重新名为zk01,再复制zk01形成zk02、zk03,共计3份 新增目录 进入zk01/02/03分别新建文件夹,mydata、mylog 新建配置文件 分别进入zk01-zk03各自的conf文件…

perflab 课程设计

初始状态 rotate 版本I 因为本题步步都在寻址而寻址的目标每一步又不同,并且在一个地址的值一次就赋值完毕,不会对同一个地址进行二次寻址,所以我首先想的改进方向就是使得寻址更加快速,于是我使得寻址的地址更加连续。 int i,…

【面试题】 javaScript 进阶之路 --- 《加深理解回调函数》

给大家推荐一个实用面试题库 1、前端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 一. 函数 回调函数的基本概念我之前的文章虽然有些过,但是为了引入下文,在这里还是简单再提一嘴…

苹果电脑ntfs如何打开硬盘?mac能读取的硬盘格式

如今,使用Mac电脑的用户越来越多,但是不少用户却面临着一个问题,那就是Mac无法正常读写自己的NTFS格式的外置硬盘,硬盘上面保存着很多重要的文件数据,想要进行复制或者是编辑等,压根没有办法在Mac电脑上进行…

axios和SpringMVC数据交互(一维二维数组,JSON/form形式,@RequestBody/@RequestParam)

目录需求环境准备前端后端成功实现的案例以JSON形式发送double数组以JSON形式发送对象,对象中有数组以JSON形式发送对象,对象中有二维数组以x-www-form-urlencoded形式发送一维数组需求 前端或postman发送数组,后端controller做为入参接收 …

汽车专场 | 新能源汽车动力电池PACK CAE分析实例解读

一、PACK为什么需要CAE分析? PACK是新能源汽车最重要的组成部分,可称之为心脏,电池系统需要满足汽车运营条件下的苛刻力学环境的要求。按照传统研发方式,设计-样包-测试-优化-样包-测试,反复循环,这种传统…

学完高性能计算后的发展怎么样?

高性能计算行业是指从事高性能计算相关性质的生产、服务的单位或个体的组织结构体系的总称。深刻认知高性能计算行业定义,对预测并引导高性能计算行业前景,指导行业投资方向至关重要。 一、什么是高性能计算? 高性能计算指通常使用很多处理…

音视频学习(十四)——rtsp详解

概念 rtsp(Real Time Streaming Protocol,RFC2326),实时流传输协议,是TCP/IP协议体系中的一个应用层协议。 该协议主要规定了一对多应用程序如何有效地通过IP网络传送多媒体数据。RTSP体系结位于RTP和RTCP之上&#…

etsy账号被封的原因有哪些?

Etsy之所以让人又爱又恨,是因为它的流量大,但缺点是规则限制,尤其是对于中国卖家。根据各大社交媒体的留言和评论,大多数电商人最关心Etsy关店的问题。   为什么Etsy会被封号?首先,我们需要了解封号的原因…

高压放大器的输入和输出阻抗为啥是50欧的

选择高压放大器的时候,经常会看到有些高压放大器的输入和输出阻抗都是50欧,今天就来说说高压放大器和无处不在的50欧姆,来聊聊它们的关系。 电子测量仪器在使用的时候会出现电子信号幅度突然加倍或者减少一半的情况,原因是几乎所有…

用echarts实现柱状图

目录前言:什么是 Echarts 插件柱状图成品展示步骤:柱状图代码:前言: 大家都知道,一般情况下,想要使用前端设置一个 柱状图 需要使用 canvas 画布进行编写,不仅代码多,逻辑处理麻烦&…

搭建Nacos集群

nacos的默认端口是8848,但是他还占用了另外两个接口:9848、9849。因此,在单机配置集群时,不可使用三个连续的端口,否则会导致 gRPC端口冲突。 端口与主端口(8848)偏移量作用98481000客户端gRPC…

7.javase_数组1

一. 数组定义格式 格式1:数据类型[] 变量名; 范例:int[] arr; 格式2:数据类型 变量名[]; 范例: int arr[];二. 数组初始化方式 1.1静态初始化:【初始化时指定每个数组元素的初始值,由系统决定数组长度】格…