CentOS7中MySQL主從配置的一些收穫

環境:
CentOS 7
MySQL 5.7.21
主master:172.16.69.131
從slave:172.16.69.132
1、首先把MySQL官網上下載的mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar上傳到服務器CentOS7。
scp
2、安裝MySQL,配置防火牆。這裏不做講述,不會的或者忘記了可以參考《CentOS 7安裝MySQL 5.7》
3、配置主數據庫master
vi /etc/my.cnf
添加

log-bin=mysql-bin
server-id=1

然後開啓MySQL服務

systemctl start mysqld

此處跳過如何查看root用戶初始密碼、爲root用戶設置新密碼和添加遠程登錄用戶等步驟,都可以在上面的博文找到相應的操作。

進入主數據庫(172.16.69.131),爲從數據庫(172.16.69.132)同步主數據庫添加一個用戶權限

GRANT REPLICATION SLAVE ON *.* TO 'slave'@'172.16.69.132' IDENTIFIED BY 'MySQLadmin1!';  #分配複製權限
FLUSH PRIVILEGES;
show master status \G;

status
此信息留作備用(從數據庫需要)
然後配置從數據庫
1、vi /etc/my.cnf
添加

log-bin=mysql-bin
server-id=2   #不能跟其他數據庫重複,這裏僅不能跟主數據庫重複

開啓從數據庫,同理此處跳過如何查看root用戶初始密碼、爲root用戶設置新密碼和添加遠程登錄用戶等步驟,直接來到跟主從配置相關的操作。

stop slave; #若是數據庫已經開啓過主從同步,則需要停止,新安裝的數據庫不需要此步驟
change master to master_host='172.16.69.131',master_user='slave',master_password='MySQLadmin1!',master_log_file='mysql-bin.000001', master_log_pos=846;

將從數據庫指向主數據庫,用戶賬號爲主數據分配權限的用戶slave,master_log_file, master_log_pos的信息就是之前留作備用的主數據庫信息,這部分數據會變,每次同步的時候都需要在主數據庫上查看。

start slave; #配置完成,開啓同步
show slave status \G;   #查看同步狀態

slave status

兩個yes則表示同步已經開啓。
ok
這時,在主數據庫創建一個master_slave數據庫,則從數據庫會自動同步過來。



第二種是指定同步的數據庫
主數據庫
master
binlog-ignore-db #忽略同步日誌的數據庫
binlog-do-db #需要同步日誌的數據庫

同理,給與從數據庫同步複製的權限

GRANT FILE ON *.* TO 'slave'@'172.16.69.132' IDENTIFIED BY 'MySQLadmin1!';
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'172.16.69.132' IDENTIFIED BY 'MySQLadmin1!';
FLUSH PRIVILEGES;

從數據庫
slave_conf
replicate-do-db #需要複製的數據庫
replicate-ignore-db #不需要複製的數據庫
log-slave-updates #從數據庫會同步更新主數據庫日誌
slave-skip-errors #跳過出現的錯誤
slave-net-timeout #從數據庫同步超時時間

stop slave;
change master to master_host='172.16.69.131',master_user='slave',master_password='MySQLadmin1!',master_log_file='mysql-bin.000002', master_log_pos=1478;
start slave;

這一步驟跟第一種方法一樣
tongbu
此時在主數據庫創建master_slave,從數據庫就能看到同步了
master_create


參考資料:
CentOS 7安裝MySQL 5.7
MySQL5.6 數據庫主從(Master/Slave)同步安裝與配置詳解
MySQL主從複製與主主複製


寫在最後:
農曆新年就要到了,預祝大家新年快樂!

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