数据库的模式中我开启了gtid:

mysql> show variables like '%gtid%';+----------------------------------+-----------+| Variable_name | Value |+----------------------------------+-----------+| binlog_gtid_simple_recovery | ON || enforce_gtid_consistency | ON || gtid_executed_compression_period | 1000 || gtid_mode | ON || gtid_next | AUTOMATIC || gtid_owned | || gtid_purged | || session_track_gtids | OFF |+----------------------------------+-----------+

我现在数据库中有一world的库,并且在库中有一个country表,现在进行备份时会提示如下警告:

[root@smiletest data]# mysqldump -uroot -p -R -e --triggers --master-data=2 --single-transaction world country >/tmp/countryno.sqlEnter password: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=OFF和不加的区别

countryno.sql是没有加--set-gtid-purged=OFF

[root@smiletest data]# mysqldump -uroot -p -R -e --triggers --master-data=2 --single-transaction world country >/tmp/countryno.sql

countryyes.sql是加--set-gtid-purged=OFF

[root@smiletest data]# mysqldump -uroot -p -R -e --triggers --master-data=2 --single-transaction --set-gtid-purged=OFF world country >/tmp/countryyes.sql

Enter password:

没有加--set-gtid-purged=OFF的里面会多几条语句

SET @MYSQLDUMP_TEMP_LOG_BIN = @@SESSION.SQL_LOG_BIN;SET @@SESSION.SQL_LOG_BIN= 0;-- GTID state at the beginning of the backupSET @@GLOBAL.GTID_PURGED='e024c334-8b64-11e9-80dc-fa163e4bfc29:1-761734';

现在我们进行导入刚没有加--set-gtid-purged=OFF备份的/tmp/countryno.sql语句

mysql> show master status;+------------------+----------+--------------+------------------+-----------------------------------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |+------------------+----------+--------------+------------------+-----------------------------------------------+| mysql-bin.000013 | 85019 | | | e024c334-8b64-11e9-80dc-fa163e4bfc29:1-761735 |+------------------+----------+--------------+------------------+-----------------------------------------------+1 row in set (0.00 sec)mysql> source /tmp/countryno.sqlQuery OK, 0 rows affected (0.00 sec)mysql> show master status;+------------------+----------+--------------+------------------+-----------------------------------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |+------------------+----------+--------------+------------------+-----------------------------------------------+| mysql-bin.000013 | 85019 | | | e024c334-8b64-11e9-80dc-fa163e4bfc29:1-761735 |+------------------+----------+--------------+------------------+-----------------------------------------------+1 row in set (0.00 sec)

结论发现,gtid事务和 Position都没有增加

现在我们进行导入刚加--set-gtid-purged=OFF备份的/tmp/countryyes.sql语句

mysql> drop table country;Query OK, 0 rows affected (0.01 sec)mysql> show master status;+------------------+----------+--------------+------------------+-----------------------------------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |+------------------+----------+--------------+------------------+-----------------------------------------------+| mysql-bin.000013 | 112669 | | | e024c334-8b64-11e9-80dc-fa163e4bfc29:1-761742 |+------------------+----------+--------------+------------------+-----------------------------------------------+1 row in set (0.00 sec)mysql> source /tmp/countryyes.sqlQuery OK, 0 rows affected (0.00 sec)mysql> show master status;+------------------+----------+--------------+------------------+-----------------------------------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |+------------------+----------+--------------+------------------+-----------------------------------------------+| mysql-bin.000013 | 139929 | | | e024c334-8b64-11e9-80dc-fa163e4bfc29:1-761747 |+------------------+----------+--------------+------------------+-----------------------------------------------+1 row in set (0.00 sec)mysql>

结论发现,gtid事务和 Position都增加了

结论

在原数据库导出时加了--set-gtid-purged=OFF,导入新数据库时,才会触发记录到新数据库的binlog日志。如果不加,则新数据库不记录binlog日志。
所以在我们做主从用了gtid时,用mysqldump备份时就要加--set-gtid-purged=OFF,否则你在主上导入恢复了数据,主没有了binlog日志,同步则不会被同步。

转载自:https://www.cnblogs.com/--smile/p/11464687.html

