[Docker] Docker MySQL 导入数据库

时间:2025-03-31 18:43:27

碰到了一个需求,需要进行数据库数据迁移。但是目标数据库是在docker容器内的,不能很方便的用Navicat进行直接传输,所以需要回归传统方法。

这个教程适用于已经具备以下条件者:

  • 掌握Linux基本操作
  • 掌握Docker的基本操作
  • 掌握MySQL的基本操作
  • 已创建有效MySQLdocker容器
  • 已有有效.sql文件

进入正题:


1. 复制sql文件到容器内部

命令:

sudo docker cp /opt/ mymysql:/home/tmp/
  • 1

命令说明:
docker cp 本地文件路径 自定义容器名:目标文件名

2. 进入容器,登录mysql

docker exec -it mymysql mysql -uroot -p123456
  • 1

3. 选择数据库(没有则需要创建)

因为很多数据库导出的.sql文件中不包含选择数据库, 所以此步进行补充。

将mydatabase替换为你的数据库名:

use mydatabase;
  • 1

4. 导入并执行sql文件

source /home/tmp/a.sql;
  • 1

其中,/home/tmp/就是第一步的目标文件名。


以上就是全部过程,若有遗漏,欢迎指出。