first commit
This commit is contained in:
commit
ba848e218d
1001 changed files with 152333 additions and 0 deletions
13
数据库/mysql/主备复制.md
Normal file
13
数据库/mysql/主备复制.md
Normal file
|
@ -0,0 +1,13 @@
|
|||
备库B和主库A之间维持了一个长连接。主库A内部有一个线程,专门用于服务备库B的这个长连接。一个事务日志同步的完整过程如下:
|
||||
|
||||
1.在备库B上通过change master命令,设置主库A的IP、端口、用户名、密码,以及要从哪个位置开始请求binlog,这个位置包含文件名和日志偏移量
|
||||
|
||||
2.在备库B上执行start slave命令,这时备库会启动两个线程,io_thread和sql_thread。其中io_thread负责与主库建立连接
|
||||
|
||||
3.主库A校验完用户名、密码后,开始按照备库B传过来的位置,从本地读取binlog,发给B
|
||||
|
||||
4.备库B拿到binlog后,写到本地文件,称为中转日志
|
||||
|
||||
5.sql_thread读取中转日志,解析出日志里的命令,并执行
|
||||
|
||||
由于多线程复制方案的引入,sql_thread演化成了多个线程
|
Loading…
Add table
Add a link
Reference in a new issue