MySQL主从复制

复制原理

在这里插入图片描述

复制过程
  1. master将改变记录到二进制日志(binary log),这些记录过程叫做二进制日志事件,binary log events;
  2. slave将master的binary log events拷贝到它的中继日志(relay log);
  3. slave重做中继日志中的事件,将改变应用到自己的数据中。MySQL复制是异步的且串行化的
复制基本原则
  1. 每个slave只有一个master
  2. 每个slave只能有一个唯一的服务器id
  3. 每个master可以有多个slave
一主一从基本配置
  1. mysql版本一致且后台以服务运行
  2. 主从都配置在[mysqlId]节点下,都是小写
  3. 主机修改my.ini配置文件
    - 主服务器唯一ID【必须】server-id = 1
    - 启用二进制日志【必须】log-bin = 本地路径/mysqlbin
    - 启用错误日志【可选】log-err = 本地路径/mysqlerr
    - 根目录【可选】basedir=“本地路径”
    - 临时目录【可选】tmpdir=“本地路径”
    - 数据目录【可选】datadir=“本地路径/Data”
    - read-only=0 主机读写都可以
    - 设置不要复制的数据【可选】binlog-ignore-db=mysql(mysql出厂默认的不要复制)
    - 设置需要复制的数据库【可选】binlog-do-db=需要复制的数据库名字
  4. 从机修改my.cnf配置文件
    - 从服务器唯一ID【必须】server-id=2
    - 启用二进制日志【可选】
  5. 主从服务器都要关闭防火墙
  6. 主机建立账户并授权slave
    - GRANT REPLICATION SLAVE ON . TO ‘用户名’ @'从机数据库IP‘ IDENTIFIED BY ‘密码’
    - 刷新权限 flush privileges 刷新权限
    - 检查主机状态 show master status【记住2个参数File和Position】
  7. 从机上配置需要复制的主键
    - GRANT MASTER TO MASTER_HOST=‘主机IP’,MASTER_USER=‘主机授权的用户名’,MASTER_PASSWORD=‘授权密码’,MASTER_LOG_FILE=‘FILE名字’,MASTER_LOG_POS=‘Position值’
    - 启动从机复制功能 start slave
    - 查看从机状态 show slave status【Slave_IO_Running:Yes,Slave_SQL_Running:Yes】配置成功。如果有值不是Yes,查看配置的错误日志
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值