在Debian上迁移MySQL数据可以通过多种方式进行,以下是一些常见的方法:
mysqldump 和 mysql 命令备份数据库
使用 mysqldump 命令备份所有数据库或特定数据库。
mysqldump -u username -p --all-databases > full_backup.sql
或者备份特定数据库:
mysqldump -u username -p database_name > database_backup.sql
传输备份文件
将备份文件传输到目标服务器。可以使用 scp 或其他文件传输工具。
scp full_backup.sql user@target_server:/path/to/destination/
恢复数据库
在目标服务器上,使用 mysql 命令恢复数据库。
mysql -u username -p < /path/to/destination/full_backup.sql
xtrabackupxtrabackup 是一个用于Percona Server和MySQL的备份工具,支持热备份和增量备份。
安装 xtrabackup
sudo apt-get update
sudo apt-get install percona-xtrabackup-24
准备备份
使用 xtrabackup 进行完整备份。
sudo xtrabackup --backup --target-dir=/path/to/backup --user=username --password=password
准备备份(可选) 如果需要将备份转换为可恢复的格式,可以运行以下命令:
sudo xtrabackup --prepare --target-dir=/path/to/backup
传输备份文件 将备份文件传输到目标服务器。
scp -r /path/to/backup user@target_server:/path/to/destination/
恢复数据库 在目标服务器上,停止MySQL服务并恢复备份。
sudo systemctl stop mysql
sudo xtrabackup --copy-back --target-dir=/path/to/destination/backup
sudo chown -R mysql:mysql /var/lib/mysql
sudo systemctl start mysql
mysqlpumpmysqlpump 是MySQL 5.7及以上版本提供的并行备份工具。
备份数据库
使用 mysqlpump 命令备份所有数据库或特定数据库。
mysqlpump -u username -p --all-databases > full_backup.sql
或者备份特定数据库:
mysqlpump -u username -p database_name > database_backup.sql
传输备份文件 将备份文件传输到目标服务器。
scp full_backup.sql user@target_server:/path/to/destination/
恢复数据库
在目标服务器上,使用 mysql 命令恢复数据库。
mysql -u username -p < /path/to/destination/full_backup.sql
通过以上方法,你可以在Debian上成功迁移MySQL数据。