diff --git a/notes/MySQL.md b/notes/MySQL.md index 0805d38a2c544f99de3fdcac45f05e85f5d693c7..a51a9dd78d6afabb5cb54dd2778977e74308a336 100644 --- a/notes/MySQL.md +++ b/notes/MySQL.md @@ -22,6 +22,9 @@ * [垂直切分](#垂直切分) * [Sharding 策略](#sharding-策略) * [Sharding 存在的问题](#sharding-存在的问题) +* [六、复制](#六复制) + * [主从复制](#主从复制) + * [读写分离](#读写分离) * [参考资料](#参考资料) @@ -424,6 +427,32 @@ SELECT * FROM post WHERE post.id IN (123,456,567,9098,8904); - [How Sharding Works](https://medium.com/@jeeyoungk/how-sharding-works-b4dec46b3f6) - [大众点评订单系统分库分表实践](https://tech.meituan.com/dianping_order_db_sharding.html) +# 六、复制 + +## 主从复制 + +主要涉及三个线程:binlog 线程、I/O 线程和 SQL 线程。 + +- **binlog 线程** :负责将主服务器上的数据更改写入二进制文件(binlog)中。 +- **I/O 线程** :负责从主服务器上读取二进制日志文件,并写入中继日志中。 +- **SQL 线程** :负责读取中继日志并重放其中的 SQL 语句。 + +