位置: 编程技术 - 正文
推荐整理分享mysql 5.6.14主从复制(也称mysql AB复制)环境配置方法(mysql的主从),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:mysql如何实现主从复制的具体流程,mysql 5.7 主从复制,mysql如何实现主从复制的具体流程,mysql主从复制原理以及架构,mysql主从复制步骤,mysql5.7主从,mysql如何实现主从复制的具体流程,mysql如何实现主从复制的具体流程,内容如对您有帮助,希望把文章链接给更多的朋友!
一、mysql主(称master)从(称slave)复制的原理:
(1).master将数据改变记录到二进制日志(binary log)中,也即是配置文件log-bin指定的文件(这些记录叫做二进制日志事件,binary log events) (2).slave将master的binary log events拷贝到它的中继日志(relay log) (3).slave重做中继日志中的事件,将改变反映它自己的数据(数据重演)
附简要原理图:
二、mysql主从复制支持的类型:
(1).基于语句的复制:在主服务器上执行的SQL语句,在从服务器上执行同样的语句.MySQL默认采用基于语句的复制,效率比较高
word-spacing: 0px"> (2).基于行的复制:把改变的内容直接复制过去,而不关心到底改变该内容是由哪条语句引发的 . 从mysql5.0开始支持word-spacing: 0px"> (3).混合类型的复制: 默认采用基于语句的复制,一旦发现基于语句的无法精确的复制时,就会采用基于行的复制.
三、主从配置需要注意的地方:
(1).主DB server和从DB server数据库的版本一致 (2).主DB server和从DB server数据库数据一致[ 这里就会可以把主的备份在从上还原,也可以直接将主的数据目录拷贝到从的相应数据目录] (3).主DB server开启二进制日志,主DB server和从DB server的server_id都必须唯一
四、主从配置的简要步骤:
附简要示意图:
1.主DB SERVER上的配置
(1).安装数据库 (2).修改数据库配置文件,指明server_id,开启二进制日志(log-bin) (3).启动数据库,查看当前是哪个日志,position号是多少 (4).登陆数据库,授权用户[ip地址为从机IP地址,如果是双向主从,这里的还需要授权本机的IP地址(此时自己的IP地址就是从IP地址)] (5).备份数据库[记得加锁和解锁] (6).传送备份到从DB server上 (7).启动数据库
以下步骤,为单向主从搭建成功,想搭建双向主从需要的步骤:
(1).登陆数据库,指定主DB server的地址,用户,密码等信息[此步仅双向主从时,需要]
(2).开启同步,查看状态
2.从DB SERVER上的配置
(1).安装数据库 (2).修改数据库配置文件,指明server_id[如果是搭建双向主从的话,也要开启二进制日志(log-bin)] (3).启动数据库,还原备份 (4).查看当前是哪个日志,position号是多少[单向主从此步不需要,双向主从需要] (5).指定主DB server的地址,用户,密码等信息 (6).开启同步,查看状态
五、单向主从环境[也称 mysql A/B复制]的搭建案例:
1.主DB server和从DB server都安装相应版本的数据库,我的两台DB server都已经安装好(5.6.版本),都会是双实例,这里就不演示安装,可以参考mysql源码编译安装和mysql多实例配置两篇文章注:两台机器的的selinux都是disable(永久关闭selinux,请修改/etc/selinux/config,将SELINUX改为disabled),防火墙可以选择关闭,开启的话也行[不行的话,添加防火墙策略]2.修改主DB server的配置文件(/etc/my.cnf),开启日志功能,设置server_id值,保证唯一[client为主DB server]
3.启动数据库服务器,并登陆数据库,授予相应的用户用于同步
4.为保证主DB server和从DB server的数据一致,这里采用主备份,从还原来实现初始数据一致
5.从DB server配置文件只需修改一项,其余用命令行做
6.启动数据库,还原备份数据
7.登陆数据库,添加相关参数(主DBserver的ip/端口/同步用户/密码/position号/读取哪个日志文件)
8.下面大家就可以在主DB server上新建一个表,看是否能同步到从DB server上,我这里就不测试了
[注:千万不要在从DB server手动插入数据,那样数据就不一致,主从就会断开,需要重新配置了]
如果有问题,可以尝试关闭IPTABLES(/etc/init.d/iptables stop)和selinux(setenforce 0:临时关闭selinux,永久关闭selinux,请修改/etc/selinux/config,将SELINUX改为disabled)
9.上面所搭建的是单向主从,也是用的比较多的,有人想了解双向主从是如何搭建,其实,就是主DB server和从DB sever都开启日志功能,然后在主DB SERVER执行授权用户[这里授权的是自己作为从服务器,也就是这里的IP地址是主DB server的IP地址],然后再在主DB server上进行chang master操作.有不理解的可以留言询问.
mysql自动停止 Plugin FEDERATED is disabled 的完美解决方法 这两天新买的服务器mysql总是自动停止,查了日志9::[Note]MySQL:Normalshutdown9::[Note]EventScheduler:Purgingthequeue.0events9::InnoDB:Startingshutdown...9::InnoDB:Shut
MySQL数据库-错误 Incorrect column name 出现MySQL数据库-错误Incorrectcolumnname字段名,这个是字段中有空格了,这个只要利用alert或phpmyadmin进入修改即可解决.今天在用NavicatforMySQL给MySQL数据库
mysql Event Scheduler: Failed to open table mysql.event 其实这个错误按字面意思就是不能打开mysql.event表,那么就是权限问题导致的。一般mysql也无法运行。在本地计算机无法启动MySQL服务。错误:进程意外
标签: mysql的主从
本文链接地址:https://www.jiuchutong.com/biancheng/321291.html 转载请保留说明!下一篇:mysql自动停止 Plugin FEDERATED is disabled 的完美解决方法(mysql 自动断开)
友情链接: 武汉网站建设