MySQL主从复制 理论部分

主从复制搭建作用

1 降低主库压力
2 备份主库数据

主从复制通过结构分为

1 一主一从
2 一主多从
3 同源复制
4 树状复制

主从复制原理

主从复制时会产生三个线程

主服务器产生  IO线程  big-log日志

从服务器产生  IO线程  relay-log

bin-log产生数据——IO获取数据——执行relay-log

IO线程——写入——SQL

主库信息

show processlistG

 1 mysql> show master statusG
 2 *************************** 1. row ***************************
 3              File: bin-log.000001
 4          Position: 742
 5      Binlog_Do_DB: 
 6  Binlog_Ignore_DB: 
 7 Executed_Gtid_Set: 
 8 1 row in set (0.00 sec)
 9 
10 mysql> show processlistG;
11 *************************** 1. row ***************************
12      Id: 2                                                            
13    User: root                                                        
14    Host: localhost                                                    
15      db: NULL
16 Command: Query                                                            
17    Time: 0
18   State: starting
19    Info: show processlist
20 *************************** 2. row ***************************
21      Id: 6                                                                                                    id号
22    User: repl                                                                      登陆用户
23    Host: 200.200.2.11:35538                                                        登陆地址
24      db: NULL
25 Command: Binlog Dump                                                               链接线程
26    Time: 1811
27   State: Master has sent all binlog to slave; waiting for more updates             主库以及发送所有的二进制日志,等待更多的更新
28    Info: NULL
29 2 rows in set (0.00 sec)
30 
31 ERROR: 
32 No query specified

从库信息

show slave statusG

 1 mysql> show slave statusG;
 2 *************************** 1. row ***************************
 3                Slave_IO_State: Waiting for master to send event                                        从库的状态
 4                   Master_Host: 200.200.2.10                                                            主库的IP地址
 5                   Master_User: repl                                                                    登陆主库的用户
 6                   Master_Port: 3306                                                                    链接的端口
 7                 Connect_Retry: 60                                                                      超时时间                                
 8               Master_Log_File: bin-log.000001                                                          链接二进制文件
 9           Read_Master_Log_Pos: 898                                                                     读到主库的哪个节点
10                Relay_Log_File: a-relay-bin.000002                                                      中继日志文件
11                 Relay_Log_Pos: 768                                                                     读的结点
12         Relay_Master_Log_File: bin-log.000001                                                          根据哪个二进制日志进行同步
13              Slave_IO_Running: Yes                                                                     IO线程状态
14             Slave_SQL_Running: Yes                                                                     SQL线程状态
15               Replicate_Do_DB: 
16           Replicate_Ignore_DB:                                                                         复制的时候忽略某个数据库
17            Replicate_Do_Table: 
18        Replicate_Ignore_Table: 
19       Replicate_Wild_Do_Table: 
20   Replicate_Wild_Ignore_Table: 
21                    Last_Errno: 0
22                    Last_Error:                                                                         报错信息
23                  Skip_Counter: 0
24           Exec_Master_Log_Pos: 898
25               Relay_Log_Space: 971
26               Until_Condition: None
27                Until_Log_File: 
28                 Until_Log_Pos: 0
29            Master_SSL_Allowed: No
30            Master_SSL_CA_File: 
31            Master_SSL_CA_Path: 
32               Master_SSL_Cert: 
33             Master_SSL_Cipher: 
34                Master_SSL_Key: 
35         Seconds_Behind_Master: 0
36 Master_SSL_Verify_Server_Cert: No
37                 Last_IO_Errno: 0
38                 Last_IO_Error: 
39                Last_SQL_Errno: 0
40                Last_SQL_Error: 
41   Replicate_Ignore_Server_Ids: 
42              Master_Server_Id: 1                                                                    主库id
43                   Master_UUID: d7c8ca7b-3e10-11eb-9c4f-000c2929f556                               主库的唯一标识
44              Master_Info_File: /usr/local/mysql/data/master.info                                    主库的信息文件
45                     SQL_Delay: 0
46           SQL_Remaining_Delay: NULL
47       Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates
48            Master_Retry_Count: 86400
49                   Master_Bind: 
50       Last_IO_Error_Timestamp:                                                                      报错时间
51      Last_SQL_Error_Timestamp:                                                                      报错时间
52                Master_SSL_Crl: 
53            Master_SSL_Crlpath: 
54            Retrieved_Gtid_Set: 
55             Executed_Gtid_Set: 
56                 Auto_Position: 0
57          Replicate_Rewrite_DB: 
58                  Channel_Name: 
59            Master_TLS_Version: 
60 1 row in set (0.00 sec)
61 
62 ERROR: 
63 No query specified
原文地址:https://www.cnblogs.com/bnre/p/14142095.html