資源描述:
《mysql主從復(fù)制讀寫(xiě)分離配置教程》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。
1、MySQL主從復(fù)制+讀寫(xiě)分離配置教程實(shí)驗(yàn)環(huán)境:CENTOS6.3實(shí)驗(yàn)準(zhǔn)備:三臺(tái)計(jì)算機(jī)安裝centos6.3系統(tǒng),內(nèi)存要求625MB以上;計(jì)算機(jī)配置:主:Tang192.168.4.2/24192.168.4.1(網(wǎng)關(guān))從:test192.168.4.3/24192.168.4.1代理:proxy192.168.4.4/24192.168.4.1理論知識(shí):首先要明確mysql群集中可以有一個(gè)主服務(wù)器對(duì)多個(gè)從服務(wù)器,但一個(gè)從服務(wù)器只能屬于一個(gè)主服務(wù)器,否則會(huì)導(dǎo)致數(shù)據(jù)混亂。mysql5.5及以前的版本:復(fù)制功能相
2、對(duì)簡(jiǎn)單mysql5.6之后:引用了gtid全局事物號(hào);以及多線程復(fù)制multi-thread,replication配置mysql復(fù)制的基本步驟:一、master配置1、啟用二進(jìn)制日志Log-bin=master-binLog-bin-index=master-bin.index1、選擇唯一的server-idserver-id=(1到2的32次方-1)2、創(chuàng)建具有復(fù)制權(quán)限的用戶replicationslavereplicationclient二、slave配置1、啟用中繼日志relay-log=relay
3、–logrelay-log-index=可以不寫(xiě)2、選擇唯一的server-id不能比主服務(wù)器靠前3、連接至主服務(wù)器,并開(kāi)始復(fù)制數(shù)據(jù);mysql>changemastertomaster_host=’xxx’,master_port=’xxx’,master_log_file=’xxx’,master_log_file_pos=’xxx’,master_user=’xxx’,master_password=’xxx’;//主節(jié)點(diǎn)日志供從節(jié)點(diǎn)復(fù)制的起始位置是用于主節(jié)點(diǎn)已經(jīng)運(yùn)行了一段時(shí)間,由于業(yè)務(wù)繁忙加入從節(jié)點(diǎn)
4、實(shí)現(xiàn)讀寫(xiě)分離,然而從節(jié)點(diǎn)復(fù)制的起始位置不同與主服務(wù)器更新同步所花的時(shí)間長(zhǎng)短有關(guān)。mysql>startslave;startsalveIO_Thread;startslaveSQL_Thread;復(fù)制線程:master:dumpslave:IO_Thread,SQL-Thread當(dāng)master不在線時(shí),master的dump停止了,slave的I/Othread訪問(wèn)不了dump,所以它也無(wú)法工作,但是SQL_thread沒(méi)有停止,它一直處于等待狀態(tài)。而且SQL_thread是多線程的工作的。實(shí)驗(yàn)步驟:首先來(lái)
5、配置主節(jié)點(diǎn)Tang計(jì)算機(jī)開(kāi)機(jī)進(jìn)入系統(tǒng)后,檢查是否安裝mysql相關(guān)組件并查看組件安裝是否齊全;#yumlist
6、grepmysql如果你不知道你的組件安裝是否齊全,可以先卸載掉原先已安裝的命令(sudo)rpm–e–nodepsmysql配置網(wǎng)卡選項(xiàng)保存退出后,修改配置文件wq!保存退出然后查看網(wǎng)卡是否配置正確用yum安裝mysql組件(包括服務(wù)端和客戶端)安裝完成過(guò)后啟動(dòng)mysql服務(wù)為root設(shè)置一個(gè)登錄mysql的密碼通過(guò)客戶端登錄mysql登錄到mysql是一個(gè)這樣的界面(在mysql里以;表示一個(gè)
7、完整的語(yǔ)句)我們?cè)谥鞴?jié)點(diǎn)上創(chuàng)一個(gè)專(zhuān)用復(fù)制用的戶然后授予這個(gè)用戶由從服務(wù)器登錄可以復(fù)制數(shù)據(jù)的權(quán)限然后配置mysql的配置文件使得master的主機(jī)支持復(fù)制功能這是默認(rèn)的配置文件,我們要在上面添加一些設(shè)置修改后改完配置文件后重啟服務(wù)接下來(lái)配置從服務(wù)器配置好網(wǎng)卡,安裝mysql的相關(guān)組件,設(shè)置完密碼之后修改從服務(wù)器的mysql的配置文件然后登錄mysql讓從節(jié)點(diǎn)指向主節(jié)點(diǎn)啟動(dòng)復(fù)制然后再回到主服務(wù)器上關(guān)閉iptables和SeLinux然后登錄mysql創(chuàng)建數(shù)據(jù)庫(kù)和表用些簡(jiǎn)單的操作多做一些數(shù)據(jù)然后驗(yàn)證,在從節(jié)點(diǎn)上是
8、否已經(jīng)有這些數(shù)據(jù)了??偨Y(jié):查看binlog內(nèi)容SHOWBINLOGEVENTSGoLog_name:日志名稱,指定的記錄操作的binlog日志名稱,這里是m-bin.000001,與我們前面在/etc/my.cnf中配置的相對(duì)應(yīng)oPos:記錄事件的起始位置oEvent_type:事件類(lèi)型oEnd_log_pos:記錄事件的結(jié)束位置oServer_id:服務(wù)器標(biāo)識(shí)oInfo:事件描述信息查看從節(jié)點(diǎn)復(fù)制狀態(tài)1SHOWSLAVESTATUSG;主從復(fù)制場(chǎng)景中常用到的幾個(gè)相關(guān)命令:o終止主節(jié)點(diǎn)復(fù)制1STOPMA
9、STER;o清除主節(jié)點(diǎn)復(fù)制文件1RESETMASTER;o終止從節(jié)點(diǎn)復(fù)制1STOPSLAVE;o清除從節(jié)點(diǎn)復(fù)制文件1RESETSLAVE;o查看主節(jié)點(diǎn)復(fù)制狀態(tài)1SHOWMASTERSTATUSG;在從節(jié)點(diǎn)訪問(wèn)主節(jié)點(diǎn)設(shè)置的時(shí)候我們也可以添加起始值master_log_file='mysql-bin.000004',###起點(diǎn)日志文件master_log_pos=418,###起點(diǎn)位置master_connect_