如何在mysql 5.7中完全禁用GTID?

8ulbf1ek  于 2023-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(148)

由于我的mysql数据库只是用于一个小的web应用程序,我将永远不需要任何复制功能。在监视时,我注意到一个名为thread/sql/compress_gtid_table的东西。在使用mysqldump转储一些表时,我得到了以下警告:

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.

我怎么能确定所有的GTID特性都被完全禁用了,并且没有造成开销呢?
下面是我的配置:

mysql> SHOW VARIABLES LIKE '%GTID%';
+----------------------------------+----------------+
| Variable_name                    | Value          |
+----------------------------------+----------------+
| binlog_gtid_simple_recovery      | ON             |
| enforce_gtid_consistency         | OFF            |
| gtid_executed_compression_period | 1000           |
| gtid_mode                        | OFF            |
| gtid_next                        | AUTOMATIC      |
| gtid_owned                       |                |
| gtid_purged                      |                |
| session_track_gtids              | OFF            |
+----------------------------------+----------------+
gj3fmq9x

gj3fmq9x1#

我只是在寻找这个警告时被链接到这里。我正在设置GTID,但此页面可能对您有帮助:https://dev.mysql.com/doc/refman/5.7/en/replication-gtids-howto.html
注意有一个警告,一旦你打开GTID,你就不能轻易后退。我肯定有办法,但可能不值得麻烦。

nlejzf6q

nlejzf6q2#

禁用GTID复制后,您不需要更多的旧二进制日志(带有GTID信息),并且slave已捕获所有binlog信息,您可以停止slave并执行reset master;它将清除服务器上的所有binlog,并且不再保留gtid信息。请参阅此post如何正确重新同步复制。

相关问题