MySQL作为一款广泛使用的开源关系型数据库管理系统,其备份与恢复是保证数据安全的重要环节。以下将详细介绍五大关键命令行攻略,帮助您高效地进行MySQL的备份与恢复。

一、备份命令:mysqldump

mysqldump 是MySQL提供的一个强大的备份工具,可以用于备份整个数据库或单个表。

1.1 全库备份

mysqldump -u [username] -p[password] [database_name] > [backup_file.sql] 
  • username:MySQL用户名。
  • password:MySQL密码。
  • database_name:要备份的数据库名。
  • backup_file.sql:备份文件名。

1.2 单表备份

mysqldump -u [username] -p[password] [database_name] [table_name] > [backup_file.sql] 
  • table_name:要备份的表名。

二、恢复命令:mysql

mysql 命令用于将备份文件中的数据恢复到MySQL数据库中。

2.1 恢复全库

mysql -u [username] -p[password] [database_name] < [backup_file.sql] 

2.2 恢复单表

mysql -u [username] -p[password] [database_name] < [backup_file.sql] 

注意:此命令将覆盖原表数据。

三、备份命令:mysqlpump

mysqlpump 是MySQL 5.7及以上版本提供的一个替代mysqldump的工具,它提供了更强大的备份功能。

3.1 全库备份

mysqlpump -u [username] -p[password] --all-databases > [backup_file.sql] 

3.2 单库备份

mysqlpump -u [username] -p[password] [database_name] > [backup_file.sql] 

四、备份命令:xtrabackup

xtrabackup 是MySQL InnoDB存储引擎提供的一个物理备份工具,适用于大型数据库。

4.1 全库备份

xtrabackup --user=[username] --password=[password] --backup --target-dir=[backup_dir] 
  • backup_dir:备份目录。

4.2 恢复全库

xtrabackup --apply-log --target-dir=[backup_dir] 

五、备份命令:mysql Enterprise Backup

MySQL Enterprise Backup是MySQL官方提供的一个企业级备份工具,支持热备份。

5.1 全库备份

mysqlbackup --backup --target-dir=[backup_dir] --user=[username] --password=[password] 

5.2 恢复全库

mysqlbackup --prepare --target-dir=[backup_dir] mysqlbackup --apply-log --target-dir=[backup_dir] 

总结:

以上五大关键命令行攻略可以帮助您高效地进行MySQL的备份与恢复。在实际操作中,请根据您的需求选择合适的备份工具,并确保备份文件的安全性。