MySQL的3节点主从同步复制方案测试

上接《MySQL的3节点主从同步复制方案

六.测试主从同步复制

现在我们来测试下,mysql的主从同步。

1.在主库插入测试数据

先在主库MasterA 上给m_s_rep数据库插入和删除2条数据。如下:

mysql> insert into test(id,content) values(3,’data3’);
mysql> insert into test(id,content) values(2,’data2’);
mysql> select * from test;

2.登录MasterB查看数据同步结果

3.登录Slave节点查看数据同步结果

通过上图,我们可以看到从库slave中的m_s_rep数据库和主库master中的m_s_rep数据库,数据是一致。说明主从已经同步复制已经成功。

4.现在我们来查看MasterA的mysql-bin文件的信息

# mysqlbinlog mysql-bin.000003|tail

5.现在我们再来查看MasterB的master.info文件的信息

# cat master.info |more

6.现在我们再来查看Slave的master.info文件的信息

7.主从同步复制测试结束

通过测试,主库的binlog文件的pos位置节点与master.info对比。我们可以发现master.info文件中确实记录了mysql在同步复制时的binlog文件名以及pos位置节点。

七.测试互为主从同步复制

1.在MasterB的m_s_rep库中创建第二张表m_s_rep

我们来创建一张测试用表,来测试MasterA和MasterB互为主从同步测试。

2.查看MasterA的m_s_rep库中是否已经同步m_s_table表

3.查看Slave的m_s_rep库中是否已经同步m_s_table表

4.互为主从同步复制测试结束

至此,本方案已经全部部署测试完成,我想:“MasterA和MasterB无论那个节点宕机,仍能保证生产环境中主从的关系”。无论节点状态如何,为确保数据的一致性,MasterA和MasterB当且仅当只能有一个节点可写。其他节点可通过锁表来禁止往里写入数据,以避免出现脑裂。

思考:

如果在生产环境中,随着业务的增加,不同业务部门的数据库也在增加。那么怎么同步复制新的数据库呢?步骤如下:

MasterA和MasterB主库锁表à修改所有节点中的my.cnf配置文件,增加需要同步复制的数据库名à重启mysql服务à导出MasterA中主库数据库à仅仅在从库创建数据库名à导入MasterA主库的数据库文件到从库中à MasterA和MasterB主库解锁à自此,主库发生变化的数据也会自动同步复制到从库中。

参考博客:http://www.ilanni.com/?p=7992

时间: 2024-10-18 04:55:31

MySQL的3节点主从同步复制方案测试的相关文章

MySQL的3节点主从同步复制方案

上篇文章<为什么要对MySQL做主从同步复制>我们说明了MySQL主从同步的作用,主从同步的原理和主从同步的缺点.下面我们介绍下3节点中:2个节点互为主从,1个节点作为前2个节点的从,用于实现MySQL5.6的3节点主从同步复制方案. 主要步骤如下: 1.配置MasterA端同步复制时所需要的选项 2.在MasterA主库上创建同步复制时的用户并授权 3.MasterA主库锁表 4.记录MasterA主库的binlog以及pos位置节点 5.导出MasterA主库m_s_rep数据库 6.配置

mysql5.5主从同步复制配置

在上篇文章<烂泥:学习mysql数据库主从同步复制原理>中,我们介绍了有关mysql主从复制的基本原理.在这篇文章中,我们来实际测试下mysql5.5的主从同步复制功能. 注意mysql5.1.7以前版本与其以后的版本在主从同步部分参数不同.mysql5.1.7以后的版本中不支持master-connect-retry之类的参数.如果在my.cnf文件中加入该类似的参数,mysql会在下次重启时报错. 说明:主库master与从库slave都是centos6.5 64bit,如下: cat /

烂泥:mysql5.5主从同步复制配置

本文首发于烂泥行天下. 在上篇文章<烂泥:学习mysql数据库主从同步复制原理>中,我们介绍了有关mysql主从复制的基本原理.在这篇文章中,我们来实际测试下mysql5.5的主从同步复制功能. 注意mysql5.1.7以前版本与其以后的版本在主从同步部分参数不同.mysql5.1.7以后的版本中不支持master-connect-retry之类的参数.如果在my.cnf文件中加入该类似的参数,mysql会在下次重启时报错. 说明:主库master与从库slave都是centos6.5 64b

MySQL多实例实现半同步复制

MySQL多实例实现半同步复制 主库1:192.168.40.150 主库2:192.168.40.161 从库(2个MySQL实例):192.168.40.162 一:分别在192.168.40.161和192.168.40.150使用[show master status;]记录当前的复制位置 如下所示 mysql> show master status; +--------------+----------+--------------+------------------+-------

Mysql读写分离与主从数据库设置方案

Mysql读写分离与主从数据库设置方案 亿仁网 18-10-0711:31 Mysql无非四个功能:增,删,改,读.而将增删改和读分离操作.这样有利于提高系统性能.下面是非常直观的操作: 1.配置: 两台服务器同配置的mysql如mysql5.7 PS:如果条件有限,一台也可以,只需要安装两个mysql服务(不同端口如3306,3307),只是这就有点违背效率初衷了 2.代码: 1.一般直接在代码层将mysql操作类的读写如update,insert与select * from进行路由分离.使之

ssdb 主从同步复制配置详细步骤

SSDB 的配置文件是一种层级 key-value 的静态配置文件, 通过一个 TAB 缩进来表示层级关系. 以 '#' 号开始的行是注释.  ssdb的使用遵循redis协议,读写性能都特别快. 有时我们在使用数据库时,像mongodb,redis和一些关系行数据,为了使数据更加安全,作为备份使用我们经常习惯使用主从复制架构,当主机上的数据出现问题时,我们就可以连接到slave机器 也就是另外一台机器会从主机上进行同步数据,如果我们使用linux命令 netstat -apn,会发现slave

烂泥:学习mysql数据库主从同步复制原理

本文由秀依林枫提供友情赞助,首发于烂泥行天下. 说明本篇文章部分转载自互联网. MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对MySQL有更高性能.更高可靠性要求的场合.与之对应的是另一个同步技术是MySQL Cluster,但因为MySQL Cluster配置比较复杂,所以使用者较少. MySQL的Replication是一个异步复制的过程(mysql5.1.7以上版本分为异步复制和半同步两种模式),它是从一个Mysql

mysql数据库主从同步复制原理

MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对MySQL有更高性能.更高可靠性要求的场合.与之对应的是另一个同步技术是MySQL Cluster,但因为MySQL Cluster配置比较复杂,所以使用者较少. MySQL的Replication是一个异步复制的过程(mysql5.1.7以上版本分为异步复制和半同步两种模式),它是从一个Mysql instance(instance英文为实例)(我们称之为Master)复制到

MySQL主从同步(复制)的配置

1.主从复制的原理: *Master,记录数据更改操作 - 启用binlog记录模式 - 允许Slave读取binlog日志 *Slave运行2个同步线程 - Slave_IO:负责连接Master,复制其binlog日志文件到本机的relay-log文件 - Slave_SQL:执行本机relay-log文件里的SQL语句,重现Master的数据操作 2.基本构建思路: 1)初始化现有库:将主库导入从库,确保数据一致性 2)配置Master,主服务器:调整运行参数,授权一个同步用户 3)配置S