温馨提示×

MariaDB在Linux上的备份与恢复

小樊
55
2025-07-09 12:33:26
栏目: 云计算

在Linux上备份和恢复MariaDB数据库可以通过多种方法实现,以下是一些常用的备份和恢复方法:

备份方法

  1. 使用mysqldump工具
  • mysqldump是一个非常常用的备份工具,可以将数据库导出为SQL文件。
  • 示例命令:
    mysqldump -u root -p --all-databases > full_backup.sql
    
    或者只备份特定的数据库:
    mysqldump -u root -p your_database_name > database_backup.sql
    
  1. 使用mysqlpump工具(适用于MariaDB 10.1及以上版本):
  • mysqlpump是MariaDB的并行备份工具,可以同时从多个服务器上备份数据库,适用于大型数据库的备份。
  • 示例命令:
    mysqlpump -u root -p --all-databases > full_backup.sql
    
  1. 使用xtrabackup工具(适用于InnoDB存储引擎):
  • xtrabackup是一个开源的热备份工具,适用于MariaDB和MySQL。
  • 示例命令:
    xtrabackup --backup --target-dir=/path/to/backup --user=root --password=your_password
    
  1. 使用rsync进行文件系统级别的备份
  • 停止MariaDB服务:
    sudo systemctl stop mariadb
    
  • 使用rsync备份数据目录:
    sudo rsync -a /var/lib/mysql /path/to/backup/mysql_backup
    
  • 启动MariaDB服务:
    sudo systemctl start mariadb
    
  1. 使用mariadb-backup工具(MariaDB提供的官方备份工具):
  • 用于执行全量备份和增量备份。
  • 示例命令:
    mariadb-backup --copy-back --target-dir=/path/to/backup
    

恢复方法

  1. 从SQL文件恢复
  • 如果备份文件是SQL格式,可以使用以下命令恢复数据库:
    mysql -u root -p database_name < backup_file.sql
    
  1. 从物理备份恢复
  • 如果备份是物理备份(例如,整个数据目录的备份),可以将备份的数据目录复制到MariaDB的数据目录中。
  • 示例命令:
    sudo rsync -av /path/to/backup/mysql/ /var/lib/mysql/
    
  1. 使用mysqlimportmariadb-restore恢复.dump文件
  • mysqlimport用于恢复.dump文件。
  • 示例命令:
    mysqlimport -u root -p --local my_database /home/user/my_backup.dump
    
  • mariadb-restore用于恢复.dump文件。
  • 示例命令:
    mariadb-restore -u root -p --databases my_database /home/user/my_backup.dump
    
  1. 使用xtrabackup恢复
  • 停止MariaDB服务:
    sudo systemctl stop mariadb
    
  • 准备备份(如果需要恢复):
    xtrabackup --prepare --target-dir=/path/to/backup
    
  • 启动MariaDB服务:
    sudo systemctl start mariadb
    

0