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 --defaults-file=/etc/my.cnf --user=backupuser --password=backupuser --socket=/home/data/mysqldb/mysql.sock --parallel=3 --no-timestamp /home/backup/mysqlbak/20150603F
將/tmp/bak/fullbk下的備份文件傳至從庫的/tmp/bak/fullbk目錄下,並執行如下語句:
innobackupex --apply-log /tmp/bak/fullbk
#注意:此處是將數據文件拷貝至配置文件中的datadir目錄下:
innobackupex --copy-back /tmp/bak/fullbk
4.安裝同步插件並授權:
獲取跳過的gtid值:
awk '{print $3;}' xtrabackup_binlog_info
在mysql主從數據庫中安裝半同步插件:
install plugin rpl_semi_sync_master soname 'semisync_master.so';
install plugin rpl_semi_sync_slave soname 'semisync_slave.so';
設置跳過GTID值:
SET @@GLOBAL.GTID_PURGED='XXXX';
在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;
show master logs;
show master status \G;
show processlist\G;
在mysql從服務器中檢查同步狀態:
mysql>show processlist\G;
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的主從配置
mysql5.6基於GTID的主從複製
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
MySQL数据库集群-PXC方案
wy53780
2020-04-23 13:55:07
sql語法、關係建模
死瘦宅
2019-02-24 22:35:22
MySQL 事務、函數、觸發器、數據庫備份、權限管理
死瘦宅
2019-02-24 22:35:12
《從0到1學習Flink》—— Flink 讀取 Kafka 數據批量寫入到 MySQL
zhisheng
2019-02-24 21:04:11
SpringBoot 填坑 (一) | CentOS7.4 環境下,表時間字段默認值設置失效
一個優秀的廢人
2019-02-24 15:33:55
mysql-存儲過程
雙子城
2019-02-24 13:43:57
jmeter學習指南之操作 mysql 數據庫
小強測試
2019-02-24 13:34:06
20190222全天的實驗
清歡難尋
2019-02-24 13:17:21
數據庫監控:zabbix(fpmmm)
AMGYM
2019-02-24 13:05:14
數據庫監控:nagios(check_mysql_health)
AMGYM
2019-02-24 13:05:14
如何釋放已刪除的InnoDB磁盤空間
lvrenX
2019-02-24 13:04:33
MYSQL中視圖的使用
雙子城
2019-02-24 08:44:17
MySQL從刪庫到跑路
司木
2019-02-24 00:24:07
mysql mariadb主從複製
linux管家
2019-02-24 13:06:23
6:多源複製的實現
shixiazhoujun
2019-02-24 13:04:18