linux

LNMP架构中MySQL如何备份与恢复

小樊
84
2025-02-15 17:14:25
栏目: 云计算

在LNMP(Linux, Nginx, MySQL, PHP)架构中,MySQL的备份与恢复是非常重要的操作,以确保数据的安全性和可靠性。以下是几种常用的备份与恢复方法:

备份方法

  1. 全量备份: 使用mysqldump命令进行全量备份。例如,备份所有数据库:
mysqldump -u root -p --all-databases > full_backup.sql

为了压缩备份文件,可以使用gzip

mysqldump -u root -p --all-databases | gzip > full_backup.sql.gz
  1. 单库备份: 备份单个数据库:
mysqldump -u root -p --databases mydatabase > mydatabase_backup.sql
  1. 单表备份: 备份单个表:
mysqldump -u root -p mydatabase tb_table > tb_table_backup.sql
  1. 特定多个表备份: 备份多个表:
mysqldump -u root -p mydatabase tb_table1 tb_table2 > tb_table1_tb_table2_backup.sql
  1. 使用-B参数备份-B参数可以导出数据库和创建数据库的功能,方便恢复时不需要手动创建数据库:
mysqldump -u root -p --all-databases -B > all_databases_backup_with_create.sql
  1. 二进制日志备份: 备份二进制日志文件,用于恢复到最后一个事务:
mysqlbinlog --base64-output-decode-rows mysql-bin.000002 > binary_log_backup.sql

恢复方法

  1. 全量恢复
mysql -u root -p < full_backup.sql.gz

或者解压后恢复:

gunzip < full_backup.sql.gz
mysql -u root -p < full_backup.sql
  1. 单库恢复
mysql -u root -p mydatabase < mydatabase_backup.sql
  1. 单表恢复
mysql -u root -p mydatabase < tb_table_backup.sql
  1. 特定多个表恢复
mysql -u root -p mydatabase < tb_table1_tb_table2_backup.sql
  1. 使用-B参数恢复
mysql -u root -p < all_databases_backup_with_create.sql
  1. 二进制日志恢复
mysqlbinlog mysql-bin.000002 | mysql -u root -p

注意事项

0
看了该问题的人还看了