博客
关于我
mysql主主复制——windows
阅读量:671 次
发布时间:2019-03-17

本文共 1760 字,大约阅读时间需要 5 分钟。

两台主机主主配置指导

在配置两个主机的 MySQL 主主复制时,可以按照以下步骤进行设置:

1. 配置主主复制服务器

在两个 MySQL 服务器中分别修改 my.ini 文件,添加以下配置:

[mysqld]server-id=1  # 每台服务器唯一 ID,需确保不同log-bin=mysql-bin  # 启用二进制日志文件binlog_format=mixed  # 启用混合日志模式expire-logs-days=14  # 二进制日志过期时间(单位:天)sync-binlog=1  # 每提交一次事务将二进制日志刷盘binlog-do-db=test,androidpnserver  # 需要复制的数据库列表binlog-ignore-db=mysql,information_schema,performance_schema  # 需要忽略的数据库auto-increment-increment=10  # 主键自增范围(根据需求调整)auto-increment-offset=1  # 自增开始号(从 1 开始)

注意:server-id 需要在两台服务器上设置不同的 ID,auto-increment-offset 决定主键自增的起始值,auto-increment-increment 决定自增的最大值。

2. 服务器重启

在两台服务器上执行以下命令:

net stop mysqlnet start mysql

3. 重新同步 slave

在两台服务器上执行以下命令重置复制:

STOP SLAVE;RESET SLAVE;FLUSH PRIVILEGES;

4. 创建同步账号

在两台服务器上为对方创建 replication 账号。根据需要设置账号权限(默认为 root,此处示例):

GRANT REPLICATION SLAVE ON *.* TO 'username'@'hostip' IDENTIFIED BY 'password';

5. 查看主服务器状态

在两台服务器上查看目前的主服务器状态:

SHOW MASTER STATUS\G;

重点关注 FilePosition 字段,这些参数用于后续配置。

6. 更换复制位置

在目标服务器上,根据主服务器的状态更换复制位置。例如:

CHANGE MASTER TO    MASTER_HOST='主服务器IP',    MASTER_PORT=3306,    MASTER_USER='账户',    MASTER_PASSWORD='密码',    MASTER_LOG_FILE='主服务器的binlog文件',    MASTER_LOG_POS=主服务器的position值;

确保 MASTER_LOG_FILEMASTER_LOG_POS 是从主服务器获取的最新状态。

7. 启动复制

在目标服务器上启动复制:

START SLAVE;

8. 检查复制状态

在两台服务器上检查复制状态:

SHOW SLAVE STATUS\G;

确认 Slave_IO_RunningSlave_SQL_Running 都为 Yes,表示复制已成功启动。

9. 忽略特定错误

my.ini 中添加忽略错误的配置:

[mysqld]slave-skip-errors=1062,1053,1146  # 忽略特定错误代码# 或者slave-skip-errors=all  # 忽略所有错误

常见错误包括:

  • 1007: 数据库不存在
  • 1032: 拉取冲突
  • 1062: 主键冲突
  • 1146: 表不存在

常见问题解决方案

  • 服务器 UUID 冲突

    查看 UUID 状态:

    SHOW VARIABLES LIKE 'server_uuid';

    如果 UUID 冲突,删除 auto.cnf 文件或重启 MySQL。

  • 跳过事务错误

    使用以下命令跳过特定事务错误:

    SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;

    然后重新启动复制:

    STOP SLAVE;START SLave;
  • 这个步骤注重实际操作细节,重点突出关键配置项和常见问题处理方法,旨在帮助您顺利实现主主复制功能。

    转载地址:http://pjgqz.baihongyu.com/

    你可能感兴趣的文章
    【毕设-STM32f103寄存器版本】智能防盗系统
    查看>>
    Vue Itea软件里直接npm run build 报错npm ERR! missing script :build
    查看>>
    勒索病毒Kraken2.0.7分析
    查看>>
    MySQL错误1366处理方法
    查看>>
    Error running Address localhost:1099 is already in use(已解决)
    查看>>
    pytorch深度学习中每个epoch运行时间的统计代码
    查看>>
    VxWorks 操作系统学习笔记
    查看>>
    链表插入和删除算法
    查看>>
    断言(assert)的用法
    查看>>
    主机与虚拟机(ubuntu)可以互ping,虚拟机不能上网解决办法
    查看>>
    驱动程序之_1_字符设备_13_USB设备_1_基本概念
    查看>>
    wxPython下载安装教程
    查看>>
    HERest源码解析
    查看>>
    java 原型模式(大话设计模式)
    查看>>
    微机原理 6-计算机中常用的数制
    查看>>
    web访问ejb测试 详解
    查看>>
    window系统下安装使用curl命令工具
    查看>>
    假如计算机是中国人发明的,那代码应该这么写
    查看>>
    神器 Codelf !
    查看>>
    趣图:会算法和不会算法的区别
    查看>>