MariaDB基于GTID的复制

1、配置主从节点的服务配置文件

1.1、配置master节点:

#binlog_format=mixed

binlog-format=ROW

# required unique id between 1 and 2^32 - 1

# defaults to 1 if master-host is not set

# but will not function as a master if omitted

server-id       = 1

log-slave-updates=true

master-info-repository=TABLE

relay-log-info-repository=TABLE

sync-master-info=1

slave-parallel-threads=2

binlog-checksum=CRC32

master-verify-checksum=1

slave-sql-verify-checksum=1

binlog-rows-query-log_events=1

report-port=3306

report-host=www.pancou.com

1.2、配置slave节点:

[mysqld]

#binlog_format=mixed

binlog-format=ROW

# required unique id between 1 and 2^32 - 1

# defaults to 1 if master-host is not set

# but will not function as a master if omitted

server-id       = 2

log-slave-updates=true

master-info-repository=TABLE

relay-log-info-repository=TABLE

sync-master-info=1

slave-parallel-threads=2

binlog-checksum=CRC32

master-verify-checksum=1

slave-sql-verify-checksum=1

binlog-rows-query-log_events=1

report-port=3306

report-host=www.pancou.com

MariaDB [(none)]> change master to master_host=‘192.168.110.128‘,master_port=3306,master_user=‘repl_user‘,master_password=‘pancou‘,master_use_gtid=current_pos;

Query OK, 0 rows affected (0.06 sec)

MariaDB [(none)]> start slave;

Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> change master to master_host=‘192.168.110.130‘,master_port=3306,master_host=‘repl_user‘,master_password=‘pancou‘,master_use_gtid=current_pos;

Query OK, 0 rows affected (0.03 sec)

MariaDB [(none)]> start slave;

Query OK, 0 rows affected (0.02 sec)

MariaDB [(none)]> show slave status\G

*************************** 1. row ***************************

Slave_IO_State: Connecting to master

Master_Host: repl_user

Master_User: repl_user

Master_Port: 3306

Connect_Retry: 60

Master_Log_File:

Read_Master_Log_Pos: 4

Relay_Log_File: www-relay-bin.000001

Relay_Log_Pos: 4

Relay_Master_Log_File:

Slave_IO_Running: Connecting

Slave_SQL_Running: Yes

Replicate_Do_DB:

Replicate_Ignore_DB:

Replicate_Do_Table:

Replicate_Ignore_Table:

Replicate_Wild_Do_Table:

Replicate_Wild_Ignore_Table:

Last_Errno: 0

Last_Error:

Skip_Counter: 0

Exec_Master_Log_Pos: 4

Relay_Log_Space: 248

Until_Condition: None

Until_Log_File:

Until_Log_Pos: 0

Master_SSL_Allowed: No

Master_SSL_CA_File:

Master_SSL_CA_Path:

Master_SSL_Cert:

Master_SSL_Cipher:

Master_SSL_Key:

Seconds_Behind_Master: NULL

Master_SSL_Verify_Server_Cert: No

Last_IO_Errno: 0

Last_IO_Error:

Last_SQL_Errno: 0

Last_SQL_Error:

Replicate_Ignore_Server_Ids:

Master_Server_Id: 2

Master_SSL_Crl:

Master_SSL_Crlpath:

Using_Gtid: Current_Pos

Gtid_IO_Pos: 0-2-645

1 row in set (0.00 sec)

MariaDB [(none)]> show variables like ‘slave_parallel%‘;

+---------------------------+--------+

| Variable_name             | Value  |

+---------------------------+--------+

| slave_parallel_max_queued | 131072 |

| slave_parallel_threads    | 2      |

+---------------------------+--------+

2 rows in set (0.01 sec)

时间: 2024-11-10 07:39:51

MariaDB基于GTID的复制的相关文章

MYSQL 基于GTID的复制

1.概述 从MYSQL5.6 开始,mysql开始支持GTID复制. 基于日志点复制的缺点: 从那个二进制日志的偏移量进行增量同步,如果指定错误会造成遗漏或者重复,导致数据不一致. 基于GTID复制: 1.从服务器会告诉主服务器已执行的事务的GTID值. 2.主库会告诉从哪些GTID事务没有被执行. 同一个事务在指定的从库执行一次. 什么是GTID GTID即全局事务ID,器保证为每一个在主上提交的事务在复制集群中可以生成一个唯一的ID. GTID=source_id:transaction_i

