debian

Debian MariaDB备份与恢复方法

小樊
39
2025-09-17 09:05:55
栏目: 云计算

备份方法

  1. 使用 mysqldump 工具(逻辑备份)

    • 备份整个数据库:
      mysqldump -u [用户名] -p[密码] [数据库名] > backup.sql
      (例:mysqldump -uroot -pMyPassword mydb > mydb_backup.sql
    • 备份单个表:
      mysqldump -u [用户名] -p[密码] [数据库名] [表名] > table_backup.sql
  2. 使用 mariabackup 工具(物理备份,官方推荐)

    • 安装:sudo apt install mariadb-backup
    • 全量备份:
      mariabackup --user=[用户名] --password=[密码] --backup --target-dir=/path/to/backup
    • 增量备份(基于全量或上次增量):
      mariabackup --user=[用户名] --password=[密码] --backup --target-dir=/path/to/incr_backup --incremental-basedir=/path/to/last_backup
  3. 使用 xtrabackup 工具(物理备份,适合大规模数据库)

    • 安装:sudo apt install percona-xtrabackup-24
    • 备份:xtrabackup --backup --user=[用户名] --password=[密码] --target-dir=/path/to/backup

恢复方法

  1. 通过 mysql 命令恢复(逻辑备份)

    • 停止服务:sudo systemctl stop mariadb
    • 导入备份文件:
      mysql -u [用户名] -p[密码] [数据库名] < backup.sql
      (例:mysql -uroot -pMyPassword mydb < mydb_backup.sql
    • 启动服务:sudo systemctl start mariadb
  2. 通过 mariabackup 恢复(物理备份)

    • 准备备份:mariabackup --prepare --target-dir=/path/to/backup
    • 恢复数据:
      sudo rsync -aP /path/to/backup/ /var/lib/mysql/
    • 修复权限:sudo chown -R mysql:mysql /var/lib/mysql
    • 启动服务:sudo systemctl start mariadb
  3. 通过 xtrabackup 恢复(物理备份)

    • 准备备份:xtrabackup --prepare --target-dir=/path/to/backup
    • 恢复数据:xtrabackup --copy-back --target-dir=/path/to/backup --datadir=/var/lib/mysql
    • 重启服务:sudo systemctl restart mariadb

注意事项

参考来源:

0
看了该问题的人还看了