网站搜索

如何在 Linux 中备份和恢复 MySQL/MariaDB 数据库


本文向您展示了如何使用 mysqldump 命令对 MySQL/MariaDB 数据库执行各种备份操作的实际示例,并且我们还将了解如何借助Linux 中的 mysqlmysqlimport 命令。

mysqldump是一个命令行客户端程序,它用于将本地或远程MySQL数据库或数据库集合转储到单个平面文件中以进行备份。

我们假设您已经在Linux系统上安装了MySQL并具有管理权限,并且我们相信您已经对MySQL有一定的了解。

如果您没有安装 MySQL 或没有接触过 MySQL,请阅读我们下面的文章。

  • 如何在基于 RHEL 的发行版上安装 MySQL
  • 如何在 Rocky Linux 和 AlmaLinux 上安装 MySQL
  • 如何在 Ubuntu Linux 中安装 MySQL
  • 如何在 Debian 上安装 MySQL
  • Linux 中用于数据库管理的 20 个 MySQL (Mysqladmin) 命令
  • Linux 的 12 个 MySQL/MariaDB 安全最佳实践

如何在Linux中备份MySQL数据库?

要备份 MySQL 数据库或数据库,该数据库必须存在于数据库服务器中,并且您必须有权访问它。命令的格式是。

mysqldump -u [username] –p[password] [database_name] > [dump_file.sql]

该命令的参数如下。

  • [用户名]:有效的 MySQL 用户名。
  • [密码]:用户的有效 MySQL 密码。
  • [database_name]:您要备份的有效数据库名称。
  • [dump_file.sql]:要生成的备份转储文件的名称。

如何备份单个MySQL数据库?

要备份单个数据库,请使用以下命令。该命令会将包含数据的数据库 [rsyslog] 结构转储到名为 rsyslog.sql 的单个转储文件中。

mysqldump -u root -ptecmint rsyslog > rsyslog.sql

如何备份多个MySQL数据库?

如果要备份多个数据库,请运行以下命令。以下示例命令将数据库 [rsyslogsyslog] 结构和数据备份到名为 rsyslog_syslog.sql 的单个文件中。

mysqldump -u root -ptecmint --databases rsyslog syslog > rsyslog_syslog.sql

如何备份所有MySQL数据库?

如果要备份所有数据库,请使用以下命令和选项–all-database。以下命令将所有数据库及其结构和数据备份到名为 all-databases.sql 的文件中。

mysqldump -u root -ptecmint --all-databases > all-databases.sql

如何只备份MySQL数据库结构?

如果您只想备份没有数据的数据库结构,则在命令中使用选项–no-data。以下命令将数据库 [rsyslog] Structure 导出到文件 rsyslog_struct.sql 中。

mysqldump -u root -ptecmint -–no-data rsyslog > rsyslog_structure.sql

如何只备份MySQL数据库数据?

要备份无结构的数据库数据,请在命令中使用选项–no-create-info。此命令将数据库 [rsyslog] 数据放入文件 rsyslog_data.sql 中。

mysqldump -u root -ptecmint --no-create-db --no-create-info rsyslog > rsyslog_data.sql

如何备份数据库单表?

使用以下命令,您可以备份数据库的单个表或特定表。例如,以下命令仅从数据库 wordpress 中备份 wp_posts 表。

mysqldump -u root -ptecmint wordpress wp_posts > wordpress_posts.sql

如何备份数据库的多个表?

如果要从数据库中备份多个或某些表,请用空格分隔每个表。

mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql

如何备份远程MySQL数据库

以下命令将远程服务器 [172.16.25.126] 数据库 [图库] 的备份备份到本地服务器中。

mysqldump -h 172.16.25.126 -u root -ptecmint gallery > gallery.sql

如何恢复MySQL数据库?

在上面的教程中,我们仅了解了如何备份数据库、表、结构和数据,现在我们将了解如何使用以下格式恢复它们。

# mysql -u [username] –p[password] [database_name] < [dump_file.sql]

如何恢复单个 MySQL 数据库

要恢复数据库,您必须在目标计算机上创建一个空数据库,并使用 msyql 命令恢复数据库。例如,以下命令将把rsyslog.sql文件恢复到rsyslog数据库。

mysql -u root -ptecmint rsyslog < rsyslog.sql

如果要恢复目标计算机上已存在的数据库,则需要使用mysqlimport命令。

mysqlimport -u root -ptecmint rsyslog < rsyslog.sql

同样,您还可以恢复数据库表、结构和数据。如果您喜欢这篇文章,请与您的朋友分享。