MongoDB数据库介绍:
MongoDB数据库是文档数据存储库,将文档存储在集合之中,不是像MySQL一样的关系型数据库。
MongoDB数据库是开源数据库,同时提供具有附加功能的商业版本。
MongoDB数据库中的数据是以键值对(key-value pairs)的形式显示的,因此在模式设计上数据库受到的约束少,非常适合具有快速增长或其他变化需求的数据。
MongoDB提供了预定义的结构,用户可以按需采用其结构:
每个MongoDB数据库都包含以“顺次存放”的方式填充的文档集合,这些文档本身包含了各种字段和信息类型。
MongoDB数据库的安全性特征包括:基于角色的访问控制、身份验证、授权和审核等,可以实施安全传输层(TLS)和SSL协议的加密。
作为文档数据库,MongoDB数据库不限制用户存储数据的体量和类型,适合大数据的应用环境。得益于MongoDB的水平可扩展能力以及与云服务的敏捷性结合能力,MongoDB不但能够减少开发者的工作量,简化业务与项目的扩展流程,还能够提供高可用性和数据的快速恢复。
MongoDB数据库在数据的可靠性、一致性、安全性等方面不如MySQL。
MongoDB数据库数据恢复案例:
MongoDB数据库故障:
出于业务变化的需求,某公司一台服务器上的MongoDB数据库需要迁移数据,迁移完成后启动MongoDB数据库提示:“Windows无法启动MongoDB服务(位于 本地计算机 上)。错误1067:进程意外终止。”
北亚企安数据恢复工程师通过和用户方的沟通以及对MongoDB数据库环境&底层数据的检查,发现该MongoDB数据库在迁移数据的过程中丢失了_mdb_catalog.wt文件,导致了数据库启动报错。
MongoDB数据库数据恢复过程:
1、将MongoDB数据库所涉及到的磁盘以只读方式做镜像备份,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始数据造成二次破坏。
2、基于镜像文件多次扫描底层数据发现丢失的_mdb_catalog.wt文件已经被覆盖。
3、调整MongoDB数据库数据恢复策略。由于该MongoDB数据库是基于WiredTiger存储引擎的,北亚企安数据恢复工程师在Windows环境下编译出可执行的wt工具。
4、借助编译出的wt工具对MongoDB数据库集合文件内所有数据清洗回写,读取数据结果并写入到文件中。
5、创建一个全新的MongoDB数据库,创建相应数据量的集合,将文件逐一写入集合中,查询数据集并重建索引信息。
6、通过查询集合中的记录来确定记录类型并重建集合索引,集合恢复完成后已经可以正常查看其中数据。
7、协助用户方将全部集合进行索引重建之后,由用户方工程师对MongoDB数据库进行查询验证,经过多方验证确认恢复的数据完整有效。本次数据恢复工作完成。