在Ubuntu上迁移MariaDB可通过以下两种常见方式实现:
在源服务器执行以下命令,导出所有数据库或指定数据库:
# 导出所有数据库
mysqldump -u root -p --all-databases > full_backup.sql
# 或导出指定数据库(如mydb)
mysqldump -u root -p mydb > mydb_backup.sql
输入密码后,备份文件会保存在当前目录。
使用scp
命令将备份文件复制到目标Ubuntu服务器:
scp full_backup.sql user@目标服务器IP:/目标路径/
在目标服务器执行以下命令导入数据:
# 导入所有数据库
mysql -u root -p < /目标路径/full_backup.sql
# 或导入指定数据库(需先创建数据库)
mysql -u root -p -e "CREATE DATABASE mydb;"
mysql -u root -p mydb < /目标路径/mydb_backup.sql
登录目标MariaDB检查数据完整性:
mysql -u root -p
SHOW DATABASES;
USE mydb;
SHOW TABLES;
sudo systemctl stop mariadb
将源服务器的/var/lib/mysql
目录复制到目标服务器相同路径(需确保权限一致):
# 源服务器打包数据
sudo tar -czvf mysql_data.tar.gz /var/lib/mysql
# 传输到目标服务器
scp mysql_data.tar.gz user@目标服务器IP:/目标路径/
# 目标服务器解压并设置权限
sudo tar -xzvf mysql_data.tar.gz -C /var/lib/
sudo chown -R mysql:mysql /var/lib/mysql
sudo systemctl start mariadb
mysql -u root -p
SHOW DATABASES;
rsync
替代scp
提升效率。以上步骤参考自,可根据实际需求选择合适方案。