mysqldump关于--set-gtid-purged=OFF的使用(好文章!!)相关推荐

  1. Mysql不能备份序列_无法mysqldump

    使用mysqldump工具备份还原Mysql数据库实例及参数详细说明 MySQL命令行功能非常强大,甚至可以进行数据库的备份,下面为您介绍的MySQL命令行就用于备份数据库,希望对您有所帮助. 注意, ...

  2. mysql gtid 开启失败_失败gtid

    MySQL内核月报 2015.01-MySQL · 性能优化· 启用GTID场景的性能问题及优化 背景 MySQL从5.6版本开始支持GTID特性,也就是所谓全局事务ID,在整个复制拓扑结构内,每个事 ...

  3. mysql dump hbase_导出mysqldump数据

    mysql备份,备份数据,数据库,表结构 mysql  mysqldump 这里我的数据库先叫做xmen; 备份数据库 代码如下: #mysqldump 数据库名 >数据库备份名 #mysqld ...

  4. 新特性解读 | MySQL 8.0 对 GTID 的限制解除

    作者:杨涛涛 资深数据库专家,专研 MySQL 十余年.擅长 MySQL.PostgreSQL.MongoDB 等开源数据库相关的备份恢复.SQL 调优.监控运维.高可用架构设计等.目前任职于爱可生, ...

  5. 基于 Gtid 的 MySQL 主从同步实践

    点击下方公众号「关注」和「星标」 回复"1024"获取独家整理的学习资料! 前几天,有读者在后台留言问我可有基于Gtid的Mysql主从同步的文章,我记得历史文章应该有提及过,也有 ...

  6. MySQL高可用框架--组复制(group replication)搭建测试

    一.框架搭建       1.首先备份主库数据,有两种方法,冷备份和热备份.冷备份需要先停止master服务,sudo/etc/init.d/mysql stop,然后通过cp或者scp等命令将数据文 ...

  7. xtrabackup 安装、备份和恢复

    xtrabackup 版本对应: 2.4 专针对 5.7 开发的,兼容 5.6, 5.5 2.3 针对 5.6 开发的,兼容5.5 2.2 针对5.5 开发的 安装包下载: wget https:// ...

  8. mysql dump xtrabackup_MySQL--备份恢复【Mysqdump+xtrabackup(XBK)】

    1.运维在数据库备份恢复方面的职责 1.设计备份策略 全备 .增量.时间.自动 2.日常备份检查 备份存在性 备份空间够用否 3.定期恢复演练(测试库) 一季度 或者 半年 4.故障恢复 通过现有备份 ...

  9. mysql dump 10.13_mysqldump版本引起的问题

    mysqldump5.1版本 mysqldump --version mysqldump  Ver 10.13 Distrib 5.1.73, for redhat-linux-gnu (x86_64 ...

  10. MySQL-备份恢复

    1. 运维在数据库备份恢复方面的职责 1.1 设计备份策略 全备 .增量.时间.自动 1.2 日常备份检查 备份存在性 备份空间够用否 1.3 定期恢复演练(测试库) 一季度 或者 半年 1.4 故障 ...

最新文章

  1. Silverlight揭秘
  2. String与StringBuffer 理解
  3. iOS手势操作简介(三)
  4. oracle怎么查询和插入表,Oracle查询一个表的数据插入到另一个表
  5. Three Tips
  6. 走进小作坊(八)----公益之痒
  7. ZOJ - 3939(日期规律)
  8. android获取uid,Android获得UID的办法
  9. ios项目编译错误:error: Multiple commands produce 'Faun.app/Assets.car'
  10. 电子制造ERP管理系统在仓库管理中的应用
  11. 洞悉物联网发展1000问之为什么新零售不仅仅是无人零售?
  12. java jtable_Java:JTable中的控制台输出
  13. 独家|胡庆勇:态势感知下的智慧指挥(附视频amp;PPT)
  14. python爬虫是干嘛的?python爬虫能做什么?
  15. #TCGA系列#利用perl提取一个文件夹中的多个文件夹里的注释文本
  16. Java Calendar用法
  17. PAT甲级——1166 Summit (25 分)
  18. Express 中间件及路由
  19. python爬取二手房信息_刚刚接触PythonR?教你爬取分析赶集网北京二手房数据(附详细代码)...
  20. 在Word中创建CommandBar并显示winform窗体

热门文章

  1. 如何修改 Windows10 操作系统里某种文件类型的默认图标
  2. Android——获取实时的手机屏幕四个点经纬度(百度地图)
  3. 背景色透明度影响字体的透明度
  4. Xp计算机同步时间,xp电脑时间无法同步如何解决
  5. 学习笔记:定积分的求解(矩形法)
  6. CTC blank 理解
  7. 计算机木材染色 配色技术的应用技术,木材怎么染色?木材染色剂电脑配色方法...
  8. 快速上手Onvif(Python)心得
  9. 计算机路由器无线级联配置,不同品牌无线路由器 无线级联 配置案例
  10. Tor去匿名化?俄罗斯联邦安全局秘密项目因承包商被入侵遭曝光