MySQL学习笔记07基于GTID的复制

1.1.1. 相关概念 (1)GTID GTID是Global Transaction Identifier的缩写.GTID是一个跟提交的事务有关的标识符,由提交事务所在的原始MySQL的UUID和事务的编号组成:因此,每个GTID在每个参与的MySQL中都是唯一的,而且由GTID可以取得该事务所在的原始MySQL以及事务在原始MySQL上的编号. GTID格式如下: GTID = MySQL原始UUD:事务编号 GTID的例子如下: GTID=a2392929-6dfb-11e7-b294-0

MySQL5.6基于GTID同步复制,与如何实现MySQL负载均衡、读写分离。

MySQL想必大家都不陌生,之前文章也有介绍同步复制与半同步复制,今天先来了解下什么是GTID. GTID(global transaction ID)全局事务ID,是由服务器的UUID+一段随机数事务ID. 特性:从服务器从主服务器复制过来的事务,GTID不变,也就是说一个事务在全局复制架构中的ID不变. 有什么用: 在MySQL集群中,当Master故障时,需要从Slave中挑选一个提升为Master可以基于GTID对比其他Slave来保证数据的一致性. MySQL主从同步如何配置数据过滤

MySQL 设置基于GTID的复制

GTID的概念 GTID(全名 global transaction identifier)是事务的唯一标识符.格式如下:GTID = source_id:transaction_idsource_id:标识了源服务器,通常是服务器的server_uuidtransaction_id:按照服务器上提交的事务顺序进行排序的序列号.例如: 60f9111a-cdba-11e7-b354-005056a30507:1 在配置文件中添加以下信息来启用GTID模式 [mysqld]gtid_mode=ON

mysql5.6传统复制改为基于GTID多线程复制

1.必须主备库两个的数据是一致的,也就是说当前从库没有数据延迟的情况.并且主库不能再有数据更新的情况.备库停止slave线程:stop slave; 主库:show master status; 备库:show slave status; 观察备库的Relay_Master_Log_File和主库的File一样,备库的Exec_Master_Log_Pos和主库的Position一样即可. 2.记下主库此时的file和position信息 3.修改主备库的my.cnf配置,增加参数配置如下: g

mysql基于GTID的复制方式

Mysql的复制方法一共有四种:基于sql语句.基于行.混合部署.基于GTIDS GTIDS的使用环境一般在一主多从下使用 GTIDS的环境: 角色 IP Master 192.168.200.101 Slave 192.168.200.102 实验步骤: 如果不是新安装的mysql,那么我们需要将主节点上的数据导入从节点,达到数据同步. 修改MySQL的配置文件 [[email protected] ~]# vim /etc/my.cnf [mysqld] gtid_mode=on enfor

CentOS6.8下MySQL5.6.40基于GTID主从及多线程复制

大纲 一 GTID简介 二 环境准备 三 数据库的安装 四 基于GTID主从配置步骤 五 验证GTID复制功能 一 GTID简介 GTID(Global Transaction ID)是对于一个已提交事务的编号,并且是一个全局唯一的编号.GTID实际上是由UUID+TID组成的.其中UUID是一个MySQL实例的唯一标识.TID代表了该实例上已经提交的事务数量,并且随着事务提交单调递增.下面是一个GTID的具体形式3E11FA47-71CA-11E1-9E33-C80AA9429562:23更详

深入MySQL复制(二):基于GTID复制

相比传统的MySQL复制,gtid复制无论是配置还是维护都要轻松的多.本文对gtid复制稍作介绍. MySQL基于GTID复制官方手册:https://dev.mysql.com/doc/refman/5.7/en/replication-gtids.html 1.gtid基本概念 传统的基于binlog position复制的方式有个严重的缺点:如果slave连接master时指定的binlog文件错误或者position错误,会造成遗漏或者重复,很多时候前后数据是有依赖性的,这样就会出错而导

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