MySQL5.6默认使用innodb为存储引擎,在复制功能上MySQL5.6引入了GTID(Global Transaction IDs)新特性,这使得5.6复制功能的配置、监控及管理变得更加易于实现,且更加健壮。
一、实现环境
centos
master:172.16.20.245
slave:172.16.20.219
两数据库均是新安装
二、master安装配置
1master修改配置文件
#vim /etc/my.cnf
[mysqld]
binlog-format=ROW #二进制日志格式
log-bin=master-bin #启动二进制日志
log-slave-updates=true #从服务器将从主服务器收到的更新操作记录进本机的二进制日志中
gtid-mode=on #开启gtid功能
enforce-gtid-consistency=true
master-info-repository=TABLE #可用于实现在崩溃时保证二进制及从服务器安全的功能
relay-log-info-repository=TABLE #同上
sync-master-info=1 #启用之可确保无信息丢失
slave-parallel-workers=2 #设定从服务器的SQL线程数;0表示关闭多线程复制功能
binlog-checksum=CRC32 #对二进制日志进行校验
master-verify-checksum=1 #启用校验
slave-sql-verify-checksum=1 #启用校验
binlog-rows-query-log_events=1
server-id=1
report-port=3306
port=3306
report-host=172.16.20.245
#service mysqld restart
2创建复制用户
mysql>grant replication slave on *.* to 'user'@'172.16.20.%' identified by 'password';
mysql>flush privileges;
三、slave安装配置
1slave修改配置文件
#vim /etc/my.cnf
[mysqld]
binlog-format=ROW #二进制日志格式
log-bin=slave-bin #启动二进制日志
log-slave-updates=true #从服务器将从主服务器收到的更新操作记录进本机的二进制日志中
gtid-mode=on #开启gtid功能
enforce-gtid-consistency=true
master-info-repository=TABLE #可用于实现在崩溃时保证二进制及从服务器安全的功能
relay-log-info-repository=TABLE #同上
sync-master-info=1 #启用之可确保无信息丢失
slave-parallel-workers=2 #设定从服务器的SQL线程数;0表示关闭多线程复制功能
binlog-checksum=CRC32 #对二进制日志进行校验
master-verify-checksum=1 #启用校验
slave-sql-verify-checksum=1 #启用校验
binlog-rows-query-log_events=1
server-id=10
report-port=3306
port=3306
report-host=172.16.20.219
2启动复制
mysql> CHANGE MASTER TO
MASTER_HOST='172.16.20.245',
MASTER_USER='user',
MASTER_PASSWORD='password',
MASTER_AUTO_POSITION=1;
mysql>start slave