mysql怎么看主备 mysql怎么看主从( 三 )


高效的同步MySQL表之间的数据 , 他可以做单向和双向同步的表数据 。他可以同步单个表,也可以同步整个库 。它不同步表结构、索引、或任何其他模式对象 。所以在修复一致性之前需要保证他们表存在 。接着上面的复制情况,主库和从库的aaa表数据不一致,需要修复 。
参数解释:
命令介绍完了,一起解释下执行的效果:通过(--print)打印出来了修复数据的sql语句,可以手动的去从行执行,让他们数据保持一致性 。那能否直接执行?当然可以 , 通过(--execute)
没发现任何异常,然后检查主从数据的一致性:
主库(10.8.23.209)数据:
从库(10.8.23.208)数据:
从库(10.8.23.210)数据:
OK,数据已经保持一致了 。
不过建议还是--print 打印出来的好,这样就可以知道那些数据有问题,可以人为的干预下 。
不然直接执行了,出现问题之后不好处理 。总之还是在处理之前做好数据的备份工作 。
查看mysql是否为双机mysql双机热备实现原理分析 , 在本文经过深思熟虑和多次用不同的方式实测试后 。最后在这篇文章中,用一个小例子来完成mysql双机热备的实现 。
Mysql数据库没有增量备份的机制,当数据量太大的时候备份是一个很大的问题 。还好mysql数据库提供了一种主从备份的机制,其实就是把主数据库的所有的数据同时写到备份的数据库中 。实现mysql数据库的热备份 。
要想实现双机的热备,首先要了解主从数据库服务器的版本的需求 。要实现热备mysql的版本都高于3.2 。还有一个基本的原则就是作为从数据库的数据版本可以高于主服务器数据库的版本,但是不可以低于主服务器的数据库版本 。
当然要实现mysql双机热备 , 除了mysql本身自带的REPLICATION功能可以实现外,也可以用Heartbeat这个开源软件来实现 。不过本文主要还是讲如何用mysql自带的REPLICATION来实现mysql双机热备的功能 。
1. 准备服务器
由于Mysql不同版本之间的(二进制日志)binlog格式可能会不太一样,因此最好的搭配组合是主(Master)服务器的Mysql版本和从(Slave)服务器版本相同或者更低,主服务器的版本肯定不能高于从服务器版本 。
本次我用于测试的两台服务器版本都是Mysql-5.5.17 。
2. Mysql 建立主-从服务器双机热备配置步骤
2.1环境描述
A服务器(主服务器Master):59.151.15.36
B服务器(从服务器Slave):218.206.70.146
主从服务器的Mysql版本皆为5.5.17
Linux环境下
将主服务器需要同步的数据库内容进行备份一份,上传到从服务器上,保证始初时两服务器中数据库内容一致 。
不过这里说明下,由于我是利用Mysql在安装后就有的数据库test进行测试的,所以两台服务器里面是没有建立表的 , 只不分别在test里面建立了同样的一张空表tb_mobile;
Sql语句如下:
mysql create table tb_mobile( mobile VARCHAR(20) comment'手机号码', time timestamp DEFAULT now() comment'时间' );
2.2 主服务器Master配置
2.2.1 创建同步用户
进入mysql操作界面,在主服务器上为从服务器建立一个连接帐户,该帐户必须授予REPLICATION SLAVE权限 。因为从mysql版本3.2以后就可以通过REPLICATION对其进行双机热备的功能操作 。
操作指令如下:
mysql grant replication slave on *.* to 'replicate'@'218.206.70.146' identified by '123456';
mysql flush privileges;
创建好同步连接帐户后 , 我们可以通过在从服务器(Slave)上用replicat帐户对主服务器(Master)数据库进行访问下 , 看下是否能连接成功 。

推荐阅读