-4006-505-646

MongoDB数据库分析及数据恢复案例分享

本文章将为大家介绍MongoDB数据库的特征、数据库优缺点、数据恢复方法等。

MongoDB数据库介绍:

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

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

数据模式和能力分析:

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

MongoDB数据库介绍,数据库数据恢复案例;北亚数据恢复中心1.png

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

安全性分析:

MongoDB的安全性主要包括:基于角色的访问控制、身份验证、授权和审核等。当然,如果需要加密,它也可以实施安全传输层(TLS)和SSL协议。

小结:

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

数据恢复案例:

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

MongoDB数据库介绍,数据库数据恢复案例;北亚数据恢复中心2.png

【MongoDB数据库故障情况初检】

北亚数据恢复工程师通过客户的描述进行了初步了解,并对客户数据库环境及底层数据进行了检查,发现客户的MongoDB数据库在迁移过程中由于某些原因丢失了_mdb_catalog.wt文件,所以才导致了启动数据库报错。


【数据库数据恢复】

想要恢复MongoDB数据进行恢复,只要在底层数据中找到丢失的_mdb_catalog.wt文件即可,可是经过数据恢复工程师多次扫描底层数据后发现该文件已经被覆盖,

于是数据恢复工程师调整数据恢复策略,由于客户的数据库是基于WiredTiger存储引擎的数据库系统,在Windows环境下编译出可执行的wt工具。

MongoDB数据库介绍,数据库数据恢复案例;北亚数据恢复中心3.png

借助编译后的wt工具对数据库集合文件内所有数据清洗回写,读取数据结果写入到文件中。创建一个全新的MongoDB数据库,创建相应数据量的集合,将文件逐一写入集合中,查询数据集并重建索引信息。

通过查询集合中的记录,确定记录类型,重建集合索引,集合恢复完成,可以正常查看其中数据:

MongoDB数据库介绍,数据库数据恢复案例;北亚数据恢复中心4.png

【数据验证】

协助客户对全部集合进行索引重建之后,客户对数据库整体进行查询验证,数据无误,此次数据恢复圆满成功。


4006-505-646