링크 ux 아래 my sql - proxy 설정 읽 기와 쓰기 분리 설치

5585 단어 C++mysqllinuxC#lua
소프트웨어 목록
 
ncurses-5.7.tar.gz
    wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.7.tar.gz
 
mysql-proxy-0.8.1-linux-rhel5-x86-64bit.tar.gz
    wget http://mirrors.dotsrc.org/mysql/Downloads/MySQL-Proxy/mysql-proxy-0.8.1-linux-rhel5-x86-64bit.tar.gz
 
gettext-0.18.1.1.tar.gz
    wget http://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.1.1.tar.gz
 
glib-2.26.1.tar.gz
    wget http://ftp.acc.umu.se/pub/GNOME/sources/glib/2.26/glib-2.26.1.tar.gz
 
pkg-config-0.25.tar.gz
    wget http://pkg-config.freedesktop.org/releases/pkg-config-0.25.tar.gz
 
lua-5.1.4.tar.gz
    wget http://www.lua.org/ftp/lua-5.1.4.tar.gz
 
libevent-1.4.13-stable.tar.gz
    wget http://www.monkey.org/~provos/libevent-1.4.13-stable.tar.gz
운영 환경
192.168.111.101  mysql
192.168.111.102  mysql
192.168.111.103  mysql-proxy
3. 설치 과정
메모: 설치 과정 에서 gcc 로 인해 설치 할 수 없 을 경우 yum install gcc * 또는 yum update 를 사용 합 니 다.


1、	  ncurses
./configure --prefix=/usr --with-shared &&
make &&
make install &&
chmod 755 /usr/lib/*.5.3 &&
mv /usr/lib/libncurses.so.5* /lib &&
ln -sf libncurses.a /usr/lib/libcurses.a &&
ln -sf ../../lib/libncurses.so.5 /usr/lib/libncurses.so &&
ln -sf ../../lib/libncurses.so.5 /usr/lib/libcurses.so

-- with - shared: 공 유 된 ncurses 라 이브 러 리 파일 을 만 들 수 있 도록 합 니 다.
chmod 755 / usr / lib / *. 5.3: 공유 라 이브 러 리 파일 은 실행 가능 해 야 합 니 다.Ncurses 설치 프로그램 이 파일 권한 을 제대로 설정 하지 않 았 기 때문에 수 동 으로 설정 합 니 다.
ln - sf libncurses. a libcurses. a: 어떤 프로그램 은 - lncurses 가 아 닌 - lncurses 로 연결 하려 고 합 니 다.이 심 볼 릭 링크 는 이 프로그램 을 정확하게 연결 할 수 있 게 한다.
2. pkg - config 설치

  tar zxvf pkg-config-0.25.tar.gz
  cd pkg-config-0.25
  ./configure
  make && make install
  
  vi /etc/profile
  export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib/pkgconfig

3. gettext 설치

  tar zxvf gettext-0.18.1.1.tar.gz
  cd gettext-0.18.1.1
  ./configure
  make && make install

4. libevent 설치

tar zvfx libevent-1.4.13-stable.tar.gz
cd libevent-1.4.13-stable
./configure
make && make install

5. glib 설치
  tar zxvf glib-2.26.1.tar.gz
  cd glib-2.26.1
  ./configure
  make && make install
6. lua 설치

  tar zxvf lua-5.1.4.tar.gz
  cd lua-5.1.4
     64 
  vi src/Makefile
  CFLAGS= -O2 -Wall $(MYCFLAGS)  CFLAGS= -O2 -fPIC -Wall $(MYCFLAGS)
  make linux

#     lua.h:16     ,
#  lua.c:15:
#luaconf.h:275:31:   :readline/readline.h:         
#luaconf.h:276:30:   :readline/history.h:         
#lua.c: In function ‘pushline’:
#lua.c:182:   :       ‘readline’
#lua.c:182:   :          ,      
#lua.c: In function ‘loadline’:
#lua.c:210:   :       ‘add_history’
#make[2]: *** [lua.o]    1
#make[2]: Leaving directory `/data0/software/lua-5.1.4/src’
#make[1]: *** [linux]    2
#make[1]: Leaving directory `/data0/software/lua-5.1.4/src’
#make: *** [linux]    2

   yum install libtermcap-devel ncurses-devel libevent-devel readline-devel
   make install
   cp etc/lua.pc /usr/local/lib/pkgconfig/lua5.1.pc


7. MYSQL - Proxy 설치

tar zxvf mysql-proxy-0.8.1-linux-rhel5-x86-64bit.tar.gz –C /usr/local/
cd /usr/local
mv mysql-proxy-0.8.1-linux-rhel5-x86-64bit mysql-proxy-0.8.1 

vi /etc/profile
export PATH=$PATH:/usr/local/mysql-proxy-0.8.1/bin/

#    
mysql-proxy -V

vi /etc/init.d/mysql-proxy
/ etc / init. d / 디 렉 터 리 에 mysql - proxy 만 들 기

#!/bin/bash
export LUA_PATH=/usr/local/mysql-proxy-0.8.1/share/doc/mysql-proxy/?.lua
mode=$1
if [ -z "$mode" ] ; then
mode="start"
fi
case $mode in
start)
mysql-proxy --daemon \
--admin-username='root' \
--admin-password='123456' \
--admin-lua-script=/usr/local/mysql-proxy-0.8.1/share/doc/mysql-proxy/rw-splitting.lua \
--proxy-read-only-backend-addresses=192.168.111.101:3306 \
--proxy-backend-addresses=192.168.111.102:3306 \
--proxy-lua-script=/usr/local/mysql-proxy-0.8.1/share/doc/mysql-proxy/rw-splitting.lua &
;;
stop)
killall -9 mysql-proxy
;;
restart)
if $0 stop ; then
$0 start #        
else
echo  "retart failed!!!"
exit 1
fi
;;
esac
exit 0

  、  
chmod 755 /etc/init.d/mysql-proxy
/etc/init.d/mysql-proxy start
/etc/init.d/mysql-proxy stop

테스트
lsof –i:4040
my sql - proxy 기본 포트 는 4040 4041 입 니 다.
배치 하 다.

vim /usr/local/mysql-proxy-0.8.1/share/doc/mysql-proxy/rw-splitting.lua

a. 다음 부분 코드 세그먼트 수정:

proxy.global.config.rwsplit = {

#          ,  mysql-proxy              
min_idle_connections = 1,        #   4
max_idle_connections = 1,        #   8

#      ,            ,                
is_debug = true
}

좋은 웹페이지 즐겨찾기