shenjr 2018-01-12 10:37:44 3702次浏览 1条评论 2 0 0

以下面两台mysql服务器为例
主 139.129.243.201
从 139.129.243.202

1.主服务器139.129.243.201的配置

修改msql的配置文件
vim /etc/my.cnf
找到 log-bin=mysql-bin,删除#号开启它
然后设置server-id,id必须是唯一,主从服务器不能一样.
捕获.JPG

然后重启mysql

service mysql restart

然后进入mysql

mysql -u root -p   

在mysql中添加一个只有从服务器139.129.243.202能进入的账号, 账号名我这里设置为slave,密码为123456

grant replication slave on *.* to slave@139.129.243.202 identified by '123456';

然后

show slave status;

捕获2.JPG
记住上图的file 和 position

2.从服务器139.129.243.202的配置

修改mysql的配置
vim /etc/my.cnf
注释两处

#log-bin=mysql-bin
#binlog_format=mixed

设置server-id 为唯一值

捕获3.JPG
修改配置后重启mysql

service mysql restart

然后进入mysql

mysql -u root -p  

然后在mysql中输入

CHANGE MASTER TO 
MASTER_HOST='139.129.243.201',
MASTER_USER='slave',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='mysql-bin.000002',
MASTER_LOG_POS=716;

这样配置就完成了
查看是否配置成功在mysql中输入

show slave status\G

如果显示

Slave_IO_State: Waiting for master to send event

就代表成功了
失败的话看我的备注来排除错误.

3.yii配置

本站文档中有
http://www.yiichina.com/doc/guide/2.0/db-dao#read-write-splitting
ps :
MASTER_HOST 主服务器ip
MASTER_USER 主服务器配置的那个只有从服务器能登录的账号
MASTER_PASSWORD 主服务器配置的那个只有从服务器能登录的账号的密码
MASTER_LOG_FILE 主服务器mysql中 show slave status; 后显示表中的file名
MASTER_LOG_POS 主服务器mysql中 show slave status; 后显示表中的position

导致lave_IO_Running 为connecting 的原因主要有以下 3 个方面:  
1、网络不通  
2、密码不对  
3、pos不对  
4、配置完后没有重启mysql

您需要登录后才可以评论。登录 | 立即注册