• 作者:老汪软件技巧
  • 发表时间:2024-10-02 11:02
  • 浏览量:

在上一篇文章【MongoDB 安全入门:用户认证与权限控制实操指南】中,详细介绍如何配置 MongoDB 的安全机制,包括创建用户、修改密码、用户授权及忘记密码和重置密码如何处理。然而,无论多么强大的数据库系统,都可能面临数据丢失的风险。因此,定期备份数据并掌握恢复流程是每个 DBA 必备的技能之一。本文将详细介绍 MongoDB 数据库的备份与恢复方法,并提供实践练习,帮助您更好地理解和掌握这一运维技能。

1.数据备份的重要性

在讨论具体备份方法之前,有必要先了解为什么备份如此重要:

2. 备份方法

MongoDB 提供了多种备份方式,这里我们主要介绍使用 mongodump 和 mongofiles 进行备份的方法。

3. 数据恢复

使用 mongorestore 进行逻辑恢复mongorestore 是用来从之前创建的逻辑备份中恢复数据的工具。

4.实践练习

备份工具集下载和安装

要用到mongodump、mongorestore等工具时候发现原来下载的数据库文件缺失很多工具,需要单独下载

下载工具集:

下载完成后解压到mongodb/bin目录下即可

MongoDB数据备份

在Mongodb中我们使用mongodump命令来备份MongoDB数据。该命令可以导出所有数据到指定目录中。

mongodump命令可以通过参数指定导出的数据量级转存的服务器。

语法

mongodump命令脚本语法如下:

mongodump.exe -h dbhost -d dbname -o dbdirectory

全部备份:

mongodump.exe

实例

运维阶段设备文件有哪些__运维系统维护

在本地使用 27017 启动你的mongod服务。打开命令提示符窗口,进入MongoDB安装目录的bin目录输入命令mongodump:

#数据库备份:找到mongodb数据库bin目录,例如:
在F:\database\mongodb-win32-x86_64-windows-6.0.3\bin目录下
mongodump.exe -h localhost:27017 -d db_student   -o  d:\

mongodump 命令可选参数列表如下所示:

语法描述实例

mongodump --host HOST_NAME --port PORT_NUMBER

该命令将备份所有MongoDB数据

mongodump --host localhost --port 27017

mongodump --dbpath DB_PATH --out BACKUP_DIRECTORY

mongodump --dbpath /data/db/ --out /data/backup/

mongodump --collection COLLECTION --db DB_NAME

该命令将备份指定数据库的集合。

mongodump --collection mycol --db test

MongoDB数据恢复

mongodb使用 mongorestore 命令来恢复备份的数据。

语法

mongorestore命令脚本语法如下

>mongorestore -h localhost:27017 -d student --dir d:/student
mongorestore -h <:port> -d dbname  --gzip 

例如:

mongorestore.exe -h localhost -d db_student --gzip C:\Users\zhujw\Documents\db_student

也可以使用mongoimport和mongoexport完成数据导入和导出

//先在数据库中创建dept集合
mongoimport  -d student -c dept --jsonArray d:\dept.json 

通过本文的介绍,您应该已经了解了 MongoDB 数据库备份与恢复的基本概念,并掌握了如何使用 mongodump、mongorestore 和 mongofiles 工具来进行备份和恢复操作。定期备份数据库,并熟悉恢复流程,对于保证数据的安全性至关重要。希望本文能帮助您在实际工作中更加得心应手。