您的位置:首页 > 数据库 > MySQL

mysql 读写分离

2015-08-24 16:26 639 查看

mysql读写分离

一.配置主库

修改master的配置文件,设置服务器id以及打开二进制日志文件

vim /etc/my.cnf


加入

#给服务器起一个唯一的id
server-id=1
#开启二进制日志
log-bin=mysql-bin




2.重启mysql

service mysqld restart


3.登陆mysql,查看master状态,返回如图表示配置主库成功

show master status;




4.在主服务器上建立帐户并授权slave。我们记住这个授权账户的账号为 mysync,密码为123456,在配置从库的时候用到

GRANT REPLICATION SLAVE ON *.* to 'mysync'@'%' identified by '123456';


二.配置从库

1. 配置slave的配置文件

vim /etc/my.cnf


加入

#给服务器起一个唯一的id
server-id=2
#服务中继日志
relay_log=mysql-relay-bin
#设置为只读
read_only=1




2.重启mysql

service mysqld restart


3.登录mysql,并且打开slave的复制功能

3.1查看当前mysql有木有启动slave复制功能

show slave status;




表示木有打开复制功能,要是打开了。则要reset slave ; 重置slave.或关闭 stop slave 关闭salve

3.2登陆主库的mysql,查看master状态

show master status;




记住 Feile以及Position的值

3.3切换到从库的mysql, 在从服务器通过语句指定要复制的主服务器

在从服务器通过语句指定要复制的主服务器

change  master  to master_host='192.168.26.135',master_user='mysync',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=226;


master-host: 主库的ip

master-user:主库授权的复制账号

master-password 主库授权的复制账号的密码

master_log_file:为步骤3.2的File

master_log_pos:为步骤3.2的Position

3.4 启动从库复制功能

start salve;


3.5查看从库复制功能是否成功。

show salve status\g;




备注:

要是在执行3.3的时候,发现连接不到主库,请先确保可以ping得通主库的ip,再考虑主库的3306端口是否给防火墙屏蔽了不对外开放。

-

常用命令:

show master status ; 查看master的状态, 尤其是当前的日志及位置

show slave stattus; 查看slave的状态.

reset slave ; 重置slave状态.

start slave ; 启动slave 状态(开始监听msater的变化)

stop slave; 暂停slave状态;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: