MySQL 5.7 mysqlpump 备份工具
young / / / 阅读量

介绍

MySQL5.7之后多了一个备份工具:mysqlpump。它是mysqldump的一个衍生

mysqlpump和mysqldump一样,属于逻辑备份,备份以SQL形式的文本保存。逻辑备份相对物理备份的好处是不关心undo log的大小,直接备份数据即可。它最主要的特点是:

并行备份数据库和数据库中的对象的,加快备份过程。
更好的控制数据库和数据库对象(表,存储过程,用户帐户)的备份。
备份用户账号作为帐户管理语句(CREATE USER,GRANT),而不是直接插入到MySQL的系统数据库。
备份出来直接生成压缩后的备份文件。
备份进度指示(估计值)。
重新加载(还原)备份文件,先建表后插入数据最后建立索引,减少了索引维护开销,加快了还原速度。
备份可以排除或则指定数据库。

详细参数

# 数据库地址,-h。
--host 
# 备份时候的用户名,-u。
--user
# 备份需要的密码。
--password
# 数据库的端口。
--port 
# 在建立库之前先执行删库操作
-- add-drop-database
# 在建表之前先执行删表操作。
--add-drop-table
# 在CREATE USER语句之前增加DROP USER,注意:这个参数需要和--users一起使用,否者不生效。
--add-drop-user
# 备份所有库,-A。
--all-databases
# 指定通过哪个网络接口来连接Mysql服务器(一台服务器可能有多个IP),防止同一个网卡出去影响业务。
--bind-address
# dump出包含所有列的完整insert语句。
--complete-insert
# 压缩客户端和服务器传输的所有的数据,-C。
--compress
# 手动指定要备份的库,支持多个数据库,用空格分隔,-B。
--databases
# 指定备份的字符集。
--default-character-set
# 指定并行线程数,默认是2,如果设置成0,表示不使用并行备份。注意:每个线程的备份步骤是:先create table但不建立二级索引(主键会在create table时候建立),再写入数据,最后建立二级索引。
--default-parallelism
# 延迟创建索引,直到所有数据都加载完之后,再创建索引,默认开启。若关闭则会和mysqldump一样:先创建一个表和所有索引,再导入数据,因为在加载还原数据的时候要维护二级索引的开销,导致效率比较低。关闭使用参数:--skip--defer-table-indexes。
--defer-table-indexes
# 备份数据库的事件,默认开启,关闭使用--skip-events参数。
--events
# 备份排除该参数指定的数据库,多个用逗号分隔。
--exclude-databases
# 指定备份数据库,多个用逗号分隔
--include-databases
# 备份用insert ignore语句代替insert语句。
--insert-ignore
# 备份出现的warnings和erros信息输出到一个指定的文件。
--log-error-file
# 备份不写建表语句,即不备份表结构,只备份数据,-t。
--no-create-info
# 备份出来replace into语句。
--replace
# 备份出来包含存储过程和函数,默认开启,需要对 mysql.proc表有查看权限。生成的文件中会包含CREATE PROCEDURE 和 CREATE FUNCTION语句以用于恢复,关闭则需要用--skip-routines参数。
--routines
# 备份出来包含触发器,默认开启,使用--skip-triggers来关闭。
--triggers
# 备份文件里写SET NAMES default_character_set 到输出,此参默认开启。 — skip-set-charset禁用此参数,不会在备份文件里面写出set names…
--set-charset
# 只备份表结构,不备份数据,-d。注意:mysqldump支持--no-data,mysqlpump不支持--no-data
--skip-dump-rows
# 对于连接到localhost,Unix使用套接字文件,在Windows上是命名管道的名称使用,-S。
--socket
# 备份时会在备份文件的最前几行添加SET TIME_ZONE=’+00:00’。注意:如果还原的服务器不在同一个时区并且还原表中的列有timestamp字段,会导致还原出来的结果不一致。默认开启该参数,用 --skip-tz-utc来关闭参数。
--tz-utc
# 定期显示进度的完成,包括总数表、行和其他对象。该参数默认开启,用--skip-watch-progress来关闭。
--watch-progress
支付宝捐赠
请使用支付宝扫一扫进行捐赠
微信捐赠
请使用微信扫一扫进行赞赏
有 0 篇文章