天天看點

centos-Mysql-proxy安裝配置

mysql-proxy安裝配置 

作者:lixiuran 日期:2014年5月2日 

相關軟體包以後提供!

一、安裝前準備 

1.mysql-proxy安裝前所需依賴包 

libevent 1.x or higher (1.3b or later is preferred) lua 5.1.x or higher(使用5.2版本編譯時會出現大量錯誤) glib2 2.6.0 or higher pkg-config 

libtool 1.5 or higher 

mysql 5.0.x or higher developer files gettext 0.18.2 

2.擷取依賴包及mysql-proxy: 

1.libevent-2.0.21:https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz 

2.lua-5.1.5:http://www.lua.org/ftp/lua-5.1.5.tar.gz 

3.glib-2.34.3:http://ftp.gnome.org/pub/gnome/sources/glib/2.34/glib-2.34.3.tar.xz 

4.gettext-0.18.2:http://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.2.tar.gz 5.mysql-5.6:http://dev.mysql.com/downloads/mysql/ 

6.mysql-proxy-0.8.3:http://dev.mysql.com/downloads/mysql-proxy/ 3.安裝前配置環境 

1.作業系統:centos6.4 x86_64 2.執行yum install zlib* libffi* gcc gcc-c++ make autoconf automake libtool pkgconfig lrzsz xz ncurses* readline cmake   

二、安裝部署依賴包 1.安裝libevent 

#tar -zxvf libevent-2.0.21-stable.tar.gz  #cd libevent-2.0.21-stable #./configure  #make 

#make install  

2.安裝lua 

#tar -zxvf lua-5.1.5.tar.gz #cd lua-5.1.5 

#vi src/makefile(64位系統必須修改) cflags= -o2 -wall $(mycflags) 添加-fpic 

cflags= -fpic -o2 -wall $(mycflags) #make linux 

#make install install_top=/usr/local/lua #cp etc/lua.pc /usr/local/lib/pkgconfig/ 3.安裝glib 

安裝前檢查是否有指令:msgfmt 

如果沒有先安裝gettext 

#tar -zxvf gettext-0.18.2.tar.gz #cd gettext-0.18.2 

#./configure --prefix=/usr/local/gettext #make && make install 

#ln -s /usr/local/gettext/bin/* /usr/local/bin/  

安裝glib 

#tar -jxvf glib-2.34.3.tar.xz #cd glib-2.34.3 

#./configure --prefix=/usr/local/glib #make 

#make install 

4.安裝mysql(也可使用開發者庫替代) 

#groupadd -g 101 mysql 

#useradd -u 501 -s /sbin/nologin -g mysql mysql #mkdir -p /home/db_mysql/data 

#chown -r mysql.mysql /home/db_mysql/data #tar -zxvf mysql-5.6.11.tar.gz #cd mysql-5.6.11 #cmake \ 

-dcmake_install_prefix=/usr/local/mysql \ 

-dmysql_unix_addr=/home/db_mysql/data/mysql.sock \ -dmysql_datadir=/home/db_mysql/data \ -ddefault_charset=utf8 \ 

-ddefault_collation=utf8_general_ci \ -denabled_local_infile=on \ 

-dwith_innobase_storage_engine=1 \ -dwith_archive_storage_engine=1 \ -dwith_blackhole_storage_engine=1 \ -dwith_perfschema_storage_engine=1 #make && make install    

三、安裝mysql-proxy 

#export pkg_config_path=$pkg_config_path:/usr/local/lib/pkgconfig 

#export pkg_config_path=$pkg_config_path:/usr/local/glib/lib/pkgconfig #export lua_cflags="-i/usr/local/lua/include"  #export lua_libs="-l/usr/local/lua/lib -llua -ldl" #export ldflags="-l/usr/local/lib -lm" #export cflags="-i/usr/local/lib" #tar -zxvf mysql-proxy-0.8.3.tar.gz #cd mysql-proxy 

#./configure --prefix=/usr/local/mysql-proxy --with-lua=/usr/local/lua --with-mysql=/usr/local/mysql #make 

#mkdir /usr/local/mysql-proxy/conf 

#cp ./lib/*.lua /usr/local/mysql-proxy/conf  

測試啟動 

#./mysql-proxy --proxy-backend-addresses=192.168.157.130:3306 --proxy-read-only-backend-addresses=192.168.157.130:3307 

--proxy-lua-script=/usr/local/mysql-proxy/conf/rw-splitting.lua 提示 

2013-07-03 02:39:58: (critical) plugin proxy 0.8.3 started 啟動成功   

在用戶端使用mysql -h 192.168.157.135 -p 4040(mysql-proxy的ip及監聽端口号) 若能登陸mysql則代理成功 

繼續閱讀