摘要:何謂讀寫分離無非四個(gè)功能增刪改讀而將增刪改和讀分離操作這樣有利于提高系統(tǒng)性能試著想想進(jìn)搬退改貨又賣貨改成了前門只賣貨其它去后門這樣是不是就很清晰了往往看起來高大上的東西做起來也是挺簡單的下面是寫給小白的都是非常直觀的操作配置兩臺(tái)服務(wù)器同配置
何謂讀寫分離?
Mysql無非四個(gè)功能:增,刪,改,讀.而將增刪改和讀分離操作.這樣有利于提高系統(tǒng)性能.
試著想想,進(jìn)搬退改貨又賣貨改成了前門只賣貨,其它去后門.這樣是不是就很清晰了?
往往看起來高大上的東西,做起來也是挺簡單的.
下面是寫給小白的,都是非常直觀的操作.
1.配置:
兩臺(tái)服務(wù)器同配置的mysql如mysql5.7
PS:如果條件有限,一臺(tái)也可以,只需要安裝兩個(gè)mysql服務(wù)(不同端口如3306,3307),只是這就有點(diǎn)違背效率初衷了
2.代碼:
1.一般直接在代碼層將mysql操作類的讀寫如update,insert與select * from進(jìn)行路由分離.使之對(duì)應(yīng)不同的服務(wù)器.
2.中間件代理,即不改動(dòng)代碼的前提下,由中間件將讀寫請(qǐng)求發(fā)送至主從服務(wù)器.
現(xiàn)在講講主從如何配置:
1.開放端口:大部分主機(jī)都默認(rèn)Mysql端口3306,那么先將兩臺(tái)機(jī)子的安全組或防火墻里把3306端口打開并重啟.
2.端口打開了,現(xiàn)在配置兩個(gè)服務(wù)器(一臺(tái)主機(jī)兩個(gè)Mysql服務(wù)器的同理):
下文以主ip:192.168.0.1,從ip:192.168.0.2,創(chuàng)建同步賬號(hào)spec,密碼spec_password為例:
主服務(wù)器(增刪改):
#1.Mysql配置改以下并重啟服務(wù)(命令行里直接重啟:service mysql restart) [mysqld] server-id=1 log-bin=master-bin log-bin-index=master-bin.index #2.命令行mysql執(zhí)行或phpmyadmin里執(zhí)行: GRANT REPLICATION SLAVE ON *.* TO "spec"@"192.168.0.2" IDENTIFIED BY "spec_password"; flush privileges;
這樣,主服務(wù)器就完工了.
從服務(wù)器配置:
#1.Mysql配置改以下并重啟服務(wù)(命令行里直接重啟:service mysql restart) [mysqld] server-id=2 relay-log-index=slave-bin.index relay-log=slave-bin #2.命令行mysql執(zhí)行或phpmyadmin里執(zhí)行: change master to master_host="192.168.0.1",master_port=3306,master_user="spec",master_password="spec_password",master_log_file="master-bin.000001",master_log_pos=0; start slave
一般來說,配置到此就完成了.
3.測試:
從服務(wù)器中查詢語句:show slave status
如果Slave_IO_State=Waiting for master to send event就成功了.
其余狀態(tài)通常都是以下原因:
1.主從的安全組或防火墻未打開3306端口
2.主從之間ping不通.
3.上面的spec賬密錯(cuò)誤
現(xiàn)在起,在主服務(wù)器隨便增刪改,都會(huì)同步到從服務(wù)器了.
4.建議:
1.切記從服務(wù)器只操作讀,不操作增刪改.保持?jǐn)?shù)據(jù)的同步性,這樣當(dāng)一臺(tái)服務(wù)器故障的時(shí)候,另一臺(tái)就可以頂上去(其實(shí)主服務(wù)器宕機(jī)的時(shí)候肯定會(huì)丟失一部分最新數(shù)據(jù)).
2.從服務(wù)器的帶寬一定>=主服務(wù)器,盡量減少同步延遲.要是小水管,同步自然慢一步嘛.
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/29480.html
摘要:讀寫分離中間件具有獨(dú)立的。變量語句將被廣播考慮到節(jié)點(diǎn)間數(shù)據(jù)一致性問題,只會(huì)分發(fā)到主節(jié)點(diǎn)。節(jié)點(diǎn)健康檢查,提升數(shù)據(jù)庫系統(tǒng)可用性。UCloud MySQL云數(shù)據(jù)庫讀寫分離 背景 數(shù)據(jù)顯示,關(guān)系型數(shù)據(jù)庫在OLTP業(yè)務(wù)下96.87%都在等待讀I/O,而處理器計(jì)算僅僅占了5.3%,這說明要提高數(shù)據(jù)庫的QPS性能,關(guān)鍵的一點(diǎn)是提高系統(tǒng)的IO能力。 另一個(gè)數(shù)據(jù)表明, 大多數(shù)業(yè)務(wù)對(duì)數(shù)據(jù)庫的訪...
摘要:當(dāng)時(shí)是使用阿里云鏡像,安裝了兩臺(tái),結(jié)果配置的時(shí)候出現(xiàn)了重復(fù)問題。以上操作過程,主從服務(wù)器配置完成。監(jiān)控?fù)?jù)說可以編寫一腳本,用監(jiān)控的兩個(gè)及進(jìn)程,如發(fā)現(xiàn)只有一個(gè)或零個(gè),就表明主從有問題了。 聯(lián)系郵箱:hi@jackcool.net 一直都沒有寫blog的習(xí)慣,以前總覺得自己的腦子就是最好的記憶容器,現(xiàn)在覺得我好像有個(gè)假腦子。 當(dāng)時(shí)是使用阿里云鏡像,安裝了兩臺(tái)ECS,結(jié)果配置MySQL的時(shí)候...
閱讀 2576·2021-10-25 09:45
閱讀 1238·2021-10-14 09:43
閱讀 2297·2021-09-22 15:23
閱讀 1519·2021-09-22 14:58
閱讀 1933·2019-08-30 15:54
閱讀 3538·2019-08-30 13:00
閱讀 1354·2019-08-29 18:44
閱讀 1570·2019-08-29 16:59