玖叶教程网

前端编程开发入门

MySQL主从复制的过程及原理

MySQL主从复制中, 主机(master)对外工作, 而从机(Slave)对内进行备份.

  • 配置:在配置文件[mysqld]段下添加:

# 启用二进制日志

log-bin=mysql-bin

# 服务器唯一ID, 一般取IP最后一段

server-id = 133

  • 登录客户端, 给从机授备份权限:

grant replication slave on . to '从机MySQL用户名'@'从机IP' identified by '从机MySQL密码';

  • 从服务器配置, 修改my.conf文件,[mysqld]server-id=135在从机上执行:

change master to master_host = '192.168.10.135', master_port= 3306, master_user='', master_password='', mysql_log_file='', master_log_pos=123(此值为从binlog的哪个位置开始复制)


mysql复制的优点:

  • 如果主库出现问题,可以快速切换到从库提供服务
  • 可以在从库执行查询操作(更新不频繁的数据),降低主库的访问压力
  • 可以在从库进行备份,以免备份期间影响主库的服务

主从复制原理:

  • mysql在提交时会把变更存在binlog日志中;
  • mysql推送二进制文件binlog到从库relay log,从库根据relay log做数据变更

共3个线程: Binlog dump线程(主库), I/O线程和SQL线程(从库)

  • 当启动复制(start slave)时, 创建I/O线程连接主库
  • 主库创建Binlog dump线程读取事件发送到I/O线程
  • I/O线程读取到数据放入从机的relay log中
  • 之后从机的SQL线程读取中继日志更新数据库

MySQL相关文章推荐:

  • MySql 解析顺序
  • MySQL事务隔离级别
  • MySQL日志(错误日志, 二进制日志, 慢查询日志等)介绍
  • MySQL的多版本并发控制(MVCC)
  • MySQL 索引(单列索引, 组合索引, 全文索引)及索引失效
  • MySQL索引数据结构
  • MySQL char和varchar的区别
  • MySQL主从复制的过程及原理
  • MySQL优化
  • 发表评论:

    控制面板
    您好,欢迎到访网站!
      查看权限
    网站分类
    最新留言