文章目录
- 前言
- Windows系统下 | mysqldump导出数据库数据
- Docker中导入初始化数据
- 【补充】通过命令行,执行sql文件,将数据导入到数据库
- 在MySQL外面执行
- 在MySQL中执行
前言
我们在用docker部署mysql项目的时候,往往需要对数据库进行数据初始化。
在初始化之前,就需要先将数据库中的数据导出出来,导出形式一般是.sql文件。
MySQL自带的mysqldump工具就可以实现上述要求。
Windows系统下 | mysqldump导出数据库数据
在存有数据的平台上以管理员身份打开cmd命令(我的是win平台):
导出数据(带有建库语句、建表语句、插入数据语句):
C:\Users\HMTeen>mysqldump -u root -p --host=127.0.0.1 --port=3306 --databases django_icwp_v3 > C:\Users\HMTeen\Desktop\icwp-mysql-data\mysqldump\icwp_full_data-1.sql
Enter password: ******
Docker中导入初始化数据
mysql-docker镜像的使用不再赘述,有个init目录,用来存放需要初始化的sql文件。
将导出的sql文件放到init目录里面,并在运行docker的时候进行正确的数据挂载即可。
init文件夹下关于sql文件的名称没要求,文件后缀是sql就行。
【补充】通过命令行,执行sql文件,将数据导入到数据库
在MySQL外面执行
通用命令(需要保证MySQL中有数据库名字xxx):
mysql -u root -p -D 数据库名字xxx < sql脚本全路径
若sql文件中包含建库命令和切换数据库的命令,上述命令可以简化:
mysql -u root -p < sql脚本全路径
在MySQL中执行
进入MySQL:
mysql -u root -p
导入数据:
Mysql>source .sql文件全路径