源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

详解MySQL主从复制读写分离搭建

  • 时间:2021-07-06 16:54 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:详解MySQL主从复制读写分离搭建
[b]MySQL主从设置[/b] MySQL主从复制,读写分离的设置非常简单: 修改配置my.cnf文件 master 和 slave设置的差不多:
[mysqld]
log-bin=mysql-bin 
server-id=222
[code]log-bin=mysql-bin[/code]的意思是:启用二进制日志。 [code]server-id=222[/code]的意思是设置了服务器的唯一ID,默认是1,一般取IP最后一段,可以写成别的,只要不和其他mysql服务器重复就好。 这里,有的MySQL默认的[code]my.cnf[/code]文件引用了[code]/etc/mysql/conf.d[/code]路径下的所有cnf文件,因此,也可以在[code]/etc/mysql/conf.d[/code]目录下添加一个cnf文件,添加上以上内容 [b]分别重启master和slave机器的mysql[/b] /etc/init.d/mysql restart master上建立账户并授权slave,slave上也做好相关配置 用root用户分别登录master和slave机器:
mysql -uroot -p //输入之后会让你输入root密码,输入root密码就算登陆了
[b]master机器上[/b] 建立账户并授权slave机器,注意用户名和密码,可以随意设置,但是一定要记下来,因为后面slave还需要用到
GRANT REPLICATION SLAVE ON *.* to 'ryugou'@'%' identified by 'ryugou';
一般不用root帐号,@'%'表示所有客户端都可能连,只要帐号,密码正确,此处可用具体客户端IP代替,如192.168.145.226,加强安全。 [b]slave机器上[/b] 查看master状态
show master status;
[b][img]http://files.jb51.net/file_images/article/201706/201762794309656.png?201752794328[/img] [/b] 在mysql终端输入
[u]复制代码[/u] 代码如下:
change master to master_host='xxx.xxx.xxx.xxx',master_user='ryugou',master_password='ryugou',master_log_file='mysql-bin.000004',master_log_pos=120;
master_log_file就是master机器上的对应的内容,master_log_pos也是,注意查看master状态上的内容。 master_user和master_password就是master机器上授权时设置用户名和密码。 [b]启动从服务器[/b]
start slave;
检查从服务器复制功能状态
show slave status\G;
会出现一个列表 [img]http://files.jb51.net/file_images/article/201706/201762794450386.png?20175279451[/img] 主要看Slave_IO_Running和Slave_SQL_Running 这俩状态必须都为Yes。 [b]master创建数据库,从服务器设置用户访问权限[/b] 在master上创建数据库 test,会发现在slave上也创建了 test,现在想要读写分离,slave上的机器某用户gou可以访问它,但是只能读
grant select on test.* to gou;
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程素材网。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部