mysql5.6基于GTID的主从复制

mysql5.6gtid模式的主从复制:

1.配置master的my.cnf文件:
    ##################master
    [mysqld]
    basedir = /usr/local/mysql
    datadir = /home/data/mysqldb
    socket = /home/data/mysqldb/mysql.sock
    port = 3306
    server_id = 1
    user=mysql
    
    binlog-format=ROW
    log-bin=master-bin.log-bin
    log-slave-updates=true
    gtid-mode=on
    enforce-gtid-consistency=true
    master-info_repository=TABLE
    relay-log-info-repository=TABLE
    sync-master-info=1
    slave-parallel-worker=2
    slave_allow_batching = 1  
    master-verify-checksum=1  
    slave-sql-verify-checksum=1
    binlog-rows-query-log-events=1
    server-id=1
    port=3306
    report-port=3306
    report-host=192.168.100.3
    lower_case_table_names=1
    #安装完半同步插件后即可在配置文件中打开下面的选项
    #rpl_semi_sync_slave_enabled=1
    #rpl_semi_sync_master_enabled=1
    #rpl_semi_sync_master_timeout=2000

2.配置master的my.cnf文件:
    ##################slave
    [mysqld]
    basedir = /usr/local/mysql
    datadir = /home/data/mysqldb
    socket = /home/data/mysqldb/mysql.sock
    port = 3306
    server_id = 1
    user=mysql
    binlog-format=ROW
    log-bin=master-bin.log-bin
    enforce-gtid-consistency=true
    master-info_repository=TABLE
    relay-log-info-repository=TABLE
    sync-master-info=1
    slave-parallel-worker=2
    slave_allow_batching = 1  
    master-verify-checksum=1  
    slave-sql-verify-checksum=1
    binlog-rows-query-log-events=1
    server-id=2
    report-port=3306
    port=3306
    report-host=192.168.100.5
    #安装完半同步插件后即可在配置文件中打开下面的选项
    #rpl_semi_sync_slave_enabled=1
    #rpl_semi_sync_master_enabled=1
    #rpl_semi_sync_master_timeout=1000
3.备份主数据库(须安装perconna-xtrabackup软件):
    innobackupex  --user=backupuser --password=backupuser --no-timestamp /tmp/bak/fullbk
    将/tmp/bak/fullbk下的备份文件传至从库的/tmp/bak/fullbk目录下,并执行如下语句:
    innobackupex --apply-log /tmp/bak/fullbk
    将/tmp/bak/fullbk目录下的文件拷贝至datadir的目录中即可;

4.安装同步插件并授权:
    在mysql主从数据库中安装半同步插件:
    install plugin rpl_semi_sync_master soname ‘semisync_master.so‘;
    install plugin rpl_semi_sync_slave soname ‘semisync_slave.so‘;

在mysql的主从数据库中授权,并开启半同步:
    GRANT REPLICATION SLAVE ON *.* TO ‘repl‘@‘192.168.100.3‘ IDENTIFIED BY ‘repl‘;
    GRANT REPLICATION SLAVE ON *.* TO ‘repl‘@‘192.168.100.5‘ IDENTIFIED BY ‘repl‘;
    set global rpl_semi_sync_slave_enabled=1;
    set global rpl_semi_sync_master_enabled=1;
    set global rpl_semi_sync_master_timeout=1000;

5.启动同步:
    change master to master host=‘‘,master_user=‘‘,master_password=‘‘,master_auto_position=1;
    start slave;
6.检查:
    在mysql的主数据库中查看从客户端:
    show slave hosts;

在mysql从服务器中检查同步状态:
    mysql>show slave status\G
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
          Exec_Master_Log_Pos: 34810
        Seconds_Behind_Master: 4
             Master_Server_Id: 1
                Auto_Position: 1
7.至此,完成基于GTID的主从配置

时间: 2025-01-15 11:16:13

mysql5.6基于GTID的主从复制的相关文章

MySQL5.6基于GTID的主从复制配置

