在Linux上备份和恢复MariaDB数据库可以通过多种方法实现,以下是一些常用的备份和恢复方法:
备份方法- 使用
mysqldump
工具:mysqldump
是一个非常常用的备份工具,可以将数据库导出为SQL文件。示例命令:mysqldump -u root -p --all-databases > full_backup.sql
或者只备份特定的数据库:mysqldump -u root -p your_database_name > database_backup.sql
- 使用
mysqlpump
工具(适用于MariaDB 10.1及以上版本):mysqlpump
是MariaDB的并行备份工具,可以同时从多个服务器上备份数据库,适用于大型数据库的备份。示例命令:mysqlpump -u root -p --all-databases > full_backup.sql
- 使用
xtrabackup
工具(适用于InnoDB存储引擎):xtrabackup
是一个开源的热备份工具,适用于MariaDB和MySQL。示例命令:xtrabackup --backup --target-dir=/path/to/backup --user=root --password=your_password
- 使用
rsync
进行文件系统级别的备份:sudo systemctl stop mariadb
使用rsync
备份数据目录:sudo rsync -a /var/lib/mysql /path/to/backup/mysql_backup
启动MariaDB服务:sudo systemctl start mariadb
- 使用
mariadb-backup
工具(MariaDB提供的官方备份工具):mariadb-backup --copy-back --target-dir=/path/to/backup
恢复方法- 从SQL文件恢复:
mysql -u root -p database_name < backup_file.sql
- 从物理备份恢复:
sudo rsync -av /path/to/backup/mysql/ /var/lib/mysql/
- 使用
mysqlimport
或mariadb-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
- 使用
xtrabackup
恢复:sudo systemctl stop mariadb
准备备份(如果需要恢复):xtrabackup --prepare --target-dir=/path/to/backup
启动MariaDB服务:sudo systemctl start mariadb