mysql主从数据库配置基于GTID

在配置主从复制,传统的方式里,你需要找到binlog和POS点,然后change master to指向.在mysql5.6里,无须再知道binlog和POS点,只需要知道master的IP/端口/账号密码即可,因为同步复制是自动的,mysql通过内部机制GTID自动找点同步。

注意:mysql5.6.14版本以下不要使用GTID。

主数据库配置:

修改linux系统的/etc/my.conf文件[优化后的详细配置看文件夹/master/my.conf]

解析一下配置中一些重要的参数:

gtid-mode=on  

enforce-gtid-consistency=true  

log-slave-updates=true

这3个作为数据库启动GTID配置所用,不能漏缺

指定要记录二进制日志的数据库

binlog-do-db=x_test

replicate-do-db=x_test

指定要忽略记录二进制日志的数据库

binlog-ignore-db=mysql,information_schema,performance_schema,test

replicate-ignore-db=mysql,information_schema,performance_schema,test

主数据库操作配置:

配置后重启服务器

/etc/init.d/mysqld reset

进入mysql数据库 

mysql -uroot -p123456

先创建授权主从同步用户

grant replication slave on *.* to 'zhang'@'%' identified by '123456';

flush privileges;

查看我们当前的同步数据信息

show master status;


查看GTID模式是否已经打开(注意enforce_gtid_consistency和gtid_mode均为ON)

show global variables like '%GTID%'


从数据库配置:

修改linux系统的/etc/my.conf文件[优化后的详细配置看文件夹/slave/my.conf]

解析一下配置中一些重要的参数:

其他的大概跟主数据库类似,有几个地方不一致

server_id =1001 必须跟主数据库不一致,而且多个从数据库都不一致

log-bin=mysql33071-bin 也必须跟主数据库不一致,而且多个从数据库都不一致

 

从数据库操作配置:

配置后重启服务器

/etc/init.d/mysqld reset

进入mysql数据库 

mysql -uroot -p123456

防止之前曾经与主数据库同步过

reset master;

关闭当前的同步线程

stop slave;

与主数据库进行同步连接

change master to  

-> master_host='192.168.23.73',  

-> master_user='zhang',  

-> master_password='123456',  

-> master_port=3306,  

-> master_auto_position = 1,  

-> master_delay=30; 

#/* 下面是一部分注解:  

#/* 指定主DB server的IP地址  

master_host='192.168.23.73'  

#/* 指定用于同步的用户[这个就是我们在主DB server授权的用户]  

master_user='zhang'  

#/* 指定用于同步的用户的密码  

master_password='123456'  

#/* 指定主DB server的端口[下面一个例子,可以重点看这个]  

master_port=3306  

#/* 自动寻找position号  

master_auto_position = 1  

#/* 延时30秒执行复制,relay日志会及时同步到slave机,只是日志的中的事件会根据事件的时间戳延时30秒执行.此参数具有实用性  

master_delay=30

然后进行主数据库连接

start slave;

再进行查看主从数据库情况

SHOW slave STATUS \G


其中两个参数如果是yes就表示主从同步正常

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

再看Read_Master_Log_Pos的数值是否与主数据库的Position一致。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值