Ubuntu MariaDB数据迁移主要有以下两种方法:
-
使用mysqldump工具(逻辑迁移)
- 备份源数据库:通过
mysqldump命令导出MariaDB数据为SQL文件,例如mysqldump -u root -p --all-databases > backup.sql。 - 传输备份文件:使用
scp等工具将SQL文件复制到目标服务器。 - 导入目标数据库:在目标服务器上通过
mysql命令导入SQL文件,如mysql -u root -p < backup>。 - 适用场景:跨服务器迁移、版本升级(如MariaDB→MySQL需手动处理不兼容部分)。
- 备份源数据库:通过
-
直接复制数据文件(物理迁移)
- 停止MariaDB服务:
sudo systemctl stop mariadb。 - 复制数据目录:将
/var/lib/mysql目录复制到新位置或目标服务器,如sudo cp -a /var/lib/mysql /new/location/。 - 修改配置文件:更新
/etc/mysql/mariadb.conf.d/50-server.cnf中的datadir路径。 - 调整权限并重启服务:
sudo chown -R mysql:mysql /new/location/mysql,然后sudo systemctl start mariadb。 - 适用场景:同服务器内迁移或需保留原存储引擎的迁移。
- 停止MariaDB服务:
注意事项:
- 迁移前务必备份数据,避免丢失。
- 跨版本或跨数据库类型(如MariaDB→MySQL)时,需检查数据类型、存储引擎兼容性,必要时手动修改SQL文件。
- 大数据量迁移建议使用ETL工具(如Cloud Canal、DataX)提升效率。