本指南针对最常用的MySQL中小数据量迁移场景,你需要提前满足以下条件:
CentOS/RHEL 系列:
``` yum install -y mysql-server ```Ubuntu/Debian 系列:
``` apt update && apt install -y mysql-server ```登录旧服务器后,根据你要迁移的范围选择对应命令,推荐使用不明文写密码的方式,避免密码留在命令历史中:
迁移单个指定数据库:
``` mysqldump -u[你的数据库用户名] -p --default-character-set=utf8mb4 [要迁移的库名] > /root/migration_backup.sql ```迁移服务器上所有数据库:
``` mysqldump -u[你的数据库用户名] -p --all-databases --default-character-set=utf8mb4 > /root/all_db_backup.sql ```输入命令后回车,会提示输入数据库密码,输入完成后回车等待执行,没有报错即为导出成功。
使用系统自带的scp命令即可完成传输,不需要额外安装工具,在旧服务器上执行以下命令:
``` scp /root/migration_backup.sql [新服务器SSH用户名]@[新服务器公网IP]:/root/ ```常见细节修正:如果新服务器SSH端口不是默认的22,需要添加大写的-P参数指定端口,示例:
``` scp -P 2222 /root/migration_backup.sql root@123.123.123.123:/root/ ```如果传输大文件,可以添加-C参数开启压缩传输,提升速度:scp -C ...,输入命令后回车,输入新服务器的SSH密码即可开始传输,传输完成后登录新服务器即可看到备份文件。
MySQL默认允许导入的最大文件只有几十M,导入大文件会直接报错,需要先修改配置:
打开MySQL配置文件:CentOS路径为/etc/my.cnf,Ubuntu路径为/etc/mysql/mysql.conf.d/mysqld.cnf,在[mysqld]节点下添加以下配置:

保存退出后,重启MySQL生效:
CentOS系列:
``` systemctl restart mysqld ```Ubuntu系列:
``` systemctl restart mysql ```如果迁移的是单个数据库,需要先在新MySQL中创建空数据库,登录新MySQL执行:
``` -- 登录命令:mysql -u[用户名] -p,输入密码进入后执行下方语句 CREATE DATABASE [新库名] DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; ```全库迁移不需要创建,直接跳过这一步。
在新服务器执行对应导入命令,同样推荐不明文写密码:
导入单个数据库:
``` mysql -u[新数据库用户名] -p --default-character-set=utf8mb4 [新库名] < /root/migration_backup.sql ```导入全量数据库:
``` mysql -u[新数据库用户名] -p --default-character-set=utf8mb4 < /root/all_db_backup.sql ```回车输入密码后等待执行,命令行没有返回报错即为导入成功。
导入完成后先做数据校验:登录新MySQL,切换到迁移后的库,执行show tables;查看表数量是否和原库一致,随机选几张大表执行select count() from [表名];核对数据量。
数据核对无误后,更新你的应用配置文件:把原来配置文件中的数据库地址、端口、账号密码替换为新服务器的信息,替换完成后重启应用,测试所有业务功能是否正常。
如果需要给新数据库开放外部访问权限,登录新MySQL执行以下命令:
``` GRANT ALL ON [库名]. TO '你的数据库用户名'@'%' IDENTIFIED BY '你的数据库密码'; FLUSH PRIVILEGES; ```建议保留旧服务器的数据库备份至少7天,确认业务完全稳定后再清理旧数据。
split -b 100m migration_backup.sql part_分成多个100M的分卷,传输到新服务器后执行cat part_ > migration_backup.sql合并即可











易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图