Linux系統(tǒng)下MySQL配置主從分離的步驟
主服務(wù)器 | 192.168.176.110 |
從服務(wù)器 | 192.168.176.120 |
主數(shù)據(jù)庫(kù)操作(ip:192.168.176.110)
配置MySQL主服務(wù)器的配置文件
[root@localhost ~]# vi /etc/my.cnf
在my.cnf內(nèi)加上如下配置
server-id = 1 #保證唯一性 log-bin = mysql-bin #主從服務(wù)的核心 定義binblog日志的前綴名 #binlog-do-db=test #需要同步的數(shù)據(jù)庫(kù),如果沒(méi)有本行,即表示同步所有的數(shù)據(jù)庫(kù) #binlog-do-db=mydb #需要同步的數(shù)據(jù)庫(kù),同時(shí)同步test、mydb庫(kù) 、 #binlog-ignore-db=mysql #被忽略的數(shù)據(jù)庫(kù)
重啟MySQL主服務(wù)器
[root@localhost ~]# service mysqld restart
登錄MySQL
[root@localhost ~]# mysql -uroot -p123456
查看數(shù)據(jù)庫(kù)狀態(tài)
需要記住File列和Position列的數(shù)據(jù),配置從服務(wù)器需要使用
mysql> show master status;
主數(shù)據(jù)庫(kù)操作(ip:192.168.176.120)
配置MySQL從服務(wù)器的配置文件
[root@localhost ~]# vi /etc/my.cnf
在my.cnf內(nèi)加上如下配置
server-id = 2 #保證唯一性
重啟MySQL主服務(wù)器
[root@localhost ~]# service mysqld restart
登錄MySQL
[root@localhost ~]# mysql -uroot -p123456
配置同步主服務(wù)器:
master_host主服務(wù)器地址
master_port主服務(wù)器端口
master_user主服務(wù)器用戶(hù)名
master_password主服務(wù)器密碼
master_log_file 對(duì)應(yīng)上圖的主服務(wù)器File列數(shù)據(jù)
master_log_pos對(duì)應(yīng)上圖的主服務(wù)器Position列數(shù)據(jù)
mysql> change master to master_host='192.168.176.110',master_port=3306,master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=157;
開(kāi)啟服務(wù),并查看服務(wù)狀態(tài)
mysql> start slave; #開(kāi)啟從服務(wù) mysql> show slave status\G; #查看從服務(wù)狀態(tài)
配置成功
配置出錯(cuò)
注意:配置主從同步,出現(xiàn)Slave_IO_Running: No 情況處理方式(復(fù)制同一套環(huán)境出現(xiàn)的問(wèn)題)
如果出現(xiàn)上圖的錯(cuò)誤,說(shuō)明兩臺(tái)虛擬機(jī)的MySQL環(huán)境的UUID一致。 可以通過(guò)命令檢測(cè)他們的UUID。
[root@localhost ~]# cat /var/lib/mysql/auto.cnf
如果命令無(wú)效 則進(jìn)入到MySQL,執(zhí)行以下命令獲取安裝的路徑
mysql> show variables like 'datadir';
然后從服務(wù)器生成一個(gè)新的UUID
mysql> select uuid();
復(fù)制后 通過(guò)命令去修改里面的UUID(路徑為自己mysql安裝路徑)
[root@localhost ~]# vi /var/lib/mysql/auto.cnf
最后重啟下mysql服務(wù)
[root@localhost ~]# service mysqld restart
執(zhí)行完后重新的去執(zhí)行【配置同步主服務(wù)器】的步驟,配置參數(shù)和主服務(wù)器相同的即可
以上是配置主從同步,出現(xiàn)Slave_IO_Running: No 情況處理方式
主服務(wù)器創(chuàng)建數(shù)據(jù)庫(kù)
主庫(kù)宕機(jī)處理方式
1-確保所有的relay log全部更新完畢,在每個(gè)從庫(kù)上執(zhí)行show processlist
2-更新完畢后,登錄所有從庫(kù)查看master.info文件,對(duì)比選擇pos最大的作為新的主庫(kù),
3-然后登錄這個(gè)新的主庫(kù),執(zhí)行stop slave;進(jìn)入主目錄,刪除master.Info和relay-log.info配置my.cnf文件開(kāi)啟log-bin文件
4-創(chuàng)建用于同步的用戶(hù)并授權(quán)slave
5-登錄另外一臺(tái)從庫(kù),執(zhí)行stop slave停止同步
6-執(zhí)行start slave
7-修改新的master數(shù)據(jù),測(cè)試slave是否同步更新
從庫(kù)宕機(jī)
1-查看從庫(kù)上mysql的錯(cuò)誤日志,里面有記錄主從掛掉時(shí)的binlog信息。
2-有了binlog和postion信息后,只需要重新在從庫(kù)上進(jìn)行change master to配置即可。配置后開(kāi)啟slave狀態(tài),沒(méi)有報(bào)錯(cuò)
3-查看slave狀態(tài),發(fā)現(xiàn)slave已經(jīng)正常了,開(kāi)始進(jìn)行延時(shí)數(shù)據(jù)恢復(fù)。
總結(jié)
到此這篇關(guān)于Linux系統(tǒng)下MySQL配置主從分離的文章就介紹到這了,更多相關(guān)MySQL配置主從分離內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Mysql5.7解壓版的安裝和卸載及常見(jiàn)問(wèn)題小結(jié)
這篇文章主要介紹了Mysql5.7解壓版的安裝和卸載及常見(jiàn)問(wèn)題小結(jié),需要的朋友可以參考下2017-11-11Mysql如何設(shè)置表主鍵id從1開(kāi)始遞增
這篇文章主要介紹了Mysql如何設(shè)置表主鍵id從1開(kāi)始遞增問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07MySQL中show命令方法得到表列及整個(gè)庫(kù)的詳細(xì)信息(精品珍藏)
MySQL中show 句法得到表列及整個(gè)庫(kù)的詳細(xì)信息,方便查看數(shù)據(jù)庫(kù)的詳細(xì)信息。2010-11-11比較詳細(xì)的MySQL字段類(lèi)型說(shuō)明
MySQL支持大量的列類(lèi)型,它可以被分為3類(lèi):數(shù)字類(lèi)型、日期和時(shí)間類(lèi)型以及字符串(字符)類(lèi)型。本節(jié)首先給出可用類(lèi)型的一個(gè)概述,并且總結(jié)每個(gè)列類(lèi)型的存儲(chǔ)需求,然后提供每個(gè)類(lèi)中的類(lèi)型性質(zhì)的更詳細(xì)的描述。概述有意簡(jiǎn)化,更詳細(xì)的說(shuō)明應(yīng)該考慮到有關(guān)特定列類(lèi)型的附加信息,例如你能為其指定值的允許格式。2008-08-08MySQ登錄提示ERROR 1045 (28000)錯(cuò)誤的解決方法
這篇文章主要為大家詳細(xì)介紹了MySQ登錄提示ERROR 1045 (28000)錯(cuò)誤的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07php下巧用select語(yǔ)句實(shí)現(xiàn)mysql分頁(yè)查詢(xún)
mysql分頁(yè)查詢(xún)是我們經(jīng)常見(jiàn)到的問(wèn)題,那么應(yīng)該如何實(shí)現(xiàn)呢?下面就教您一個(gè)實(shí)現(xiàn)mysql分頁(yè)查詢(xún)的好方法,供您參考學(xué)習(xí)。2010-12-12