MySQL主從同步的配置


mysql主從同步的配置

主要實現單向主從同步模式的實現,原理圖如下

 

主庫(master):192.168.221.128

從庫(slave):192.168.221.129

 

配置步驟:

1)

①、編輯主庫my.cnf文件

[root@master~]# egrep "log-bin|server-id" /etc/my.cnf
server-id = 1 確保和從庫不一樣
log-bin=mysql-bin 需要打開,注意路徑,一般位於data目錄

 進入mysql數據庫查看log-bin是否開啟

mysql> show variables like 'log_bin';

 

②、確保從庫my.cnf里server-id與主庫不同(這里slave的log-bin我沒開啟)

egrep "log-bin|server-id" /etc/my.cnf

 

 2)建立用於從庫復制的賬號rep

mysql> grant replication slave on *.* to 'rep'@'192.168.221.%' identified by '111111';

mysql> flush privileges;

mysql> select user,host from mysql.user;

 

 3)

①、主庫備份數據庫

mysql> flush table with read lock;  加鎖(5.5是table,5.1 是tables注意版本區別)

mysqldump -h 192.168.221.128 -uroot -p111111 -B  ss3000cms --events --master-data=2 >/rep.sql

 ps:這里我只備份了ss3000cms庫,-B表示備份數據結構和內容,--events表示事件(這里還不是很了解),master-data=2表示sql語句change前加注釋--

②、vi /rep.sql

master查看狀態

 

確定POS相同后,取消鎖

mysql> unlock tables;

ps:主庫mysql>  show variables like 'wait_timeout';是控制鎖表時間的,默認是28800(8小時),

修改語句是set global with_timeout = 10(修改為10s);

 

 4)

①、將主庫備份的sql文件scp到從庫對應目錄(/opt),執行灌數據操作

mysql -uroot -p111111 </opt/rep.sql 

②、從庫執行change master語句

CHANGE MASTER TO
MASTER_HOST='192.168.221.128',
MASTER_PORT=3306,
MASTER_USER='rep',
MASTER_PASSWORD='111111',
MASTER_LOG_FILE='mysql-bin.000010',
MASTER_LOG_POS=338;

③、最后從庫打開開關

mysql> start slave;

 

5)查看狀態

查看線程:mysql>show processlist

master端:mysql>show master status

slave端:mysql>show slave status\G

 

 至此配置完畢,生廠場景需要注意my.cnf參數,如忽略一些錯誤

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM