MySQL讀寫分離mysql-proxy部署

0x01 介紹

mysql-proxy是mysql官方提供的mysql中間件服務,上游可接入若干個mysql-client,後端可連接若干個mysql-server。
它使用mysql協議,任何使用mysql-client的上游無需修改任何代碼,即可遷移至mysql-proxy上。
mysql-proxy最基本的用法,就是作爲一個請求攔截,請求中轉的中間層:
mysql-proxy允許用戶指定Lua腳本對請求進行攔截,對請求進行分析與修改,它還允許用戶指定Lua腳本對服務器的返回結果.

0x02 用途

sql攔截與修改
性能分析與監控
讀寫分離
請求路由

0x03 部署過程

二進制包安裝

wget https://downloads.mysql.com/archives/get/file/mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz

tar zxf mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz

mv mysql-proxy-0.8.5-linux-el6-x86-64bit /usr/local/mysql-proxy

cd /usr/local/mysql-proxy

mkdir log

mkdir conf

#配置文件建立

cd conf

vim mysql-proxy.conf

[mysql-proxy]
###如果是普通用戶,此選項去掉
user=root
daemon=true
keepalive=true
plugins=proxy,admin
###日誌級別
log-level=info
log-file=/usr/local/mysql-proxy/log/mysql-proxy.log
###本機ip地址
proxy-address=0.0.0.0:9196
##backend主   注意addresses
proxy-backend-addresses=192.168.1.11:3306
##admin-address=104.137.27.4:9197
proxy-read-only-backend-addresses=192.168.1.21:3306
#proxy的管理用戶admin的IP和端口
###下面的三個參數必須設定,否則mysql-proxy服務啓動不了的
admin-username=mysql_proxy_user
admin-password=456123  
###admin的lua腳本地址;
admin-lua-script=/usr/local/mysql-proxy/lib/mysql-proxy/lua/admin.lua

0X04 啓動

/usr/local/mysql-proxy/bin/mysql-proxy --defaults-file=/usr/local/mysql-proxy/conf/mysql-proxy.conf
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章