温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

mysql中怎么实现主从和主主模式

发布时间:2021-08-13 17:00:47 来源:亿速云 阅读:142 作者:Leah 栏目:数据库

mysql中怎么实现主从和主主模式,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

mysql 复制的实现机制
1)首先主mysql把操作语句保存在bin-log中
2)从服务器启动一个进程或线程向主mysql发起请求
3)从mysql 把主mysql的bin-log中的操作语句复制的从mysql的relay-log中
4)在从上执行这些操作语句
配置
主mysql 这里主要介绍要改变的内容(主从就是从各自为主的独立模式改变过来的)
1)在/etc/my.cnf 添加或修改如下内容
bin-log = mysql.bin-log     #定义bin-log的文件名   (默认保存在数据目录下)
bin-log-index = mysql.bin-log.index    #定义bin-log-index的文件名
binlog-format = mixed    #定义binlog的格式
server-id = 1      #一定要确保主mysql的server-id 小于从mysql的server-id
2)启动mysql  和配置 
#service mysqld start
#mysql       #进入mysql
#set password for (‘mima’);
#set password for (‘mima’);
#grant replication slave,replication client on *.* to  identified by 'mima';   #赋予username 拥有复制的权限
#flush privileges;
#show master status;    #查看主mysql的状态
从mysql 
1)在/etc/my.cnf 添加或修改如下内容
relay-log = mysql.relay-log     #定义relay-log的文件名   (默认保存在数据目录下)
relay-log-index = mysql.relay-log.index    #定义relay-log-index的文件名
server-id = 11      #一定要大于主mysql的server-id
2)启动mysql  和配置 
#service mysqld start
#mysql       #进入mysql
#set password for (‘mima’);
#set password for (‘mima’);
#flush privileges;
#change master to master_host='master_ip',master_user='username',master_password='mima';
      #链接主mysql
#start slave;
#show slave status;
测试
在主mysql上建立一个或表,查看从是否自动‘复制’的过来
 
主主 的模式其实就是两边都是主,同时互为主从,可以简单的理解为把主从的配置文件整合一下就行了~~
主主模式有一个最大的问题就是当主从都同时向同一张表中写数据时,如果对应的id是自动增加,这是就有了严重的问题,为了解决这个问题,需要设定低端不同的起始值,并指定自动增加的变量为2。

关于mysql中怎么实现主从和主主模式问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI