首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mysql中gtid关闭方法

MySQL GTID 关闭方法

基础概念

GTID(Global Transaction Identifiers)是MySQL 5.6引入的一个特性,用于全局事务标识符。它允许数据库复制更加简单和可靠,因为它提供了一种跟踪和识别事务的方法,无论这些事务在哪个服务器上执行。

相关优势

  • 简化复制管理:GTID使得主从复制的管理更加简单,因为不需要手动管理二进制日志文件和位置。
  • 故障恢复:GTID使得故障恢复更加容易,因为可以精确地定位到故障发生时的事务。
  • 多源复制:GTID支持多源复制,即一个服务器可以从多个源服务器复制数据。

类型

  • 自动模式:默认情况下,MySQL使用GTID自动模式。
  • 手动模式:可以通过配置关闭GTID。

应用场景

  • 主从复制:在主从复制环境中,GTID可以简化复制配置和管理。
  • 故障恢复:在发生故障时,GTID可以帮助快速定位和恢复数据。

关闭方法

要关闭MySQL中的GTID,可以通过修改MySQL配置文件(通常是my.cnfmy.ini)来实现。以下是具体步骤:

  1. 编辑配置文件: 打开MySQL配置文件,添加或修改以下配置项:
  2. 编辑配置文件: 打开MySQL配置文件,添加或修改以下配置项:
  3. 重启MySQL服务: 保存配置文件并重启MySQL服务以使更改生效。重启命令取决于操作系统:
    • Linux
    • Linux
    • Windows
    • Windows
  • 验证GTID状态: 登录到MySQL服务器并检查GTID状态:
  • 验证GTID状态: 登录到MySQL服务器并检查GTID状态:
  • 如果输出显示gtid_modeOFFenforce_gtid_consistencyOFF,则GTID已成功关闭。

遇到的问题及解决方法

如果在关闭GTID时遇到问题,可能是由于以下原因:

  • 配置文件路径错误:确保配置文件路径正确,并且MySQL服务能够读取到该文件。
  • 权限问题:确保有足够的权限修改配置文件并重启MySQL服务。
  • 依赖关系:某些MySQL功能可能依赖于GTID,关闭GTID可能导致这些功能无法正常工作。确保了解关闭GTID的影响,并在必要时进行相应的调整。

参考链接

通过以上步骤,您可以成功关闭MySQL中的GTID,并了解相关的优势和注意事项。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

MySQL 在线开启关闭GTID

一 前言 MySQL DBA大都熟悉 MySQL 5.6版本开始提供基于 GTID模式的主从复制,该特性简化复制和降低主从复制维护的难度,提高复制的可运维性,不再依赖binlog文件名和文件中的位置。...但是它有很多限制,5.7版本MySQL支持对GTID做了如下改进: a 不需要重启MySQL服务器. b 配置过程在线,整个复制集群仍然对外提供读和写的服务. c 不需要改变复制拓扑结构. d 可以在任何结构的复制集群中在线启用...2.5 在主从复制结构中所有的实例中执行: set global GTID_MODE = ON; 该参数的功能是让系统产生GTID ,Slave只能接受带GTID的事务。...还没呢,记得修改my.cnf 添加 gtid_mode = on enforce_gtid_consistency = on 三 在线关闭GTID 关闭GTID的步骤其实和开启的步骤相反: 3.1 关闭...; 3.8 删除或者注释my.cnf中的GTID相关参数。

9.7K21

MySQL之GTID

