数据库数据恢复——MongoDB数据库数据恢复案例

本文涉及的产品
云原生多模数据库 Lindorm,多引擎 多规格 0-4节点
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 MongoDB,通用型 2核4GB
简介: MongoDB数据库是文档数据存储库,将文档存储在集合之中,不是像MySQL一样的关系型数据库。MongoDB数据库是开源数据库,同时提供具有附加功能的商业版本。MongoDB数据库中的数据是以键值对(key-value pairs)的形式显示的,因此在模式设计上数据库受到的约束少,非常适合具有快速增长或其他变化需求的数据。

MongoDB数据库介绍:
MongoDB数据库是文档数据存储库,将文档存储在集合之中,不是像MySQL一样的关系型数据库。
MongoDB数据库是开源数据库,同时提供具有附加功能的商业版本。
MongoDB数据库中的数据是以键值对(key-value pairs)的形式显示的,因此在模式设计上数据库受到的约束少,非常适合具有快速增长或其他变化需求的数据。
MongoDB提供了预定义的结构,用户可以按需采用其结构:
01.jpg

每个MongoDB数据库都包含以“顺次存放”的方式填充的文档集合,这些文档本身包含了各种字段和信息类型。
MongoDB数据库的安全性特征包括:基于角色的访问控制、身份验证、授权和审核等,可以实施安全传输层(TLS)和SSL协议的加密。
作为文档数据库,MongoDB数据库不限制用户存储数据的体量和类型,适合大数据的应用环境。得益于MongoDB的水平可扩展能力以及与云服务的敏捷性结合能力,MongoDB不但能够减少开发者的工作量,简化业务与项目的扩展流程,还能够提供高可用性和数据的快速恢复。
MongoDB数据库在数据的可靠性、一致性、安全性等方面不如MySQL。

MongoDB数据库数据恢复案例:
MongoDB数据库故障:

出于业务变化的需求,某公司一台服务器上的MongoDB数据库需要迁移数据,迁移完成后启动MongoDB数据库提示:“Windows无法启动MongoDB服务(位于 本地计算机 上)。错误1067:进程意外终止。”
02.jpg

北亚企安数据恢复工程师通过和用户方的沟通以及对MongoDB数据库环境&底层数据的检查,发现该MongoDB数据库在迁移数据的过程中丢失了_mdb_catalog.wt文件,导致了数据库启动报错。

MongoDB数据库数据恢复过程:
1、将MongoDB数据库所涉及到的磁盘以只读方式做镜像备份,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始数据造成二次破坏。
2、基于镜像文件多次扫描底层数据发现丢失的_mdb_catalog.wt文件已经被覆盖。
3、调整MongoDB数据库数据恢复策略。由于该MongoDB数据库是基于WiredTiger存储引擎的,北亚企安数据恢复工程师在Windows环境下编译出可执行的wt工具。
03.jpg

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

7、协助用户方将全部集合进行索引重建之后,由用户方工程师对MongoDB数据库进行查询验证,经过多方验证确认恢复的数据完整有效。本次数据恢复工作完成。

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
4天前
|
SQL NoSQL Java
文档型数据库MongoDB
文档型数据库MongoDB
|
5天前
|
JSON NoSQL MongoDB
MongoDB详解(五)——MongoDB数据库简单使用
MongoDB详解(五)——MongoDB数据库简单使用
40 1
|
5天前
|
存储 NoSQL Linux
MongoDB详解(四)——MongoDB数据库安装
MongoDB详解(四)——MongoDB数据库安装
15 1
|
24天前
|
NoSQL 关系型数据库 MySQL
Windows、Linux、Mac安装数据库(mysql、MongoDB、Redis)#0
不同系统下进行MySQL安装、MongoDB安装、Redis安装【2月更文挑战第5天】
269 5
Windows、Linux、Mac安装数据库(mysql、MongoDB、Redis)#0
|
26天前
|
存储 SQL 数据库连接
连接并操作数据库:Python 数据库案例
数据库是一种用于存储和管理数据的工具,它以一种有组织的方式将数据存储在文件或内存中,以便于检索和处理。数据库系统通常使用 SQL(Structured Query Language)语言来进行数据的操作,包括数据的插入、查询、更新和删除等。
|
1月前
|
存储 Oracle 关系型数据库
【数据库数据恢复】Oracle数据库ASM磁盘组掉线的数据恢复案例
oracle数据库ASM磁盘组掉线,ASM实例不能挂载。数据库管理员尝试修复数据库,但是没有成功。
【数据库数据恢复】Oracle数据库ASM磁盘组掉线的数据恢复案例
|
JSON NoSQL Java
mongoDB导出数据库所有集合内容到json文件
网上搜了一圈,官方并有提供批量导出所有集合到json文件的方法。有不少脚本可以实现,但是我还是习惯用java,如下 package starcLL.
2119 0
|
2月前
|
JSON NoSQL 小程序
Mongodb数据库的导出和导入总结
Mongodb数据库的导出和导入总结
|
2月前
|
存储 NoSQL 大数据
mongodb数据库的优缺点
MongoDB 是一个流行的 NoSQL 数据库,主要用于大规模数据存储和处理。下面是 MongoDB 数据库的一些优点和缺点: ### 优点: 1. **灵活的模式设计**:MongoDB 是一个文档数据库,支持动态的模式设计,允许您存储不同结构和格式的数据。 2. **水平扩展**:MongoDB 支持水平扩展,可以轻松地在多个节点和服务器之间分布数据,以满足高并发和大规模数据处理的需求。 3. **丰富的查询功能**:MongoDB 提供了强大的查询语言和索引支持,允许您在大数据集上进行高效的数据检索和分析。 4. **高性能**:通过使用内存映射(mmap)和其他优化技术,M
111 0
|
2月前
|
存储 JSON NoSQL
【MongoDB】<文档型数据库>Windows&Liunx安装MongoDB(无错完整)
【1月更文挑战第26天】【MongoDB】<文档型数据库>Windows&Liunx安装MongoDB(无错完整)

相关产品

  • 云数据库 MongoDB 版