有时候我们需要对数据库备份为sql文件,本文介绍MySQL导入导出.sql文件的方法。
方法一:使用命令行(Windows)
导出:
使用mysqldump工具(此文件在mysql的bin目录下,因此在使用mysqldump命令时,需要在bin目录下启动命令行窗口),mysqldump的用法有很多,这里主要介绍常用的,如果想学习详细用法,请参考MySQL文档 mysqldump — A Database Backup Program
1.导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u root -p test > test.sql
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名 > 导出的文件名
mysqldump -u root -p test tb1 > test_tb1.sql
3.导出多个表
mysqldump -u 用户名 -p 数据库名 表1 表2 表3... > 导出的文件名
mysqldump -u root -p test tb1 tb2 tb3 > test_tb1.sql
执行上述指令后,在bin目录下可以找到对应的.sql文件。
导入:使用source指令
进入mysql控制台,执行下述指令:
mysql>use 数据库名
mysql>source D:/test.sql (注:这里的路径名使用斜杠,使用D:\test.sql也可以)
方法二:使用Navicat
我的Navicat版本:12.1.10 (64-bit)非商业版
Navicat导入导出数据库时,可以保存为.sql文件,也可以保存为.nb3文件。这里只介绍保存为.sql文件。如果需要保存文.nb3文件,可以查看这里
导出:选中想要备份的数据库,然后点击右键,选择转储SQL文件(英文版Dump SQL File),然后保存为.sql文件就可以;
导入:选中想要导入的数据库,然后点击右键,选择执行SQL文件(英文版Execute SQL File),然后选择之前导出的.sql文件就可以;
注意: 在Navicat的命令行(F6)里面使用source指令会报错,具体原因还不清楚,有知道原因的可以留言,在此表示感谢!StackOverflow上有这问题,但是一直无人回答,可以点击此处查看