mysql通過binlog日志復(fù)制主從同步的實(shí)現(xiàn)
主從復(fù)制binlog日志方式
量大的時(shí)候使用GTID效率更高,維護(hù)起來比較麻煩
有了主從同步也要做備份(雙保險(xiǎn),本地有一份,主從同步也有一份 )
1、準(zhǔn)備環(huán)境兩臺(tái)機(jī)器,關(guān)閉防火墻和selinux。---兩臺(tái)機(jī)器環(huán)境必須一致。時(shí)間也得一致 10.36.107.10 mysql-master 10.36.107.11 mysql-slave 2、兩臺(tái)機(jī)器安裝mysql5.7(略)建議使用相同的安裝方式 注意: 對(duì)主庫已有的數(shù)據(jù)庫不會(huì)進(jìn)行自動(dòng)同步。 主從同步之前,對(duì)主庫上已有數(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)碼會(huì)發(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)碼會(huì)發(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的絕對(duì)路徑 /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地址,測(cè)試應(yīng)用連接是否正常
查看uuid號(hào)碼
[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)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
linux下mysql自動(dòng)備份數(shù)據(jù)庫與自動(dòng)刪除臨時(shí)文件
mysql自動(dòng)備份數(shù)據(jù)庫與自動(dòng)刪除臨時(shí)文件,有需要的朋友可以參考下2013-02-02帶你學(xué)習(xí)MySQL執(zhí)行計(jì)劃
前面文章,我們學(xué)習(xí)了 MySQL 慢日志相關(guān)內(nèi)容,當(dāng)我們篩選得到具體的慢 SQL 后,就要想辦法去優(yōu)化啦。優(yōu)化 SQL 的第一步應(yīng)該是讀懂 SQL 的執(zhí)行計(jì)劃。本篇文章,我們一起來學(xué)習(xí)下 MySQL explain 執(zhí)行計(jì)劃相關(guān)知識(shí)。2021-05-05mysql事務(wù)的基本要素與事務(wù)隔離級(jí)別詳解
這篇文章主要介紹了mysql事務(wù)的基本要素與事務(wù)隔離級(jí)別詳解,事務(wù)是一種機(jī)制、一個(gè)操作序列,包含了一組數(shù)據(jù)庫操作命令,并且把所有的命令作為一個(gè)整體一起向系統(tǒng)提交或撤銷操作請(qǐng)求,需要的朋友可以參考下2023-08-08mysql創(chuàng)建表添加字段注釋的實(shí)現(xiàn)方法
這篇文章主要介紹了mysql創(chuàng)建表添加字段注釋的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03關(guān)于mysql中innodb的count優(yōu)化問題分享
關(guān)于mysql中innodb的count優(yōu)化問題,有需要的朋友可以參考下2013-02-02windows下修改Mysql5.7.11初始密碼的圖文教程
這篇文章主要介紹了windows下修改Mysql5.7.11初始密碼的圖文教程,本文給大家介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-11-11MySQL中join語句的基本使用教程及其字段對(duì)性能的影響
這篇文章主要介紹了MySQL中join語句的基本使用及其字段對(duì)性能的影響,舉了實(shí)例來觀測(cè)join所作用的不同字段字符集編碼所造成的性能差異,需要的朋友可以參考下2015-12-12