描述:mysql实现读写分离
环境:一台主服务器(Master)用于写操作,一台从服务器(Slave)用于读操作,当然这里可以配置多台从服务器,配置方法相似,本文只实现最简单的方式。
一、Master服务器配置
1.创建一个mysql账号
CREATE USER 'pan'@'localhost' IDENTIFIED BY 'password';
2.对从服务器进行授权
GRANT REPLICATION SLAVE ON *.* TO 'pan'@'%' DENTIFIED BY 'password';
(1)、修改mysql的配置文件my.cnf,笔者的Master是centos,Slave是ubuntu的
1、在配置文件的[mysqld]下面增加如下配置
server-id=1
log-bin=master-bin
log-bin-index=master-bin.index
2.查看日志(显示的配置信息,在配置Slave时候需要)
SHOW MASTER STATUS;
+-------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+-------------------+----------+--------------+------------------+
| master-bin.000001 | 1285 | | |
+-------------------+----------+--------------+------------------+
3.重启服务器
service mysqld restart
二、Slave服务器的配置
1、在配置文件的[mysqld]下面增加如下配置
server-id=2 relay-log-index=slave-relay-bin.index relay-log=slave-relay-bin
2、重启服务器
3.让Slave连接Master
change master to master_host='192.168.0.104', //Master 服务器Ip
master_port=3306,
master_user='pan',
master_password='password',
master_log_file='master-bin.000001',//Master服务器产生的日志
master_log_pos=1285;
3、启动Slave
start slave;
如果报错或者配置错误,
reset slave;//重置slave服务器,重新配置
三、测试
以上我们就被主从服务器配置好了,下面我们可以再Master中新建一个数据库,插入一张表,可以看到Slave中也有了我们刚刚新建的哪一张表,证明配置成功,mysql的主从配置是根据的日志来进行同步的,这里面还有更多配置,我们可以配置同步某一个数据库,上面我们把整个数据库都同步了,如果有需要大家可以查看更多的资料
四、应用
我们配置了好了主从服务器肯定要用在自已的系统中,我们还需要一个开源框架amoeba,相当于一个路由器。详细信息见下面链接
http://blog.csdn.net/cutesource/article/details/5710645