在CentOS系统上进行MySQL数据迁移,可以采用多种方法。以下是几种常见的迁移方案:
mysqldump
工具mysqldump
是一个非常常用的工具,用于备份和恢复MySQL数据库。
备份源数据库:
mysqldump -u username -p --all-databases > backup.sql
或者备份特定数据库:
mysqldump -u username -p database_name > backup.sql
将备份文件传输到目标服务器:
scp backup.sql user@target_server:/path/to/destination
在目标服务器上恢复数据库:
mysql -u username -p < /path/to/destination/backup.sql
mysqlpump
工具mysqlpump
是 mysqldump
的并行版本,适用于大型数据库。
备份源数据库:
mysqlpump -u username -p --all-databases > backup.sql
或者备份特定数据库:
mysqlpump -u username -p database_name > backup.sql
将备份文件传输到目标服务器:
scp backup.sql user@target_server:/path/to/destination
在目标服务器上恢复数据库:
mysql -u username -p < /path/to/destination/backup.sql
xtrabackup
工具xtrabackup
是Percona提供的一个开源工具,用于备份InnoDB和XtraDB存储引擎。
安装 xtrabackup
:
yum install percona-xtrabackup-24
准备备份:
xtrabackup --backup --target-dir=/path/to/backup --user=username --password=password
准备备份文件:
xtrabackup --prepare --target-dir=/path/to/backup
将备份文件传输到目标服务器:
scp -r /path/to/backup user@target_server:/path/to/destination
恢复备份:
xtrabackup --copy-back --target-dir=/path/to/destination
rsync
工具如果源服务器和目标服务器之间有稳定的网络连接,可以使用 rsync
进行增量备份和恢复。
备份数据库文件:
rsync -avz /var/lib/mysql/ user@target_server:/var/lib/mysql/
备份配置文件:
rsync -avz /etc/my.cnf user@target_server:/etc/
在目标服务器上启动MySQL服务:
systemctl start mysqld
--force
选项强制恢复。选择适合你需求的迁移方案,并根据实际情况进行调整。