在今天的数字化时代,数据是企业最宝贵的资产之一。为了确保数据的安全性和可靠性,数据库备份策略变得至关重要。备份策略是指根据一系列的规则和方法,定期备份数据库以应对意外情况的计划。

不同的数据库平台提供了多种生成备份和恢复数据库的方法。许多供应商提供最先进的软件和硬件解决方案,可以帮助备份数据库,并且可以在定义的 RTO 和 RPO 内恢复数据库。

在本文中,我将解释如何使用mysqldump通过CMD备份MySQL数据库以及第三方软件傲梅企业备份标准版如何备份MySQL数据库文件

使用 mysqldump 实用程序生成备份

Mysqldump是一个命令行实用程序,用于生成 MySQL 数据库的逻辑备份。它生成可用于重新创建数据库对象和数据的 SQL 语句。该命令还可用于生成 XML、分隔文本或 CSV 格式的输出。

这个命令/脚本备份MySQL数据库的方法很容易使用,但唯一的问题是在恢复数据库时出现。正如我提到的,当我们生成 MySQL 数据库的备份时,它会创建一个备份文件,其中包含重建或恢复数据库所必需的 SQL 命令。现在,当我们恢复数据库时,该命令将执行所有 SQL 语句以创建表并插入数据。如果您有一个大型数据库,那么恢复过程需要很长时间才能完成。

注意:默认情况下,mysqldump 命令不会转储information_schema数据库、performance_schema和 MySQL Cluster ndbinfo数据库。

如果要包括information_schema表,必须在mysqldump命令中明确指定数据库的名称,同时包括 --skip -lock-tables选项。

有很多选项和功能可以与mysqldump一起使用。您可以在此处查看完整的选项列表。我将介绍一些基本功能。以下是mysqldump实用程序通过CMD备份MySQL数据库的语法。

mysqldump -u [user name] –p [password] [options] [database_name] [tablename] > [dumpfilename.sql]

参数如下:

  1. -u [user_name]:连接MySQL服务器的用户名。要使用mysqldump生成备份,' Select ' 转储表,' Show View ' 用于视图,' Trigger ' 用于触发器。如果您没有使用 --single -transaction选项,则必须向用户授予 ' Lock Tables ' 权限
  2. -p [密码]: MySQL用户的有效密码
  3. [option]:自定义备份的配置选项
  4. [数据库名称]:要备份的数据库名称
  5. [表名]:这是一个可选参数。如果要备份特定表,则可以在命令中指定名称
  6. “<”或“>”:这个字符表示我们是生成数据库的备份还是恢复数据库。您可以使用“ >”生成备份,使用“ < ”恢复备份
  7. [dumpfilename.sql]:备份文件的路径和名称。正如我提到的,我们可以生成 XML、分隔文本或 SQL 文件的备份,因此我们可以相应地提

生成单个数据库的备份

例如,要生成单个数据库的备份,运行以下命令。该命令将生成“ bruce ”数据库的备份,其结构和数据位于bruce_20230525.sql文件中。

mysqldump -u root -p bruce > C:\MySQLBackup\bruce_20230525.sql

运行此命令时,它会提示输入密码。提供适当的密码。请参见下图:

备份生成成功后,让我们打开备份文件查看备份文件的内容。打开备份位置并双击“bruce_20230525.sql ”文件。

生成多个数据库或所有数据库的备份

命令行备份MySQL数据库生成多个数据库的备份。您必须在mysqldump命令中添加—databases选项。以下命令将生成“ bruce ”和“ employees ”数据库的结构和数据备份。

mysqldump -u root -p --databases bruce employees > C:\MySQLBackup\bruce_employees_20230525.sql

请参见下图:

同样,如果要生成所有数据库的备份,则必须在mysqldump命令中使用–all-databases选项。以下命令将生成 MySQL 服务器中所有数据库的备份。

mysqldump -u root -p --all-databases > C:\MySQLBackup\all_databases_20230525.sql

请参见下图:

生成数据库结构的备份

如果要生成数据库结构的备份,则必须在mysqldump命令中使用–no-data选项。以下命令生成bruce数据库的数据库结构的备份。

mysqldump -u root -p --no-data bruce > C:\MySQLBackup\bruce_objects_definition_20230525.sql

生成特定表的备份

如果要生成特定表的备份,则必须在数据库名称后指定表的名称。以下命令生成bruce数据库的actor表的备份。

mysqldump -u root -p bruce actor payment > C:\MySQLBackup\actor_payment_table_20230525.sql

