说一千道一万,其实主要聊的就是mysqldump😀
介绍
在MySQL的官网上是这么介绍mysqldump的A Database Backup Program。具体的用法可以参考MySQL的官方手册。
导出
万变不离其宗,导出依赖的是mysqldump这个工具(组件、命令)。所以下面的命令就是核心了。
1
2
3
4
C:\Program Files\MySQL\MySQL Server 5.7\bin>mysqldump -uroot -psdfsdf123 --host=192.168.61.201 --port=3306 --databases game movie > test.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
C:\Program Files\MySQL\MySQL Server 5.7\bin>
说明一下字段:
-
-u用户。 -
-p密码。 -
--host=MySQL服务端的地址。 -
--port=MySQL服务端的端口。 -
--databases库名,多个库可以用空格间隔开。 - ` > test.sql`导出到当前的路径下。
试过小海豚等一些工作,我发现MySQL Workbench不错,可以批量导出多个库,也有好多选项可以选。路径是Server - Data Export。

然后执行过程的log如下:
1
2
3
18:28:15 Dumping xixixi_hub, xixixi_business, xixixi_output
Running: mysqldump.exe --defaults-file="c:\users\steveliu\appdata\local\temp\tmpbyfmhp.cnf" --user=root --host=192.168.61.201 --protocol=tcp --port=3306 --default-character-set=utf8 --single-transaction=TRUE --databases "xixixi_hub" "xixixi_business" "xixixi_output"
18:32:33 Export of D:\steveliu\Documents\dumps\Dump20200910-1.sql has finished
备份
备份其实就是定时执行mysqldump,目前还没有搞起来,后面工具化之后再来记录。
导入&还原
本质是通过mysql这个工具(客户端、命令)来执行sql脚本。如$ mysql -uroot -p123456 < Dump20200910-1.sql。也可以通过可视化的客户端来进行导入,MySQL Workbench就是个不错的选择。

执行过程的log如下:
1
2
3
18:34:56 Restoring D:\steveliu\Documents\dumps\Dump20200910-1.sql
Running: mysql.exe --defaults-file="c:\users\steveliu\appdata\local\temp\tmp1af9r7.cnf" --protocol=tcp --host=11.51.193.15 --user=root --port=6379 --default-character-set=utf8 --comments < "D:\\steveliu\\Documents\\dumps\\Dump20200910-1.sql"
18:39:49 Import of D:\steveliu\Documents\dumps\Dump20200910-1.sql has finished
更新日志
- 2020年9月10日:初稿。
- 2020年12月:追加导入的MySQL Workbench的截图。