通過(guò)mysql-proxy完成mysql讀寫(xiě)分離
更新時(shí)間:2014年05月16日 00:06:42 作者:
前不久做了下mysql讀寫(xiě)分離的實(shí)驗(yàn),也參考了很多的資料,謝謝哪些提供資料的兄弟
環(huán)境: 192.168.100.210
192.168.100.104
192.168.100.208
192.168.100.106
說(shuō)明: 210,104作為mysql數(shù)據(jù)庫(kù).
208作為mysql-proxy.
106作為測(cè)試機(jī)器.
相關(guān)軟件下載:
lua
www.lua.org
mysql-proxy
http://mysql.cdpa.nsysu.edu.tw/Downloads/MySQL-Proxy/
1. 在208上安裝lua
#tar zxvf lua-5.1.4.tar.gz -C /usr/local
# cd /usr/local
#mv lua-5.1.4 lua
#cd lua
#make //make之后可以看到系統(tǒng)列表,下面的
命令要用到
#make linux //我這里是linux
#make install
2.安裝mysql-proxy
# tar -zxvf mysql-proxy-0.6.0-linux-rhas4-x86.tar.gz -C /usr/local/
# cd /usr/local/
# mv mysql-proxy-0.6.0-linux-rhas4-x86 mysql-proxy
# export PATH=$PATH:/usr/local/mysql-proxy/sbin/
#mysql-proxy --proxy-read-only-backendaddresses=192.168.100.210:3306
--proxy-backend-addresses=192.168.100.104:3306
--proxy-lua-script=/home2/mysql-proxy-0.6.0-linux-rhas4-x86/share/mysql-proxy/rw-splitting.lua &
3.在210,104上設(shè)置權(quán)限
mysql> grant all privileges on backup.* to
[email=backup@'%']backup@'%'[/email]
identified by 'shenxun';
//這里給個(gè)賬號(hào)backup,密碼shenxun,讀寫(xiě)操作的數(shù)據(jù)庫(kù)是backup.
4.進(jìn)行測(cè)試.
用106連接208的mysql-proxy:
/usr/bin/mysql -u backup -pshenxun –P4040 –h 192.168.100.208 –D backup
創(chuàng)建一個(gè)表
Create table haha(id int,name char(6));
然后我們到210和104上去看下數(shù)據(jù)庫(kù)的情況,看到210是沒(méi)有剛才
寫(xiě)入的數(shù)據(jù)庫(kù)表,而104是有剛才寫(xiě)入的數(shù)據(jù)表的.
現(xiàn)在我們把上面的命令修改下
mysql-proxy --proxy-backend-addresses=192.168.100.210:3306 --proxy-backend- addresses=192.168.100.104:3306 --proxy-lua-script=/home2/mysql-proxy-0.6.0-linux-rhas4- x86/share/mysql-proxy/rw-splitting.lua &
然后我們?cè)?08上再重新建個(gè)表
Create table xixi(id int,name char(6));
這個(gè)時(shí)候再到210和104上去看下數(shù)據(jù)庫(kù)的情況,發(fā)現(xiàn)2個(gè)數(shù)據(jù)庫(kù)都有剛才寫(xiě)入的數(shù)據(jù)
庫(kù)表.
可以充分說(shuō)明我們的數(shù)據(jù)庫(kù)讀寫(xiě)分離已經(jīng)實(shí)現(xiàn)了
192.168.100.104
192.168.100.208
192.168.100.106
說(shuō)明: 210,104作為mysql數(shù)據(jù)庫(kù).
208作為mysql-proxy.
106作為測(cè)試機(jī)器.
相關(guān)軟件下載:
lua
www.lua.org
mysql-proxy
http://mysql.cdpa.nsysu.edu.tw/Downloads/MySQL-Proxy/
1. 在208上安裝lua
#tar zxvf lua-5.1.4.tar.gz -C /usr/local
# cd /usr/local
#mv lua-5.1.4 lua
#cd lua
#make //make之后可以看到系統(tǒng)列表,下面的
命令要用到
#make linux //我這里是linux
#make install
2.安裝mysql-proxy
# tar -zxvf mysql-proxy-0.6.0-linux-rhas4-x86.tar.gz -C /usr/local/
# cd /usr/local/
# mv mysql-proxy-0.6.0-linux-rhas4-x86 mysql-proxy
# export PATH=$PATH:/usr/local/mysql-proxy/sbin/
#mysql-proxy --proxy-read-only-backendaddresses=192.168.100.210:3306
--proxy-backend-addresses=192.168.100.104:3306
--proxy-lua-script=/home2/mysql-proxy-0.6.0-linux-rhas4-x86/share/mysql-proxy/rw-splitting.lua &
3.在210,104上設(shè)置權(quán)限
mysql> grant all privileges on backup.* to
[email=backup@'%']backup@'%'[/email]
identified by 'shenxun';
//這里給個(gè)賬號(hào)backup,密碼shenxun,讀寫(xiě)操作的數(shù)據(jù)庫(kù)是backup.
4.進(jìn)行測(cè)試.
用106連接208的mysql-proxy:
/usr/bin/mysql -u backup -pshenxun –P4040 –h 192.168.100.208 –D backup
創(chuàng)建一個(gè)表
Create table haha(id int,name char(6));
然后我們到210和104上去看下數(shù)據(jù)庫(kù)的情況,看到210是沒(méi)有剛才
寫(xiě)入的數(shù)據(jù)庫(kù)表,而104是有剛才寫(xiě)入的數(shù)據(jù)表的.
現(xiàn)在我們把上面的命令修改下
mysql-proxy --proxy-backend-addresses=192.168.100.210:3306 --proxy-backend- addresses=192.168.100.104:3306 --proxy-lua-script=/home2/mysql-proxy-0.6.0-linux-rhas4- x86/share/mysql-proxy/rw-splitting.lua &
然后我們?cè)?08上再重新建個(gè)表
Create table xixi(id int,name char(6));
這個(gè)時(shí)候再到210和104上去看下數(shù)據(jù)庫(kù)的情況,發(fā)現(xiàn)2個(gè)數(shù)據(jù)庫(kù)都有剛才寫(xiě)入的數(shù)據(jù)
庫(kù)表.
可以充分說(shuō)明我們的數(shù)據(jù)庫(kù)讀寫(xiě)分離已經(jīng)實(shí)現(xiàn)了
您可能感興趣的文章:
- php實(shí)現(xiàn)帶讀寫(xiě)分離功能的MySQL類完整實(shí)例
- MySQL5.6 Replication主從復(fù)制(讀寫(xiě)分離) 配置完整版
- MySQL的使用中實(shí)現(xiàn)讀寫(xiě)分離的教程
- Yii實(shí)現(xiàn)MySQL多數(shù)據(jù)庫(kù)和讀寫(xiě)分離實(shí)例分析
- Thinkphp實(shí)現(xiàn)MySQL讀寫(xiě)分離操作示例
- 使用PHP實(shí)現(xiàn)Mysql讀寫(xiě)分離
- Ubuntu10下如何搭建MySQL Proxy讀寫(xiě)分離探討
- MySQL主從同步、讀寫(xiě)分離配置步驟
- mysql 讀寫(xiě)分離(實(shí)戰(zhàn)篇)
- mysql 讀寫(xiě)分離(基礎(chǔ)篇)
- MySQL 讀寫(xiě)分離實(shí)例詳解
相關(guān)文章
MySQL查詢出現(xiàn)1055錯(cuò)誤的原因及解決方法
Mysql在使用過(guò)程中經(jīng)常遇到錯(cuò)誤,都是本人在實(shí)際應(yīng)用中處理檢驗(yàn)過(guò)的,本文對(duì)常見(jiàn)錯(cuò)誤出現(xiàn)的代碼進(jìn)行詳細(xì)分析,下面這篇文章主要給大家介紹了關(guān)于MySQL查詢出現(xiàn)1055錯(cuò)誤的原因及解決方法,需要的朋友可以參考下2023-05-05
MySQL創(chuàng)建數(shù)據(jù)表時(shí)設(shè)定引擎MyISAM/InnoDB操作
這篇文章主要介紹了MySQL創(chuàng)建數(shù)據(jù)表時(shí)設(shè)定引擎MyISAM/InnoDB操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08
MySQL decimal unsigned更新負(fù)數(shù)轉(zhuǎn)化為0
這篇文章主要介紹了MySQL decimal unsigned更新負(fù)數(shù)轉(zhuǎn)化為0,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-12-12
MySQL和連接相關(guān)的timeout 的詳細(xì)整理
這篇文章主要介紹了MySQL和連接相關(guān)的timeout 的詳細(xì)整理的相關(guān)資料,本文主要總結(jié)下和連接有關(guān)的timeout,需要的朋友可以參考下2017-08-08
MySQL中必須了解的13個(gè)關(guān)鍵字總結(jié)
這篇文章主要為大家詳細(xì)介紹了MySQL中必須了解學(xué)會(huì)的13個(gè)關(guān)鍵字,文中的示例代碼簡(jiǎn)潔易懂,對(duì)我們掌握MySQL有一定的幫助,需要的可以了解下2023-09-09

