如果我的方案可行请点赞,转载请注明。


在linux环境下配置mysql的读写分离。


环境 Centos6.5  Mysql 5.5.53

 

192.168.1.150   (主数据库)

192.168.1.151   (从数据库)

安装准备好数据库,所有功能正常使用后。

首先修改从数据库的配置文件my.cnf

server-id =2,任意数字,只要不给主数据库的server-id 重复就可以了。

mysql配置读写分离配置

启动主数据库,和从数据库。

mysql配置读写分离配置mysql配置读写分离配置

再主数据库添加复制同步用户。

GRANT REPLICATION SLAVE ON *.* TO 'replication'@'192.168.1.151' identified by 'replication';

flush privileges;

mysql配置读写分离配置

锁住主库,只能读不能写,FLUSH TABLES WITH READ LOCK;

mysql配置读写分离配置

查看主数据库binlog文件,以及位置。SHOW MASTER STATUS;

mysql配置读写分离配置

至此主库操作已经完成,不要退出当前shell。开始操作从数据库。

CHANGE  MASTER  TO \

MASTER_HOST='192.168.1.150', \ 主数据库IP

MASTER_USER='replication',\  主数据库分配的同步用户名

MASTER_PASSWORD='replication',\ 主数据库分配的同步用户密码

MASTER_LOG_FILE='mysql-bin.000005',\主数据库的binlog日志

MASTER_LOG_POS=348;\主数据库的log位置

mysql配置读写分离配置

然后show  slave status;会发现连个线程都是NO

mysql配置读写分离配置


开始start  slave 然后在show  slave status  会发现两个yes表示成功。

mysql配置读写分离配置

然后主库解锁UNLOCK TABLES

最后大家可以自行测试,主数据库插入数据,从数据库会看到相应的数据。这里就不测试了。



相关文章: