二.mysql配置
1.准备两台服务器安装mysql(也可以在一台中装两个mysql修改端口号避免冲突)
2.分别连接mysql
3.配置mysql
1.配置主库 monster
打开binary log
2.配置从库
主库授权
账号repl后面的是从库的ip地址 mysql是账号repl的密码
刷新
后面master_log_pos=0 表示从零开始同步 master_log_file 是上面SHOW MASTER STATUS 下面的file文件
在从库中开启主从跟踪
查看从库状态
从库中终止主从同步 stop slave
查看 my.cnf 文件 把 server -id=1 的字段删除 保留server-id=2 修改后保存 重启mysql 重新连接 开启主从同步start slave
查看从库状态 发现没有错误 到此主从同步配置已经完成.
转发到后端从库 读取。实现 主库负责--写入,从库负责--读取。注意:Proxy其实不是一台机器,只是一个连接方式,读取数据的时候自动从Salve上取,写数据则自动向Master中写。
实验前先做好 主从架构
主---192.168.1.252 (mysql-5.7 ,三台版本一致)
从---192.168.1.101
proxy---192.168.1.102
vim /etc/mysql-proxy.cnf
内容如下:
注意:(在服务器上配置文件要把注释都去掉,不然会报错。)
保存退出。赋予660权限,不然会报错。
3.##修改读写配置文件
关闭可以用killall -9 mysql-proxy 或者kill -9 ID
在主执行:(事先做好主从架构,从库会自动吧这个 *** 作更新过去,或者在手动去从库也执行一遍)
使用客户端去链接mysql-proxy(1.102)(开2个以上客户端链接)
接下来,测试数据。(主从都开启时,先添加一条数据)
此时如果停掉slave,在添加数据
stop slave
发现并没有刚才添加的id为2的这条数据。
因为此时slave已经停掉了,没有负责给我们提供查询 *** 作的服务了,所以查不到了。刚才可以写入,也是意味着 写入 *** 作是有 master来完成的。
这时恢复slave,再查询
start slave
这时2已经有了,恢复了slave后,先主从通信同步了刚才的数据,再继续提供查询 *** 作。
到此,读写分离完成。
参考:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)