MySQL 数据库迁移方法汇总

MySQL 数据库迁移方法汇总

本文档汇总了常见的 MySQL 数据库从一个主机迁移到另一个主机的方案和工具,适用于不同规模和需求的迁移场景。


1. mysqldump

特点

  • 最通用、最常用的逻辑备份工具
  • 适合小到中型数据库的全量迁移

导出数据库

bash 复制代码
mysqldump -h source_host -u user -p --databases dbname > dbname.sql

导出所有数据库

bash 复制代码
mysqldump -h source_host -u user -p --all-databases > all.sql

导入到目标主机

bash 复制代码
mysql -h target_host -u user -p < dbname.sql

2. mysqlpump

特点

  • 多线程导出,速度快于 mysqldump
  • 适合中大型数据库导出

导出数据库

bash 复制代码
mysqlpump -h source_host -u user -p --databases dbname > dbname.sql

3. mydumper / myloader

特点

  • 社区推荐的高性能导出导入工具
  • 支持多线程并发,适合大规模数据迁移

导出数据

bash 复制代码
mydumper -h source_host -u user -p password -B dbname -o /tmp/dbdump

导入数据

bash 复制代码
myloader -h target_host -u user -p password -B dbname -d /tmp/dbdump

4. 主从复制(Replication)

特点

  • 适合要求零停机的迁移场景
  • 通过配置目标服务器为从库,实现持续同步
  • 完成同步后切换流量到新主机

5. 逻辑备份 + 远程导入

直接管道传输

bash 复制代码
mysqldump -h source_host -u user -p dbname | mysql -h target_host -u user -p dbname

注意事项

项目 注意点
权限 源库和目标库均需相应权限
网络 确保两台机器网络互通,MySQL端口(3306)开放
表结构冲突 目标库存在同名表时建议加 --add-drop-table
事务支持 使用 --single-transaction 以减少锁表
GTID与二进制日志 迁移时注意 --set-gtid-purged 参数的配置

总结

工具/方案 适用场景 备注
mysqldump 小中型数据库 简单易用
mysqlpump 中大型数据库 多线程加速
mydumper/myloader 大型数据库 高性能并行导入导出
主从复制 零停机或持续同步 复杂配置,但可实现热迁移

相关推荐
AIGC大时代5 分钟前
OpenAI Agents SDK 工程笔记:tool 调用循环、max_turns 与生产禁区
服务器·数据库·笔记·tool·max_turns·functiontool·生产禁区
zcmodeltech21 分钟前
能源电力沙盘模型控制系统设计——基于STM32与Modbus RTU的“发—输—变—配—用”全链条动态展示方案
数据库·stm32·单片机·嵌入式硬件·能源
李兆龙的博客29 分钟前
从一到无穷大 #91:从 Habitat 看存储平台的整合与分工
数据库·人工智能·架构
惜分飞1 小时前
记录一次0丢失的ORA-00354: 损坏重做日志块标头故障恢复---惜分飞
数据库·oracle
cspttty1 小时前
2026秋招供应链分析师技能栈:SQL、Excel、BI与业务分析
数据库·sql·excel
Omics Pro1 小时前
澳科大:自进化AI虚拟细胞
数据库·人工智能·算法·机器学习·自然语言处理
ShineWinsu1 小时前
对于MySQL:索引的解析
linux·数据库·mysql·面试·笔试·索引·海量数据
我是苏苏1 小时前
Redis开发09:Windows系统下主从复制的配置教程
数据库·redis·缓存
数据狐(Datafox)2 小时前
京东商品列表API接口解析(附 JSON 样例)
数据库·爬虫·json