mysqldump命令之常用选项

===============================================
mysqldump常用选项
-h, --host=name:服务器IP
-u, --user=name:登录名
-p, --password[=name]:登录密码
-A, --all-databases:导出所有数据库
-B, --databases:导出指定的数据库,多个数据库名使用空格分割
--tables:导出指定表
-d, --no-data:仅导出表结构,不导出数据
-t, --no-create-info:不导出表创建语句
-n, --no-create-db:不导出CREATE DATABASE IF EXISTS语句
-e, --extended-insert:将多条记录合并成一条INSERT语句来提高插入效率
--add-drop-table:在创建表之前加入DROP TABLE语句
--hex-blob :将二进制的数据以16进制导出
-R, --routines:导出存储过程和存储函数
--triggers:导出触发器
--master-data[=#]:导出CHANGE MASTER命令,当设置为1时,CHANGE命令正常导出,当设置为2时,CHANGE命令以注释模式导出
                    master-data开启时,会默认启用--lock-all-tables选项,并自动禁用--lock-tables选项
--dump-slave:在从库上执行时,dump-slave用来导出当前主库上的位置信息
--single-transaction:单实例模式运行
--lock-all-tables,-x:在导出前对所有表加全局只读锁,并自动关闭--single-transaction 和 --lock-tables 选项
--lock-tables :在导出当前表数据前才对表进行加锁,该选项指使用与MyISAM表。--lock-tables无法保证所有表数据在数据库级别一致。
--default-character-set=charset:设置导出时使用的字符集
--quick,-q :在导出大表时很有用,它强制 mysqldump 从服务器查询取得记录直接输出而不是取得所有记录后将它们缓存到内存中。

===============================================
master-data与dump-slave的区别:
参数--dump-slave导出的是当前从库所复制的主库的binlog信息
参数--master-data导出的是当前服务器上的binlog信息

假设现在有A-->B的复制,现在想新增从库C实现A-->C的复制
如果在A上进行备份,则使用master-data选项来获取备份时间点时A的binlog位置
如果在B上进行备份,这使用dump-slave选项来获取备份时间点时A的binlog的位置

===============================================
mysqldump与gtid-purged
当使用--all-databases + --triggers --routines --events导出脚本时,会在导出脚本中包含:

SET @MYSQLDUMP_TEMP_LOG_BIN = @@SESSION.SQL_LOG_BIN;
SET @@SESSION.SQL_LOG_BIN= 0;

--
-- GTID state at the beginning of the backup
--

SET @@GLOBAL.GTID_PURGED=‘3a8d8f51-feab-11e8-99ec-fa166946750e:17-768,
865cca62-feac-11e8-baec-fa075be7f38b:1-16‘;

如果使用--databases ‘database_name‘+--triggers --routines --events导出脚本时,会提示:

Warning: A partial dump from a server that has GTIDs will by default include the GTIDs of all transactions, even those that changed suppressed parts of the database. If you don‘t want to restore GTIDs, pass --set-gtid-purged=OFF. To make a complete dump, pass --all-databases --triggers --routines --events.

而如果使用 --set-gtid-purged选项,则不会导出下面两个命令:

SET @@SESSION.SQL_LOG_BIN= 0;
SET @@GLOBAL.GTID_PURGED=‘xxxx‘

踩坑案例:

当前有复制A(主)->B(从),现需要将C中数据全部迁移到A上,使用mysqldump --all-databases在C上导出所有数据并导入到A上,发现A上数据没有复制到B上。

问题原因:在mysqldump导出的命令中包含"SET @@SESSION.SQL_LOG_BIN= 0;",导致数据导入到A上时不会生成binlog,无法传递到其从库。

原文地址:https://www.cnblogs.com/gaogao67/p/10482973.html

时间: 2024-10-06 05:22:43

mysqldump命令之常用选项的相关文章

gcc/g++ 命令的常用选项

gcc/g++ 命令的常用选项格式(选项 解释) -o FILE 指定输出文件名,在编译为目标代码时,这一选项不是必须的.如果FILE没有指定,缺省文件名是a.out. -c 只编译生成目标文件,不链接 -m486 针对 486 进行代码优化. -O0 不进行优化处理. -O 或 -O1 优化生成代码. -O2 进一步优化. -O3 比 -O2 更进一步优化,包括 inline 函数. -w 关闭所有警告,建议不要使用此项 -Wall 允许发出gcc能提供的所有有用的警告,也可以用-W(warn

mysqldump工具的常用选项及锁表

最近在看mysql锁表的帮助文档时发现以前使用mysqldump备份时锁表有一点问题,以前在做备份写脚本时是这样锁表的mysql -A -Bse "flush tables with read lock;",后面看了官方文档知道其实这样是无效的,因为flush tables with read lock;语句在mysql的session退出后会隐式执行unlock tables,那么flush tables with read lock;只有在mysql的session不退出的情况下在

Linux学习笔记——用户、组管理命令及常用选项

用户管理命令: useradd  userdel usermod passwd  id finger chsh  chfn chmod chown  su 组管理命令: groupadd groupdel groupmod gpasswd   chgrp 用户类型分为:用户u:owner.组g:group.其他o:other   三种类型 文件权限包含:r  w  x  执行权限 文件与目录之间关于rwx 权限的区别 : 文件: r :可读  ,可以使用cat 等命令查看 w : 可写  ,可以

grep命令的常用选项

Linux的grep命令是使用正则表达式进行文本搜索的,一些对程序员很有用的选项如下: -i   忽略大小写 -w  进行普通文件匹配,而不是正则表达式匹配 -c  只统计每个文件中匹配行数(默认是输出匹配行) -n  输出匹配行的时候,文件名后面带上行号 -I  不要搜索二进制文件 -l  只打印匹配的文件名 -L  只打印不匹配的文件名 -v  输出不匹配的行

Linux学习笔记——目录、文件管理命令及常用选项

目录管理命令: ls . cd . pwd  .mkdir. rmdir .tree 文件管理命令: touch. stat .file. rm .cp. mv .nan 目录管理 #ls  列出列表 格式ls [OPTION]... [FILE]... -h (hurman)单位转换 -a (all)显示以.开头的文件 (显示隐藏文件) .当前目录 ..表示父目录 -A  不显示当前目录. 和父目录.. ,其他全部显示 -d (diectory)显示目录属性 -i  (id)  显示i节点号

FPGA综合工具--Synplify Pro的常用选项及命令

最近要用到Synplify,但以前没使用过,无基础,找到一篇帖子,隧保存下来. 本文转自:http://blog.sina.com.cn/s/blog_65fe490d0100v8ax.html Synplify 使用过程中最常用的选项及命令的介绍.一. 状态机相关(1)FSM Compiler Option FSM Compiler是一个全局选项.勾选此选项之后Synplify Pro会自动检测代码中的状态机,根据状态数量的不同选择不同的编码方式.状态数量在0~4之间采用顺序编码(Sequen

ps命令常用选项参数详解

PS命令是什么 ps命令能够给出当前系统中进程的快照.它能捕获系统在某一时间的进程状态.如果想要不断更新查看这个状态,可以配合watch命令或使用top命令.ps命令支持三种使用的语法格式 UNIX 风格:选项可以组合在一起,并且选项前必须有"-"连字符. BSD 风格 :选项可以组合在一起,但是选项前不能有"-"连字符. GNU 风格 :长选项,选项前需要有两个"-"连字符. ps命令基本选项及参数释义 a:显示现行终端机下的所有程序,包括其他

GCC编译命令常用选项

GCC是GUN Compiler Collection的简称,除编译程序外,还包含其他相关工具.GCC可将高级语言编写的源代码构建成计算机直接执行的二进制代码.GCC是Linux平台下最常用的编译程序,也是Linux平台编译器的事实标准.GCC支持四十余种不同目标体系结构(如X86系列.ARM及PowerPC等),可运行在不同的操作系统上(如Linux.Solaris及Windows等).GCC既支持基于宿主的开发(即在A平台上编译该平台使用的程序),也支持交叉编译(即在A平台上编译供B平台使用

系统观察命令sar常用输出选项说明

sar是linux系统下一个非常有用的系统观察命令,可以观察磁盘io,cpu,块设备,内存,swap等各种信息帮助我们审核操作系统的状况.下面列举了一些常用的系统状况查看命令. sar -b:磁盘的IO传输统计 默认会显示5个值: tps:每秒发送给物理设备的io总数,其值等于rtps+wtps rtps:每秒读io请求总数 wtps:每秒写io请求总数 bread/s:每秒读block的总数 bwrtn/s:每秒写block的总数 sar -C:系统调用的情况(cpu) 默认会显示6个值: u