千家信息网

Mysql主从复制作用和工作原理

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,一、什么是主从复制主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库,主数据库一般是准实时的业务数据库。在最常用的mysql数据库中,支持单项、异步赋值。在赋值过程中,一个服务器充当
千家信息网最后更新 2026年11月02日Mysql主从复制作用和工作原理

一、什么是主从复制

主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库,主数据库一般是准实时的业务数据库。在最常用的mysql数据库中,支持单项、异步赋值。在赋值过程中,一个服务器充当主服务器,而另外一台服务器充当从服务器;此时主服务器会将更新信息写入到一个特定的二进制文件中。并会维护文件的一个索引用来跟踪日志循环。这个日志可以记录并发送到从服务器的更新中去。当一台从服务器连接到主服务器时,从服务器会通知主服务器从服务器的日志文件中读取最后一次成功更新的位置。然后从服务器会接收从哪个时刻起发生的任何更新,然后锁住并等到主服务器通知新的更新。

二、主从复制的作用

一是确保数据安全;做数据的热备,作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作,避免数据的丢失。
二是提升I/O性能;随着日常生产中业务量越来越大,I/O访问频率越来越高,单机无法满足,此时做多库的存储,有效降低磁盘I/O访问的频率,提高了单个设备的I/O性能。
三是读写分离,使数据库能支持更大的并发;在报表中尤其重要。由于部分报表sql语句非常的慢,导致锁表,影响前台服务。如果前台使用master,报表使用slave,那么报表sql将不会造成前台锁,保证了前台速度。

三、主从复制的原理

主从复制中涉及的文件
主库: binlog
从库:
relaylog 中继日志
master.info 主库信息文件
relaylog.info relaylog应用的信息

主从复制中涉及的三个线程
主库:
Binlog_Dump Thread :
从库:
SLAVE_IO_THREAD
SLAVE_SQL_THREAD

具体原理如图所示:
1.从数据库执行change master to 命令(主数据库的连接信息+复制的起点)
2.从数据库会将以上信息,记录到master.info文件
3.从数据库执行 start slave 命令,立即开启SLAVE_IO_THREAD 和SLAVE_SQL_THREAD这两个线程

  1. 从数据库 SLAVE_SQL_THREAD,读取master.info文件中的信息获取到IP,PORT,User,Pass,binlog的位置信息
  2. 从数据库SLAVE_IO_THREAD请求连接主数据库,主数据库专门提供一个MASTER_DUMP_THREAD,负责和SLAVE_IO_THREAD交互
  3. SLAVE_IO_THREAD根据binlog的位置信息,请求主数据库新的binlog
  4. 主数据库通过Binlog_DUMP_Thread将最新的binlog,通过网络TP给从数据库的SALVE_IO_THREAD
  5. SLAVE_IO_THREAD接收到新的binlog日志,存储到TCP/IP缓存,立即返回ACK给主库,并更新master.info
    9.SLAVE_IO_THREAD将TCP/IP缓存中数据,转储到磁盘relaylog中.
  6. SLAVE_SQL_THREAD读取relay.info中的信息,获取到上次已经应用过的relaylog的位置信息
  7. SLAVE_SQL_THREAD会按照上次的位置点回放最新的relaylog,再次更新relay.info信息
  8. 从数据库会自动purge应用过relay进行定期清理

一旦主从复制构建成功,主数据库当中发生了新的变化,都会通过 Binlog_dump_THREAD发送信号给SLAVE_IO_THREAD,增强了主从复制的实时性.

数据 数据库 服务 服务器 信息 主从 文件 更新 位置 日志 前台 报表 应用 原理 成功 业务 命令 实时 性能 磁盘 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海喔噻互联网科技有限公司 上海卓越科技互联网 互联网科技未来 科技制造互联网公司 深圳科技互联网 九亚互联网科技 互联网教育科技公司vipkid 互联网对科技的发展 赶超互联网科技 微信多开 移动互联网科技公司 互联网科技商业 互联网科技扶贫时间 中国互联网十大科技股排名 内蒙古九一互联网科技 朱啸虎曾投资哪些互联网科技企业 中和天地互联网科技有限公司 互联网科技手机排行榜 陕西九四连强互联网科技有限公司 重庆科技产业互联网有哪些 互联网企业和网络科技有限公司 互联网科技企业 时间互联网络科技 互联网前沿科技 深圳卡尔迅互联网科技有限公司怎么样 互联网科技创新企业排名 央行互联网金融科技公司 互联网高科技行业有哪些企业 陕西九四连强互联网科技有限公司 保山互联网科技靠谱吗 玉溪新华互联网科技怎么选
0