mysql主從複製

實驗環境

master  172.16.31.30

slave   172.16.31.31

1

# vim /etc/my.cnf
log-bin=/binlog/mysql-bin   //二進制日誌文件目錄
innodb_file_per_table=1   //innodb表空間獨立
server-id       = 1    //從服務器不能跟此id重複
binlog-format=ROW       //二進制日誌文件格式
log-slave-updates=ture   //更新數據開啓
master-info-repository=TABLE   //用於實現在崩潰時保證二進制及從服務器安全的功能;
relay-log-info-repository=TABLE //用於實現在崩潰時保證二進制及從服務器安全的功能;
sync-master-info=1     //開啓之可確保無信息丟失
slave-parallel-threads=2  //設定從服務器的SQL線程數;0表示關閉多線程複製功能
binlog-checksum=CRC32     //開啓複製有關的所有校驗功能
master-verify-checksum=1    //開啓複製有關的所有校驗功能
slave-sql-verify-checksum=1   //開啓複製有關的所有校驗功能
binlog-rows-query-log_events=1   //啓用了可用於在二進制日誌記錄事件相關的信息,可降低故障排除的複雜度;
report-host=master.gulong.com
report-port=3306


2 創建二進制日誌目錄別切修改屬組屬組

  

# mkdir /binlog
# chown -R mysql.mysql /binlog

3 配置主機名

master:

             

# hostname master.cc.com
#vim /etc/host
172.16.8.8  master.cc.com
172.16.8.9  slave.cc.com

slave:

 

# hostname slave.cc.com
#vim /etc/hosts
172.16.8.8  master.cc.com
172.16.8.9  slave.cc.com


4 在主mysql上配置具有複製權限的賬號

   
MariaDB [(none)]> grant replication slave,replication client on *.*to "admin"@'172.16.31.31' identified by '123456';
MariaDB [(none)]> flush privileges;




5,配置從mysql

   

server-id       = 3
relay-log=/relay/relay-bin
vim /etc/my.cnf
server-id       = 3
relay-log=/relay/relay-bin           //解釋參考上面
binlog-format=ROW
log-slave-update=ture
master-info-repository=TABLE
relay-log-info-repository=TABLE
sync-master-info=1
slave-parallel-threads=2
binlog-checksum=CRC32
master-verify-checksum=1
slave-sql-verify-checksum=1
binlog-rows-query-log_events=1
report-port=3306
report-host=slave.gulong.com
log-bin=/logbin/master-bin



6 創建中繼日誌,修改屬組屬主

# mkdir /relay
# chown -R mysql.mysql /relay



 7 在從mysql上使用主mysql創建的賬戶

MariaDB [(none)]> change master to master_host='172.16.31.31',master_user='admin',master_password='123456',master_use_gtid=current_pos;


 

wKioL1QcRqayGiMmAAD7zkh398w164.png



然後再主服務器上創建表,從服務器上會立馬複製過來。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章