如果要生成多个表的备份,则必须用空格分隔表名,以下命令生成bruce数据库的actor和payment表 的备份。

生成数据库数据的备份

如果要生成没有数据库结构的数据备份,则必须在mysqldump命令中使用–no-create-info选项。以下命令生成bruce数据库的数据备份。

mysqldump -u root -p bruce --no-create-info > C:\MySQLBackup\bruce_data_only_20230525.sql

恢复 MySQL 数据库

使用mysqldump 恢复 MySQL 数据库很简单。要恢复数据库,您必须创建一个空数据库。首先,让我们通过执行以下命令删除并重新创建 bruce 数据库。

mysql> drop database bruce;,
Query OK, 24 rows affected (0.35 sec)
mysql> create database bruce;
Query OK, 1 row affected (0.01 sec)
mysql>

恢复数据库时,不能使用mysqldump,必须使用mysql;否则,mysqldump将不会生成模式和数据。执行以下命令恢复bruce数据库:

mysql -u root -p bruce < C:\MySQLBackup\bruce_20230525.sql

命令成功执行后,执行以下命令以验证是否已在bruce数据库上创建所有对象。

恢复数据库中的特定表

例如,有人从数据库中删除了一个表。我们可以从可用备份中恢复删除的表,而不是恢复整个数据库。为了演示,通过在 MySQL 命令行工具上执行以下命令,从 bruce 数据库中 删除actor表。

mysql> use bruce;
Database changed
mysql> drop table actor;

要恢复 actor 表,请执行以下逐步过程。

1. 创建一个名为bruce_dummy的虚拟数据库,并在其上恢复bruce数据库的备份。以下是命令:

mysql> create database bruce_dummy;
mysql> use bruce_dummy;
mysql> source C:\MySQLBackup\bruce_20230525.sql

2. 将actor表备份到bruce_dummy_actor_20230525.sql文件。以下是命令:

C:\Users\Bruce> mysqldump -u root -p bruce_dummy actor > C:\MySQLBackup\bruce_dummy_actor_20230525.sql

从“ bruce_dummy_actor_20230525.sql ”文件 恢复演员表。以下是 MySQL 命令行工具上的命令。

mysql> source C:\MySQLBackup\bruce_dummy_actor_20230525.sql

执行以下命令以验证表已成功恢复。

mysql> use bruce;
Database changed
mysql> show tables;

除此之外,我们也可以尝试使用简单的方法实现对数据库文件的备份。这里推荐傲梅企业备份标准版

使用文件备份功能对MySQL数据库文件进行自动备份

本文将介绍如何在Widnows系统中使用命令来创建自动MySQL数据库文件备份。我们推荐使用傲梅企业备份标准版,它是一款功能强大的MySQL备份软件,支持在Windows Server 2003、2008、2012、2016、2019(包括R2)、2022、SBS 2003、2008、2011,以及Windows 11、10、8.1、8、7、Vista、XP等操作系统上运行。

傲梅企业备份标准版可以轻松设置MySQL数据库文件的备份计划,包括每天、每周、每月等选项。如果您担心频繁备份占用过多磁盘空间,您还可以执行增量或差异备份,只复制更改的文件,或选择更高的压缩级别。

以下是创建自动备份的步骤:

1. 打开傲梅企业备份标准版,选择"备份"和"文件备份"。

文件备份

2. 点击"+添加文件夹"或"+添加文件"按钮选择MySQL数据库文件。您可以根据需要为任务命名。

添加文件或添加文件夹

3. 选择保存MySQL自动备份文件的"目的地"。

选择 MySQL 备份的目的地

4. 点击"计划"选项,根据需要选择每日、每周、每月、事件触发器或USB插件来运行MySQL数据库文件备份任务。在高级选项卡中,您还可以选择"增量备份"。

附表一般

安排进阶

5. 点击"开始备份 >>"按钮,即可在Widnows系统中创建自动的MySQL备份。

启动 MySQL 自动备份

总结

本文介绍了两种方法备份MySQL数据库文件:使用CMD备份MySQL数据库和傲梅企业备份标准版软件。通过CMD命令,我们可以创建自动备份计划,并选择增量备份和压缩级别。傲梅企业备份标准版提供了简单易用的界面,让我们轻松设置备份计划、选择备份目标和灵活的计划选项。这些方法确保了MySQL数据库文件的安全备份和可靠恢复。根据需求和偏好,选择适合的备份方式,保护数据库文件的完整性。