MySQL-5.6.2开始支持,MySQL-5.6.10后完善,GTID 分成两部分,一部分是服务的UUid,UUID保存在mysql数据目录的auto.cnf文件中, 这是一个非常重要的文件,不能删除...2、slave端的i/o 线程将变更的binlog,写入到本地的relay log中。 3、sql线程从relay log中获取GTID,然后对比slave端的binlog是否有记录。...4、如果有记录,说明该GTID的事务已经执行,slave会忽略。 5、如果没有记录,slave就会从relay log中执行该GTID的事务,并记录到binlog。...03 GTID的优缺点 优点: 1.一个事务对应一个唯一GTID,一个GTID在一个服务器上只会执行一次 2.GTID是用来代替传统复制的方法,GTID复制与普通复制模式的最大不同就是不需要指定二进制文件名和位置...*/; (6)我们可以看到GTID_NEXT的值是 ,然后我们通过下面的方法来重新恢复主从复制: mysql> stop slave; Query OK, rows affected (0.00 sec

1.2K41
  • 深入理解MySQL 5.7 GTID系列(四):mysql.gtid_executed&PREVIOUS GTID EVENT

    作者:高鹏(重庆八怪) 原文地址: https://www.jianshu.com/p/1f4f9c07ce0b 深入理解MySQL 5.7 GTID系列文章共十篇,本文为第四篇, 第一篇:深入理解MySQL...5.7 GTID系列(一) 第二篇:深入理解MySQL 5.7 GTID系列(二):GTID相关内部数据结构 第三篇:深入理解MySQL 5.7 GTID系列(三):GTID的生成时机 该系列文章将陆续不定期更新...~ 之所以把MySQL.GTID_EXECUTED表的作用和PREVIOUS GTID EVENT的改变放到一起进行描述是因为它们后面文章探讨的基础。...自然这种情况下我们需要另外的一种GTID持久化介质,而并不是BINLOG中的GTID EVENT。为了解决这个问题,5.7中GTID_EXECUTED表应运而生了。...Trx end*/ Gno:0 我们清晰的看到这里包含了PREVIOUS GTID EVENT,当然我们还发现了ANONYMOUS GTID EVENT这也是5.7中变化,5.7中即使不开始GTID

    73010

    关于 MySQL GTID 复制

    ,基于全局事务的复制方式,由server_uuid:transaction_id组成,server_uuid在数据库启动过程生成,在/data/auto.cnf中 复制过程:master事务提交时GTID.../my.cnf [mysqld] datadir=/usr/local/mysql/data log_bin=mysql-bin server_id=1 gtid_mode=on enforce_gtid_consistency...> 然后将之前异步复制的配置去掉,重新配置slave中主库信息即可 mysql> show variables like '%log_slave_updates%'; +----------------...> 将slave中log_slave_updates关掉,就能看到mysql.gtid_executed表中记录已执行gtid信息了 mysql> select * from mysql.gtid_executed...导致后面insert数据部分被忽略而产生错误; 一个事务中既包含InnoDB表又包含MyISAM表会导致可能产生多个gtid,或者表在主从库中存储引擎不一致都会产生gtid复制异常

    40720

    MySQL5.7配置基于GTID的复制及GTID回退到传统模式的方法

    MySQL5.7下配置GTID复制的方法: 环境: CentOS6.8X86_64 MySQL Community 5.7.17 node1:192.168.2.171 主库 node2:192.168.2.172...从库 修改主库和从库的配置文件,加入红色部分的配置项: 主库: [mysqld] log-bin=mysql-bin binlog_format= ROW gtid-mode = ON enforce_gtid_consistency...GTID复制转成传统模式的方法: 如果之前启用过了GTID,那么就不能不能再使用传统的change master to的方式了,会报错,如下: ERROR 1776 (HY000): Parameters...要转换成传统模式,需要在my.cnf里面注释掉下面2行: gtid-mode=ON enforce_gtid_consistency = ON 然后重启MySQL。...> change master to MASTER_AUTO_POSITION=0;      # 设置为0关闭这个选项,这个选项是GTID复制才用到的。

    75440

    MySQL 5.7配置GTID主从

    GTID 和事务会记录到 binlog 中,用来标识事务。 GTID 是用来替代以前 classic 复制方法,MySQL-5.6.2 开始支持 GTID,在 MySQL-5.6.10 后完善。...(3) sql 线程从 relay log 中获取 GTID,然后对比 slave 端的 binlog 是否有该 GTID。...(1) 不允许在一个 SQL 同时更新一个事务引擎和非事务引擎的表; 事务中混合多个存储引擎,就会产生多个 GTID。...(4) 在一个复制组中,必须要求统一开启 GTID 或是关闭 GTID; (5) 开启 GTID 需要重启(5.6 需要,5.7 中不需要) (6) 开启 GTID 后,就不能在使用原来的传统的复制方式...(8) 不推荐在 GTID 模式的实例上进行 mysql_upgrade; 因为 mysql_upgrade 的过程要创建或修改系统表(非事务引擎),所以不建议在开启 GTID 的模式的实例上使用带有-

    93310

    mysql gtid深入_深入理解MySQL启动初始化GTID模块

    一、参数描述 MySQL中不同的版本优化器会有很多新特性,比如MRR、BKA等,其中optimizer_switch这个参数就是控制查询优化器怎样使用这些特性。...image.png 前段时间客户的环境中遇到一个奇怪的问题,select count(*)显示返回是有数据,但select * 返回是空结果集,最终的原因就是因为optimizer_switch设置引起了一个让我们难以察觉的...二、案例分析 2.1 环境描述 数据库版本MySQL5.6.35 2.2 SQL语句 image.png 2.3 分析过程 凌晨4点左右客户打来电话告知数据库查询不到数据,显得非常着急,刻不容缓...,我们第一时间赶到了现场,当时的现象是这样的: image.png 这条语句查询返回的结果集是空,但是开发人员和我们说数据库中是有数据的,我抱着怀疑的态度尝试着执行了一下: image.png

    2.3K61

    MySQL中GTID的几个限制和解决方案

    比如MySQL GTID在5.6试水,5.7已经发展完善,但是还是有一些场景是受限的。比如下面的两个。...GTID中create 语句限制的解法 create table xxx as select的语句,其实会被拆分为两部分,create语句和insert语句,但是如果想一次搞定,MySQL会抛出如下的错误...mysql> create table test_new as select *from test; ERROR 1786 (HY000): Statement violates GTID consistency...我们也巧学巧用,看看MySQL有什么特别的方法来处理。 除了规规矩矩的拼出建表语句之外,还有一个方法是MySQL特有的用法 like。...而在GTID中,已经做了这个检查,归根结底,还是cache里面的机制,大体来说,binlog有两个cache来缓存事务的binlog: binlog_cache_data stmt_cache;

    3.7K60
    领券