7.100.222.111 | master |
47.103.211.5 | slave1 |
47.103.98.221 | slave2 |
如果還沒(méi)安裝mysql請(qǐng)看安裝教程:mysql安裝
一、概述:
架構(gòu)圖:
此種架構(gòu),一般初創(chuàng)企業(yè)比較常用,也便于后面步步的擴(kuò)展
特點(diǎn):
1、可以緩解讀的壓力。
2、成本低,布署快速、方便
3、讀寫分離
4、還能通過(guò)及時(shí)增加從庫(kù)來(lái)減少讀庫(kù)壓力
5、主庫(kù)單點(diǎn)故障
6、數(shù)據(jù)一致性問(wèn)題(同步延遲造成)
7、一但主機(jī)宕機(jī)就不可以進(jìn)行寫操作
二、搭建集群
1、修改配置文件
分別在三臺(tái)服務(wù)器中使用如下命令修改配置文件
$ vim /etc/my.cnf
分別向三臺(tái)服務(wù)器的/etc/my.cnf mysql配置文件添加如下內(nèi)容:
masetr | slave1 | slave2 |
server-id=1 #主庫(kù)開啟binlog日志 log-bin=/var/lib/mysql/mysql-bin |
server-id=2 | server-id=3 |
2、在主庫(kù)創(chuàng)建復(fù)制用戶
在mysql命令下輸入如下命令創(chuàng)建一個(gè)用戶供從庫(kù)(slave)復(fù)制主庫(kù)(master)
mysql> grant replication slave on *.* to 'test'@'%' identified by '123456'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
3、從庫(kù)關(guān)聯(lián)主庫(kù)
使用一下命令查看主庫(kù)(master)的狀態(tài)
mysql> show master status;
輸出以下信息,當(dāng)然你的可以和我的不一樣
mysql> show master status; +------------------+----------+--------------+------------------+-------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +------------------+----------+--------------+------------------+-------------------+ | mysql-bin.000002 | 5141037 | | | | +------------------+----------+--------------+------------------+-------------------+ 1 row in set (0.00 sec)
可以看到以上結(jié)果,這兒只需要看 File 和 Position,其它的兩個(gè)分別是白名單和黑名單,意思為同步哪幾個(gè)數(shù)據(jù)庫(kù)和不同步哪幾個(gè)數(shù)據(jù)庫(kù),可自行根據(jù)需求進(jìn)行設(shè)置。記錄以上前兩個(gè)字段信息后()。
分別在兩臺(tái)從庫(kù)(slave)上操作如下命令:
mysql> change master to master_host='47.100.222.111', master_port=3306, master_user='test', master_password='123456', master_log_file='mysql-bin.000002', master_log_pos=5141037; mysql> flush privileges; mysql> slave start;
執(zhí)行完畢后,在從庫(kù)上繼續(xù)執(zhí)行如下語(yǔ)句:
mysql> show slave status\G;
輸出如下信息:
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 47.100.225.121
Master_User: helper
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000002
Read_Master_Log_Pos: 5141037
Relay_Log_File: slave1-relay-bin.000003
Relay_Log_Pos: 5140628
Relay_Master_Log_File: mysql-bin.000002
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
----------以下省略
如果 Slave_IO_Running: 和Slave_SQL_Running: 都為YES那證明配置已經(jīng)成功。
到此一主二從搭建完成,一主多從也是類似的安裝。你可以在主庫(kù)上創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)或者一張表,從庫(kù)都會(huì)去復(fù)制。
以上所述是小編給大家介紹的mysql集群一主多從架構(gòu)實(shí)現(xiàn)詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
標(biāo)簽:荊門 陜西 鄂爾多斯 北京 駐馬店 梅河口 黔西 昌都
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《詳解mysql集群:一主多從架構(gòu)實(shí)現(xiàn)》,本文關(guān)鍵詞 詳解,mysql,集群,一主,多,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。