全局事务标示符(Global Transactions Identifier)是MySQL 5.6复制的一个新特性. GTID实际上是由UUID+TID组成的.其中UUID是一个MySQL实例的唯一标识.TID代表了该实例上已经提交的事务数量,并且随着事务提交单调递增.下面是一个GTID的具体形式. 1.在MySQL5.6以前对于主从复制出现问题有时候需要你分析BINLOG找到POS点,然后在CHANG MASTER TO.对于新手来说很容易犯错,造成主从复制错误.在新版本中,不必在需要寻找BI

mysql5.7 基于gtid的主从复制

基本环境 版本 5.7.14 主库ip:192.168.1.100 port:3306 从库ip:102.168.1.101 port:3306 搭建注意事项 主库配置 gtid-mode=on enforce-gtid-consistency=1 binlog_format==row server-id=3306100 log-bin=/data/mysql/mysql3306/logs/mysql-bin binlog_cache_size=4M skip_slave_start=1 从库配

MySQL主从复制——MySQL-5.6基于GTID及多线程的复制

一.Mysql 5.6 新特性 .... 复制功能的改进 ⒈支持多线程复制,(slave-parallel-workers=0     0: 表示禁用多线程功能:)事实上是针对每个database开启相应的独立线程.即每个库有一个单独的(sql thread),如果线上业务中,只有一个database或者绝大多数压力集中在个别database的话,多线程并发复制特性就没有意义了. ⒉支持启用GTID,对运维人员来说应该是一件令人高兴的事情,在配置主从复制,传统的方式里,你需要找到binlog和P

基于GTID的主从复制数据库

基于GTID的主从复制数据库 全局身份识别 GTID(global transaction identifier) 为了实现主备数据库的强一致性 GTID = source_id:transaction_id source_id 表示执行事务的主库 transaction_id 是一个序列号,表示这个主库上执行的第 n 个事务. server_uuid是系统自动生成的,用来的替代server_id,因为source_id是手工设置的,可能会有冲突 数据库的安装和初始化 server33,44:

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

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

企业——MYSQL(基于GTID)的主从复制

一.什么是主从复制? 主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库:主数据库一般是准实时的业务数据库. 二.主从复制的作用(好处,或者说为什么要做主从) 1.做数据的热备,作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作,避免数据丢失. 2.架构的扩展.业务量越来越大,I/O访问频率过高,单机无法满足,此时做多库的存储,降低磁盘I/O访问的频率,提高单个机器的I/O性能. 3.读写分离,使数据库能支撑更大的并发.在报表中尤其重要.由于部分报表sql语句非常的

Mysql 基于GTID的主从复制及切换

参考 http://imysql.com/tag/gtid http://mysqllover.com/?p=594 Mysql 基于GTID的主从复制及切换 一.主从复制配置 两个mysql服务的my.cnf 中相关内容配置 [mysqld] #从复制数据库表设置 replicate-wild-ignore-table = mysql.%,information_schema.%,innodb.%,innodb_log.%,performance_schema.%,test.%,tmp.% #

基于GTID的主从复制搭建

前置检查 server-id = 10,master/slave不允许重复 log-bin gtid-mode = ON enforce-gtid-consistency = ON 1,利用mysqlpump复制master数据到slave,搭建基于GTID的主从复制,缺少GTID处理方法,暂不成功. mysqlpump --host= --user= --password= --single-transaction --default-parallelism=4 --compress-outp

mysql主从之基于gtid的主从复制

一 GITD介绍 1.1 gtid的含义 Global Transaction Identifier,全局事务标识 阿里云的rds目前已经使用gtid 基于gtid的主从复制原理 每个mysql数据库上都有一个唯一uuid 每个事务生成一个id gtid由上面两者组合: uuid+事务id 1.2 优势 相对使用binlog+位置的方法来说 gtid让配置主从更加方便 从提升为主时比较方便 二 配置 2.1 主库的配置 [mysqld] bind-address=0.0.0.0 port=330