溫馨提示×

溫馨提示×

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

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

mysql系列之8------讀寫分離

發(fā)布時間:2020-07-14 06:35:13 來源:網(wǎng)絡(luò) 閱讀:1555 作者:bentian1208 欄目:MySQL數(shù)據(jù)庫

一、前言:讀寫分離的基本原理

       mysql的讀寫分離的基本原理是:讓master(主數(shù)據(jù)庫)來響應(yīng)事務(wù)性操作,

讓slave(從數(shù)據(jù)庫)來響應(yīng)select非事務(wù)性操作,

然后再采用主從復(fù)制來把master上的事務(wù)性操作同步到slave數(shù)據(jù)庫中。實現(xiàn)簡單的負載均衡


二、前期準備工作:

 1、準備兩臺服務(wù)器,我這里準備的是192.168.4.122(主),192.168.4.123(從)

      另外準備一臺服務(wù)器安裝中間件服務(wù)器(192.168.4.125)

 2、首先把兩臺服務(wù)器做好主從同步。

 3、準備讀寫分離的軟件:maxscale-2.1.2-1(中間件)

三、maxscale安裝和配置(4.125)

 1、安裝:rpm -ivh maxscale-2.1.2-1.rhel.7.x86_64.rpm 

 2、修改配置文件:vim /etc/maxscale.cnf

     54-60行注釋掉,87-91注釋掉

      10   threads=auto

      18 [server1]

       19 type=server

       20 address=192.168.4.122

       21 port=3306

       22 protocol=MySQLBackend

       23 [server2]

       24 type=server

       25 address=192.168.4.123

       26 port=3306

       27 protocol=MySQLBackend

      35 [MySQL Monitor]    //監(jiān)視數(shù)據(jù)庫的配置

       36 type=monitor

       37 module=mysqlmon

       38 servers=server1, server2

       39 user=scalemon  //監(jiān)控

       40 passwd=123456

       41 monitor_interval=10000

     63 [Read-Write Service]    //配置查詢讀寫權(quán)限的帳號

       64 type=service

       65 router=readwritesplit

       66 servers=server1, server2

       67 user=maxscale //接收客戶端連接請求時,連接的用戶名和密碼在數(shù)據(jù)庫服務(wù)上是否存在

       68 passwd=123456

       69 max_slave_connections=100%

       104 port=4010

 3、在主庫(4.122)上添加上面需要的兩個授權(quán)用戶

   grant replication slave,replication client on *.* to scalemon@'%' identified by "123456";

   grant select on mysql.* to maxscale@'%' identified by "123456";

 4、啟動服務(wù):maxscale -f /etc/maxscale.cnf

      停止服務(wù):ps -C   maxscale(查進程)        kill -9 13109(殺進程)

     查看服務(wù)是否啟動:netstat -natulp | grep maxscale

 5、在主庫(4.122)上添加用于客戶端連接服務(wù)器的用戶名

     grant  all  on  *.*   to student@'%' identified by '123456';

 6、在4.125上:maxadmin -P4010 -uadmin -pmariadb //訪問控制后臺

    list servers    //顯示所有服務(wù)器主機,可以看到服務(wù)器的運行信息

 7、用宿主機做客戶端連接中間件的登陸方法:

    mysql -h292.168.4.125 -P4006 -utest -p123456

 8、測試方法:當從掛掉后,客戶端可寫可讀;

     但是當主掛掉后,客戶端不可讀不可寫

























    



向AI問一下細節(jié)

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

AI