配置基于GTIDs的replication

什么是GTIDs ?

global transaction identifiers  mysql 5.6.5新加的一项技术

GTIDs是完全基于事务的,因此不支持MYISAM存储引擎(兼容性不好)

添加新的slave或者当发生故障转移需要将master身份迁移到slave时,无需考虑是那一个二进制日志以及那一个position

GTID 由source_UUID transaction_id两部分组成

source_id 来源于server_id,可以再aoto.cnf中看到

transaction_id 是一个序列数字,从小到大自动生成  123

server_uuid

[auto]

server-uuid=9d0f0069-9d66-11e4-8a94-000c292cfb85

使用GTIDs的一些限制条件

1,不支持MYISAM。导致多个GTID分配给同一个事务

2,create table 。。。。select语句不支持

3,create/DROP temporary table 语句不支持

4,必须使用enforce-gtid-consistency参数 强制GTID一致

5,sql-slave-skip-counter不支持     配置replication时候,可以使用此参数跳过一些错误。在GDIT模式不支持

6,在mysql5.6.9之后的版本导入使用mysqldump制作的备份时,需要保证二进制日志不包含GTIDs

7,mysql5.6.7之前,使用mysql_upgrade命令会出现问题

配置GTID的replication需要binlog的format=row

step1:

将master和slave服务器设置为read_only

set global read_only=ON;

step2:停止master和slave服务器的mysql

service mysqld stop

step3:开启GTIDs

开启GTID需要在两台机器上都配置

gtid-mode=on

log-bin

log-slave-updates

enforce-gtid-consistency

另外,slave在这个环节还需要增加skip-slave-start参数 ,( 先不启动slave,还需要其他配置)

serveice mysqld  start;

step4:

change master to

master_host=‘192.168.20.238‘,

master_user=‘repl‘,

master_password=‘123456‘,

master_auto_position=1;

start slave;

show slave status\G;

显示Auto_Position: 1 说明已经运行在GTIDs的模式下了 。

接下来更新master

show slave status\G;

Retrieved_Gtid_Set: 61816754-9d68-11e4-8a9f-000c29c1d1ea:1-8

Executed_Gtid_Set: 61816754-9d68-11e4-8a9f-000c29c1d1ea:1-8

相同表示和master数据完全一致

如果需要切换 ,只需将slave指向新的master、

(change master to .....................................)

时间: 2024-11-03 11:01:44

配置基于GTIDs的replication的相关文章

5.7 并行复制配置 基于GTID 搭建中从 基于GTID的备份与恢复,同步中断处理

5.7 并行复制配置 基于GTID 搭建中从 基于GTID的备份与恢复,同步中断处理 这个文章包含三个部分 1:gtid的多线程复制2:同步中断处理3:GTID的备份与恢复 下面文字相关的东西 大部分都比较重要,可以看一下master: 192.168.17.21slave: 192.168.17.22salve: 192.168.17.23 分别在这三个机器上面安装 编译安装mysql 5.7 不会安装的话 这有安装脚本 https://www.cnblogs.com/noel/p/10314

mysql主从配置&&基于keepalived的主备切换

mysql互为主从设置 && 主备切换配置 需求说明: 1.公司架构一直是一台单独的mysql在线上跑,虽然一直没有出现什么宕机事件,但是出于一个高可用的考虑,提出主从备份.主备切换的需求: 2.实现这个需求的前一段时间只是在做数据库备份的时候实现了主从热备,为了实现主备切换功能,继续操作上述需求: 实验环境: master1:10.1.156.3:3306 master2:10.1.156.5:3306 my.cnf配置文件关于主从这块的修改: master1: server-id =

利用Openfiler配置基于文件系统的网络存储

一.Openfiler简介 Openfiler是一个操作系统,其提供基于文件的网络附加存储和基于块的存储区域网络功能. Openfiler支持的网络协议包括:NFS,SMB/CIFS,HTTP/WebDAV,FTP和iSCSI. Openfiler支持的网络目录包括:NIS,LDAP(支持SMB/CIFS密码加密),Active Directory(本地和混合模式),基于Windows NT的域控制器和Hesiod.认证协议包括Kerberos 5. Openfiler支持基于卷的分区技术:如本

SharePoint 2013 配置基于表单的身份认证

前 言 这里简单介绍一下为SharePoint 2013 配置基于表单的身份认证,简单的说,就是用Net提供的工具创建数据库,然后配置SharePoint 管理中心.STS服务.Web应用程序的三处web.config即可.下面,让我们以图文的方式了解创建的具体过程吧. 使用微软提供的工具,创建数据库,找到Framework64下的aspnet_regsql,如下图: 这里我发现C:\Windows\Microsoft.NET\Framework64的v2.0.50727路径下和v4.0.303

配置基于httpd的yum本地库的注意事项

首先,这里有篇博文,讲的非常透彻,不再赘述 http://www.idimmu.net/2009/10/20/creating-a-local-and-http-redhat-yum-repository/ 在准备好本地的rpm的repo之后,通过httpd提供服务时,通常会遇到403的异常错误.通过调研发现,这基本上是由于SELinux服务所致,解决的办法就是不启动该项服务,即:setenforce 0 另外,如果要确保SELinux开机不启动,可修改/etc/sysconfig/selinu

Linux FTP服务器的搭建与配置+基于关系型数据库实现用户认证

一.服务器端的安装: yum install vsftpd 1)查看安装后生成的哪些文件 [[email protected] ~]# rpm -ql vsftpd /etc/logrotate.d/vsftpd  <==========主志日志文件 /etc/pam.d/vsftpd<==================认证文件 /etc/rc.d/init.d/vsftpd<=============服务脚本 /etc/vsftpd<======================

在 Linux 客户端配置基于 Kerberos 身份验证的 NFS 服务器

在这篇文章中我们会介绍配置基于 Kerberos 身份验证的 NFS 共享的整个流程.假设你已经配置好了一个 NFS 服务器和一个客户端.如果还没有,可以参考 安装和配置 NFS 服务器[2] - 它列出了需要安装的依赖软件包并解释了在进行下一步之前如何在服务器上进行初始化配置. 另外,你可能还需要配置 SELinux[3] 和 firewalld[4] 以允许通过 NFS 进行文件共享. 下面的例子假设你的 NFS 共享目录在 box2 的 /nfs: # semanage fcontext

Nginx(6)-配置基于域名的虚拟主机

配置基于域名解析的虚拟主机 1.准备站点 我们站点统一放到/www/vhosts/下,每个站点根目录名称都和域名相同,具体如下. 新建www.stu31.com的站点根目录 [[email protected] extra]# mkdir /www/vhosts/www.stu31.com 新建www网站的首页index.html [[email protected] extra]# echo "Welconf to www.stu31.com" > /www/vhosts/ww

两种交换机配置模式,以配置基于端口划分的VLAN为例

关于交换机的配置模式,大体上可以分为两类:其一以CISCO交换机为代表的配置模式,其二以Huawei.H3C交换机为代表的配置模式.其实这两种配置模式并没有本质的不同,只是配置的命令名称和配置方式存在差别.如果把握了交换机的配置的基本原理,就不难掌握,且举一反三可以推及其他品牌的交换机的配置.总结来说,如果以在交换机上配置VLAN为例,可以参考以下基本原理或步骤: 交换机最初通过交换机上管理口进行连接.管理口有各种形式,在交换机上是COM口(另一端也是COM口),在交换机上是RJ45接口(另一端