总结:MySQL优化主要从数据表的设计,SQL语句,服务器设备,数据读写这几个方面来优化。前面两篇已经写了,这篇主要讲MySQL数据读写分离,意思是,那台服务器是主服务器,负责写,那台服务器是从服务器,负责写。
前提:准备三台服务器
原理:通过mysql-proxy,amoeba作为中间件,往代理机器发送,代理软件进行判断发往不同的mysql服务器。如下图(有点像redis哨兵模式)
服务器:
192.168.101 # 主库-只写
192.168.102 # 从库-只读
192.168.100 # 代理
安装mysql-proxy之前先安装lua脚本语言,用来编译mysql-proxy.
lua官网:http://www.lua.org/ftp/
安装lua
#安装依赖包
yum install cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make readline-devel -y
#切换目录
cd /usr/local/src
#下载lua
wget http://www.lua.org/ftp/lua-5.3.5.tar.gz
#解压
tar -zxvf lua-5.3.5.tar.gz
#修改Makefie配置
cd lua-5.3.5
vim Makefie
#修改配置内容
INSTALL_TOP= /usr/local/lua
#编译
make linux && make install
#添加环境变变量
vim /etc/profile
#添加:
export LUA_HOME=/usr/local/lua
export PATH=$PATH:$LUA_HOME/bin