本文整理自网络,侵删。
目录
- 一、MySQL主从复制
- 实现细节
- 二、增加一个slave
一、MySQL主从复制
常见的主从架构:
- 一主一从:一个 Master,一个 Slave
- 一主多从:一个 Master,多个 Slave
具体,参考下图:
实现细节
MySQL 在主从同步时,其底层实现细节又是什么?为此后分析主从延迟原因以及优化方案,做好理论准备。
总结来说,MySQL 的主从复制:异步单线程。
Master
上 1 个IO线程
,负责向Slave传输binary log
(binlog
)- Slave上 2 个线程:
IO 线程
和执行SQL的线程
,其中:IO线程
:将获取的日志信息,追加到relay log上;执行SQL的线程
:检测到relay log中内容有更新,则在Slave上执行sql;
特别说明:MySQL 5.6.3 开始支持「
多线程
的主从复制
」,一个数据库
一个线程
,多个数据库
可多个线程
。
完整的 Master & Slave 之间主从复制过程:
二、增加一个slave
需求:目前我的master上有一个数据库ucenter,需要为其增加一台slave(目前有一台slave)
分析:
- 我这里有一个前一天的4:00的数据库备份。
- 有一台已存在的ucenter的slave
- 重点是寻找binlog的时间点
操作:
1、在slave机器上配置slave信息,修改mysql.cfg配置并重启slave数据库
在[mysqld]中添加
replicate-do-db = ucenter #同步的数据库名字 slave-skip-errors=all #同步是忽略错误 server-id = 1112 #和master与其他slave保持不通
2、查找数据库前一天的备份,将其copy到新增的slave机器上,并导库
[root@ucenter_slave /data]# mysql ucenter < ucenter_20171102.sql[root@ucenter_slave /data]# du -sh ucenter_20171102.sql 24G ucenter_20171102.sql
3、定位binlog时间戳(重点)
相关阅读 >>
mysql row_number()与over()函数用法详解
更多相关阅读请进入《mysql》频道 >>

数据库系统概念 第6版
机械工业出版社
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
转载请注明出处:木庄网络博客 » MYSQL增加从库方式介绍
标签:mysql
相关推荐
评论
管理员已关闭评论功能...