MySQL 8.0——主从同步

一、MySQL 8.0 主从同步

主从同步的流程(原理):

  1. master 将变动记录到二进制日志文件(binary log)中,即配置文件中 log-bin 指定的文件,这些记录叫做二进制日志事件(binary log events);
  2. master 将二进制日志文件发送给 slave;
  3. slave 通过 I/O 线程读取文件中的内容写到 relay 日志中;
  4. slave 执行 relay 日志中的事件,完成数据在本地的存储。

搭建主从需要注意的事项:

  • 主从服务器操作系统版本和位数一致;
  • Master 和 Slave 数据库版本要一致;
  • Master 和 Slave 数据库中的数据要一致;
  • Master 开启二进制日志, Master 和 Slave 的 server_id 在局域网内必须唯一。

二、MySQL主从搭建

2.1 Master 上的操作

  1. 修改 master 的配置( my.cnf)加入下面的内容:

    [mysqld]
      log-bin=mysql-bin
      # id 必须唯一!!!
      server-id=1
    
  2. 重启 master:

    systemctl restart mysql
    
  3. 在 master 中创建用于主从同步的用户:

    mysql> # 创建用户
    mysql> CREATE USER 'hugh'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
    mysql> # 授权用户
    mysql> GRANT REPLICATION SLAVE ON *.* TO 'hugh'@'%';
    mysql> # 刷新权限
    mysql> FLUSH PRIVILEGES;
    
  4. 查看主服务器状态:

    show master status;
    

    记录下 File 和 Position 的值,之后要用到。

2.2 Slave 上的操作

  1. 修改slave 的配置( my.cnf)加入下面的内容:

    [mysqld]
      # id 必须唯一!!!
      server-id=2
    
  2. 重启 slave:

    systemctl restart mysql
    
  3. 登录 MySQL 并运行以下命令,设置主节点参数

    mysql> CHANGE MASTER TO
    MASTER_HOST='master的IP地址',
    MASTER_USER='hugh',
    MASTER_PASSWORD='123456',
    MASTER_LOG_FILE='binlog.000006',
    MASTER_LOG_POS=856;
    

    最后两行就是我们记录下的 File 和 Position 的值。

  4. 查看主从同步的状态:

    mysql> show slave status\G;
    

    检查下面的信息,都为 yes 才代表搭建成功:

    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
    
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
MySQL主从同步是一种常用的数据库复制技术,用于将一个MySQL数据库的数据和操作同步到其他MySQL数据库上。主从同步可以提高数据库的可用性、可扩展性和数据备份能力。下面是MySQL主从同步的基本原理和步骤: 1. 主从角色:在主从同步中,有一个主数据库(Master)和一个或多个从数据库(Slave)。主数据库负责接收和处理所有的写操作,而从数据库则复制主数据库的数据和操作。 2. 二进制日志(Binary Log):主数据库会将所有的写操作记录在二进制日志中,包括插入、更新和删除等操作。二进制日志是主从同步的基础。 3. 主数据库配置:在主数据库上,需要开启二进制日志功能,并配置一个唯一的服务器ID。这个ID用于标识主数据库。 4. 从数据库配置:在从数据库上,需要配置主数据库的IP地址、端口号和二进制日志文件名等信息。从数据库会连接到主数据库,并请求复制二进制日志。 5. 复制过程:当从数据库连接到主数据库后,主数据库会将二进制日志中的数据和操作发送给从数据库。从数据库会解析并执行这些操作,以保持与主数据库的数据一致性。 6. 异步复制:默认情况下,MySQL主从同步是异步进行的,即主数据库不会等待从数据库执行完操作才返回。这样可以提高主数据库的性能,但也可能导致主从数据的稍许延迟。 7. 监控和故障处理:在主从同步中,需要定期监控主从数据库的状态,确保同步正常。如果出现故障或延迟,需要及时排查和处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

花_城

你的鼓励就是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值