全局会话标识(GTIDs)复制需在完成主从复制基础上进行
限制
- 只支持MySQL 5.7及以上Innodb引擎
- 不支持以下SQL:
- CREATE TABLE … SELECT
- CREATE TEMPORARY TABLE
- DROP TEMPORARY TABLE
配置
让主数据库只读
mysql> SET @@global.read_only = ON;
查询主机状态
show master status;
查询从机状态,保证两者的File和Positon相同
show slave status;
让从数据库只读
mysql> SET @@global.read_only = ON;
关闭主服务器
mysqladmin -uusername -p shutdown
关闭从服务器
mysqladmin -uusername -p shutdown
启动主服务器
Mysqld --user=root --gtid-mode=ON --enforce-gtid-consistency &
如果是MySQL 5.7.4及以前的5.7版本改用以下命令
mysqld --user=root --gtid-mode=ON --log-bin --enforce-gtid-consistency &
启动从服务器,–skip-slave-start表示不启动复制
mysqld --user=root --skip-slave-start --gtid-mode=ON --enforce-gtid-consistency &
从服务器设置复制模式、
CHANGE MASTER TO
MASTER_HOST = '192.168.234.111',
MASTER_PORT = 3306,
MASTER_USER = 'repl',
MASTER_PASSWORD = 'repl',
MASTER_AUTO_POSITION = 1;
从服务器启动复制
START SLAVE;
设置主服务器可写
SET @@global.read_only = OFF;