没有合适的资源?快使用搜索试试~ 我知道了~
MySQL主主双向同步测试报告.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 165 浏览量
2022-07-14
08:24:30
上传
评论
收藏 1.28MB PDF 举报
温馨提示
试读
15页
MySQL主主双向同步测试报告.pdf
资源推荐
资源详情
资源评论
MySQL 主-主双向同步
测试报告
一、测试环境
服务器 1(Master1):
IP 地址: 192.168.0.20,操作系统: Windows XP SP3 , MySQL 版本: 5.5.11
服务器 2(Master2):
IP 地址: 192.168.0.252,操作系统: Windows XP SP3,MySQL 版本: 5.5.11
前提条件:服务器 1 和服务器 2 中 MySQL 数据库的个数、名称,数据表的个数、名
称、结果强烈建议一致,并且 MySQL 的版本保证一致,且在 5.0 以上。
Linux 系统下配置方法与 Windows 系统相同,只是需要注意配置文件为 my.cnf,且配
置文件中一定要注意将 bind-address=127.0.0.1 注释, 否则,远程无法登录 MySQL 数据库,
更谈不上同步。
二、同步原理
两台数据库服务器既为主服务器, 亦为从服务器。 某一时刻只允许某台服务器进行数据
更新操作,另外一台服务器同步数据。
换言之,两台服务器互为对方的主服务器,亦互为对方的从服务器。
主服务器用于数据更新或者(和)查询操作,从服务器用于数据同步和查询操作。
三、服务器配置
1)在服务器 1 上为服务器 2 授权同步账户
执行 SQL 指令:
mysql> GRANT REPLICATION SLAVE ON *.* TO ‘SlaveRepl1’@’192.168.0.252’
IDENTIFIED BY ‘123456’;
mysql> FLUSH PRIVILEGES;
图 1 为服务器 2 授权同步账户
2)在服务器 2 上为服务器 1 授权同步账户
执行 SQL 指令:
mysql> GRANT REPLICATION SLAVE ON *.* TO ‘SlaveRepl2 ’@’192.168.0.20’
IDENTIFIED BY ‘123456’;
mysql> FLUSH PRIVILEGES;
图 2 为服务器 1 授权同步账户
3)停止服务器 1 和服务器 2 上 MySQL 数据库服务
4)修改服务器 1 和服务器 2 的配置文件 my.ini (Linux 下为 my.cnf)
A)服务器 1
[mysqld]
log-bin = mysql-bin #记录二进制日志文件
server-id = 1 #服务器 ID 标识,每台服务器必须唯一
binlog-ignore-db = mysql #通知主服务器忽略记录二进制日志的数据库
replicate-ignore-db = mysql #通知从服务器忽略同步复制的数据库
log-slave-updates #通知从服务器将更新记录二进制日志文件
sync_binlog = 1 #保证事务 InnoDB 复制设置的
innodb_flush_log_at_trx_commit = 1# 最大可能的耐受性和一致性
auto_increment_increment = 2 #控制自增列列值增加的间隔
auto_increment_offset = 1 #控制自增列列值的起点
log-warnings #输出更详细的执行操作信息
A)服务器 2
[mysqld]
log-bin = mysql-bin #记录二进制日志文件
server-id = 2 #服务器 ID 标识,每台服务器必须唯一
binlog-ignore-db = mysql #通知主服务器忽略记录二进制日志的数据库
replicate-ignore-db = mysql #通知从服务器忽略同步复制的数据库
log-slave-updates #通知从服务器将更新记录二进制日志文件
sync_binlog = 1 #保证事务 InnoDB 复制设置的
innodb_flush_log_at_trx_commit = 1# 最大可能的耐受性和一致性
auto_increment_increment = 2 #控制自增列列值增加的间隔
auto_increment_offset = 2 #控制自增列列值的起点
log-warnings #输出更详细的执行操作信息
注:
::红色部分非常重要,如果一个服务器当掉的话,另外一个服务器马上接管;
::紫红色部分标识服务器频繁二进制日志文件,保证一条服务器当掉的话,日志刷新到另外
一台,最大限度保证数据的同步;
:: 每 台 服 务 器 配 置 的 auto_increment_offset 必 须 不 一 样 , 其 最 大 值 建 议 与
auto_increment_increment 相同。一个数据库复制同步群中,有多少台主服务器(或者预
期会转化为主服务器) ,auto_increment_increment 就设置多少,且每台服务器上的设置值
必须保证一致;
::根据需要配置忽略同步复制的数据库,有多少个数据库需要忽略,则需配置多少行
binlog-ignore-db 和 replicate-ignore-db 。如果每个数据库欲保留其本身独立的权限分配和
系统参数,建议将系统数据库 mysql 、information_schema 、performance_schema 忽略同
步复制;
5)启动服务器 1 和服务器 2 上 MySQL 数据库服务。
6)获取服务器主数据库状态
A)参照图 3 所示,获取服务器 1 的状态。
图 3 服务器 1 主数据库状态
File:mysql-bin.000009;
Position: 107;
B)参照图 4 所示,获取服务器 2 状态。
图 3 服务器 2 主数据库状态
File:mysql-bin.000003;
Position: 107;
注意:
1)如果有重要应用数据存在,建议执行完该步骤后,备份各自的数据库,有备无患。
2)获取主数据库状态后,请确保服务器没有更新操作(创建 /修改 /删除数据库、数据
表、数据字段,插入 /更新 /删除数据),否则,请务必不要执行 UNLOCK TABLES ,直到同
步模式全部配置完毕。
7)停止所有 Slave 进程,并修改主服务器指向参数
A)服务器 1 对应的主服务器为服务器 2,修改主服务器参数如图 4 所示。
图 4 服务器 1 对应主服务器指向参数
B)服务器 2 对应的主服务器为服务器 1,修改主服务器参数如图 5 所示。
剩余14页未读,继续阅读
资源评论
xhr131452007
- 粉丝: 7
- 资源: 14万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功