溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mysql實(shí)現(xiàn)主從復(fù)制的步驟

發(fā)布時(shí)間:2020-05-22 16:59:50 來(lái)源:網(wǎng)絡(luò) 閱讀:184 作者:三月 欄目:數(shù)據(jù)庫(kù)

文主要給大家介紹mysql實(shí)現(xiàn)主從復(fù)制的步驟,文章內(nèi)容都是筆者用心摘選和編輯的,具有一定的針對(duì)性,對(duì)大家的參考意義還是比較大的,下面跟筆者一起了解下mysql實(shí)現(xiàn)主從復(fù)制的步驟吧。

mysql主從原理:

1)至少需要2臺(tái)數(shù)據(jù)庫(kù)云服務(wù)器,一主一從,master開(kāi)啟bin-log功能。(bin-log功能用戶記錄主控增           加、刪除、修改、更新SQL的語(yǔ)句。)

2)異步復(fù)制的過(guò)程,有延遲,毫秒級(jí)別(延遲和你的網(wǎng)絡(luò)和性能、數(shù)據(jù)庫(kù)的量級(jí)有關(guān)),開(kāi)啟3個(gè)線程。分別是master開(kāi)啟io線程,slave開(kāi)啟io線程、sql線程。

3)從庫(kù)啟動(dòng) salve start,通過(guò)io線程、用戶名和密碼去連接master,master接收請(qǐng)求后,master io線程負(fù)責(zé)將bin-log內(nèi)容position位置點(diǎn)數(shù)據(jù)發(fā)給salve端。

4)slave io線程收到數(shù)據(jù)之后,會(huì)將內(nèi)容追加到本地relay-log中繼日志,同時(shí)會(huì)產(chǎn)生master.info文件(這次從哪臺(tái)機(jī)器同步,用戶名、密碼、bin-log文件名、position位置).

5)slave SQL線程實(shí)時(shí)監(jiān)測(cè)relay-log,如果這個(gè)日志內(nèi)容有更新,解析文件中的SQL語(yǔ)句,在本地去執(zhí)行。

實(shí)戰(zhàn):

1)master配置文件中開(kāi)啟bin-log,設(shè)置server-id

2)授權(quán)同步用戶和密碼

3)slave執(zhí)行change master綁定主庫(kù)

192.168.1.155(master)

192.168.1.156(salve)

注:關(guān)掉云服務(wù)器的防火墻和setenforce 0

主庫(kù)配置:

1.在mysql配置文件中加入

log-bin=mysql-bin(開(kāi)啟bin-log)

server-id=1(區(qū)分主從)

2.重啟數(shù)據(jù)庫(kù)

/etc/init.d/mysql restart

3.進(jìn)入數(shù)據(jù)庫(kù),創(chuàng)建一個(gè)新的用戶,并授權(quán)允許同步

create user 'tongbu'@'192.168.1.156' identified by '123456';(創(chuàng)建用戶)

grant replication slave on *.* to 'tongbu'@'192.168.1.156' identified by '123456';(授權(quán)給從庫(kù))

4.查看主庫(kù)狀態(tài)

mysql> show master status;

+------------------+----------+--------------+------------------+-------------------+

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

+------------------+----------+--------------+------------------+-------------------+

| mysql-bin.000001 |      990 |              |                  |                   |

+------------------+----------+--------------+------------------+-------------------+

1 row in set (0.01 sec)

從庫(kù)配置:

5.修改從庫(kù)配置文件

server-id = 2

6.重啟數(shù)據(jù)庫(kù)

/etc/init.d/mysql restart

7.在從云服務(wù)器上指定master IP和同步的pos點(diǎn)

進(jìn)入數(shù)據(jù)庫(kù):

change master to master_host='192.168.1.155' ,master_user='tongbu' ,master_password='123456' ,master_log_file='mysql-bin.000001' ,master_log_pos=990;

注:如果報(bào)錯(cuò)

ERROR 3021 (HY000): This operation cannot be performed with a running slave io thread; run STOP SLAVE IO_THREAD FOR CHANNEL '' first

說(shuō)明slave正在運(yùn)行,stop slave;(關(guān)閉slave)

7.啟動(dòng)slave

start slave;

8.測(cè)試,在主庫(kù)創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),查看從庫(kù)是否同步過(guò)來(lái)。

mysql實(shí)現(xiàn)主從復(fù)制的步驟(本實(shí)驗(yàn)是成功的)

看完以上關(guān)于mysql實(shí)現(xiàn)主從復(fù)制的步驟,很多讀者朋友肯定多少有一定的了解,如需獲取更多的行業(yè)知識(shí)信息 ,可以持續(xù)關(guān)注我們的行業(yè)資訊欄目的。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI