云计算、AI、云原生、大数据等一站式技术学习平台

网站首页 > 教程文章 正文

如何使用 MySQL 数据库进行数据迁移?

jxf315 2025-01-29 16:20:48 教程文章 44 ℃

1. 命令行方式

可以通过命令 mysqldump 进行数据库迁移。mysqldump 命令默认会导出结构和数据,如果只是单纯只导出结构的情况,可以添加 --no-data 参数

1.1 导出数据库

# 假如导出名为「test」的数据库
mysqldump -uroot -p --host=127.0.0.1 --port=3306 --databases test > /tmp/test.sql

# 只导出「test」数据结构
mysqldump -uroot -p --host=127.0.0.1 --port=3306 --no-data --databases test > /tmp/test.sql

1.2 导入数据库

导入前,需要「test」数据库必须已经存在

# 导入「test」数据库
mysql -u username -p test < /tmp/test.sql

2. 工具方式

这里使用「Navicat」举例,打开IDE,菜单栏中「工具」选项,可以选择需要操作的选项,比如同步数据结构

点击比对,工具会进行两个数据库的差异,也可以根据自己的需求进行表或视图的勾选

点击下一步,会给出待执行的 SQL,点击开始,即可同步数据机构

3. 物理迁移

这种方式是将 Mysql 的物理文件复制到目标服务器上,适用于数据库非常大的情况,因为这样可以减少数据传输所需的时间。需要注意的是,源服务器与目标服务器 Mysql 的版本需要一致。

3.1 停止 Mysql 服务

3.2 拷贝源数据文件和日志文件到目标服务器目录

3.3 启 Mysql 服务

cd /opt/mysql/mysql-5.7.29/bin
mysqld --defaults-file=/data/mysqldata/my.cnf --user=mysql &

3.4 导入数据

# 导入表空间
alter table  import tablespace;

4. 其他方式

还有其他很多方式,比如使用 Mysql 迁移工具,例如 MySQL Workbench、mysldbcopy等工具。

还可以通过 Mysql binlog 进行数据迁移,这种方式是在不停服的情况下进行。


以上就是一些常见的数据库迁移方式,具体选择哪个方式需要根据实际情况进行。建议在迁移之前,做好数据库备份。迁移工作完成后,一定要检查数据的完整性和准确性,如果发现问题,可以根据需要进行调整或数据回滚。

最近发表
标签列表