mysql通過binlog日志復(fù)制主從同步的實(shí)現(xiàn)
主從復(fù)制binlog日志方式
量大的時(shí)候使用GTID效率更高,維護(hù)起來比較麻煩
有了主從同步也要做備份(雙保險(xiǎn),本地有一份,主從同步也有一份 )
1、準(zhǔn)備環(huán)境兩臺機(jī)器,關(guān)閉防火墻和selinux。---兩臺機(jī)器環(huán)境必須一致。時(shí)間也得一致 10.36.107.10 mysql-master 10.36.107.11 mysql-slave 2、兩臺機(jī)器安裝mysql5.7(略)建議使用相同的安裝方式 注意: 對主庫已有的數(shù)據(jù)庫不會進(jìn)行自動同步。 主從同步之前,對主庫上已有數(shù)據(jù)庫備份,并在從庫上導(dǎo)入同步。 1.開始配置主服務(wù) 在主服務(wù)器上添加配置 vim /etc/my.cnf [mysqld] log-bin=/usr/local/mysql/logs/mysql-bin/mylog server-id=1 重啟服務(wù) systemctl restart mysqld 在從服務(wù)器上添加配置 [mysqld] server-id=2 重啟服務(wù) systemctl restart mysqld 在主服務(wù)器上 創(chuàng)建日志目錄并賦予權(quán)限 [root@mysql-master ~]# mkdir /usr/local/mysql/logs/mysql-bin/mylog [root@mysql-master ~]# chown mysql:mysql /usr/local/mysql/logs/mysql-bin/mylog 2.在主服務(wù)器上查看binlog以及POS mysql> show master status \G; 194 3.給主庫授權(quán) 創(chuàng)建主從同步的用戶:(只設(shè)置一個(gè)復(fù)制權(quán)限就可以了 slave ) mysql> grant replication slave on *.* to 'repl'@'%' identified by 'Qf@12345!'; mysql> flush privileges; 查看狀態(tài) 狀態(tài)碼會發(fā)生變化 mysql> show master status \G; 629 3在從服務(wù)器上 從庫重設(shè)#全在從庫執(zhí)行(斷開于主庫之間的通信,脫離主從關(guān)系) mysql> stop slave; mysql> reset slave; mysql> reset master; 查看狀態(tài) 狀態(tài)碼會發(fā)生變化 mysql> show master status \G; (執(zhí)行這條命名發(fā)現(xiàn)登錄不上 就重啟一下 systemctl stop mysqld systemctl start mysqld mysql然后在登錄,因?yàn)橹白鲞^GTID殘留) mysql> change master to master_host='192.168.171.15', master_user='repl', master_password='Qf@12345!', master_log_file='/usr/local/mysql/bin-log/binlog.000002', master_log_pos=2625; find / -name "binlog.000002" 查找binlog的絕對路徑 /usr/local/mysql/bin-log/binlog.000002 啟用從庫身份 mysql> start slave; 查看狀態(tài) mysql> show slave status\G; #查看狀態(tài),驗(yàn)證sql和IO是不是yes。 在主服務(wù)器創(chuàng)建數(shù)據(jù)庫a2 mysql> create database a2; 在從服務(wù)器上進(jìn)行查看a2 mysql> show databases; 在主服務(wù)器刪除數(shù)據(jù)庫a2 mysql> drop databases a2; 在從服務(wù)器上進(jìn)行查看a2也刪除了 mysql> show databases; 開啟只讀模式 查看是否只讀模式:show variables like 'read_only'; 關(guān)閉只讀模式 vim /etc/my.cnf read-only=1 并重啟mysql服務(wù) systemctl restart mysqld
故障切換
mysql主從,master宕機(jī),如何進(jìn)行切換? 主機(jī)故障或者宕機(jī): 1)在salve執(zhí)行: mysql> stop slave; mysql> reset master; 2)查看是否只讀模式:show variables like 'read_only'; 只讀模式需要修改my.cnf文件,注釋read-only=1并重啟mysql服務(wù)。 或者不重啟使用命令關(guān)閉只讀,但下次重啟后失效:set global read_only=off; 3)查看show slave status \G; 4)在程序中將原來主庫IP地址改為現(xiàn)在的從庫IP地址,測試應(yīng)用連接是否正常
查看uuid號碼
[root@localhost ~]# vim /usr/local/mysql/data/auto.cnf [auto] server-uuid=4f37a731-9b79-11e8-8013-000c29f0700f 修改uuid并重啟服務(wù)
重設(shè)從庫
主庫查看binlog,pos mysql> show master status \G; *************************** 1. row *************************** File: mylog.000003 Position: 348 Binlog_Do_DB: Binlog_Ignore_DB: 1 row in set (0.00 sec) 從庫上操作 mysql>stop slave; mysql>reset slave; mysql>reset master; #從庫的binlog已經(jīng)無效了,所以要執(zhí)行這個(gè)命令清空binlog CHANGE MASTER TO MASTER_HOST='10.36.107.10', MASTER_USER='slave', MASTER_PASSWORD='Qf@12345!', MASTER_LOG_FILE='mylog.000003', MASTER_LOG_POS=348; mysql> start slave; mysql> show slave status\G;
到此這篇關(guān)于mysql通過binlog日志復(fù)制主從同步的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)mysql binlog日志復(fù)制主從同步內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SQL中實(shí)現(xiàn)SPLIT函數(shù)幾種方法總結(jié)(必看篇)
下面小編就為大家?guī)硪黄猄QL中實(shí)現(xiàn)SPLIT函數(shù)幾種方法總結(jié)(必看篇)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-09-09解決Can''t locate ExtUtils/MakeMaker.pm in @INC報(bào)錯(cuò)
今天小編就為大家分享一篇關(guān)于解決Can't locate ExtUtils/MakeMaker.pm in @INC報(bào)錯(cuò),小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-01-01關(guān)于Mysql中json數(shù)據(jù)類型的查詢操作指南
mysql在5.7版本之后就開始支持json數(shù)據(jù)類型,并且mysql8.0版本對json的處理已經(jīng)做的非常完善了,json數(shù)據(jù)類型的優(yōu)點(diǎn)缺點(diǎn)可自己查詢,本文主要介紹一些關(guān)于json數(shù)據(jù)類型的查詢操作2023-07-07MySQL——修改root密碼的4種方法(以windows為例)
本文以windows為例為大家詳細(xì)介紹下MySQL修改root密碼的4種方法,大家可以可以根據(jù)的自己的情況自由選擇,希望對大家有所幫助2013-07-07MySQL多線程復(fù)制遇到Error_code: 1872的解決方案
本文給大家分享的是在使用mysql主從復(fù)制的時(shí)候遇到Error_code: 1872錯(cuò)誤的解決方法,非常的簡單,有需要的小伙伴可以參考下2016-09-09MySQL需要關(guān)注的參數(shù)及狀態(tài)變量解讀
這篇文章主要介紹了MySQL需要關(guān)注的參數(shù)及狀態(tài)變量解讀,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02簡單了解標(biāo)準(zhǔn)SQL的update語句三種用法
這篇文章主要介紹了簡單了解標(biāo)準(zhǔn)SQL的update語句三種用法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,,需要的朋友可以參考下2019-06-06