MySQL:初识 Relay log,Master info log , Relay log info log

在 MySQL 主从复制环( Replication )境中,备节点会产生几种文件,如下:

一 Relay log files

relay log 和 binary log 日志类似, 记录了数据库的变化,由一系列文件组成, relaoy log 记录了主节点发来的数据库变化信息,并且由 I/O thread 写入。之后 SQL thread 在备节点上执行 relay log 文件里的事件。

查看 relay log

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[mysql@db2 data]$ ll  
total 173M
-rw-rw---- 1 mysql mysql 56 Dec 5 16:14 auto.cnf
drwxrwxr-x 2 mysql mysql 4.0K Dec 9 16:00 binlog
-rw-r----- 1 mysql root 120K Dec 9 15:59 db2.err
-rw-rw---- 1 mysql mysql 6 Dec 9 15:05 db2.pid
-rw-rw---- 1 mysql mysql 332 Dec 9 16:00 db2-relay-bin.000064
-rw-rw---- 1 mysql mysql 236 Dec 9 16:00 db2-relay-bin.000065
-rw-rw---- 1 mysql mysql 46 Dec 9 16:00 db2-relay-bin.index
-rw-rw---- 1 mysql mysql 2.3K Dec 9 16:00 db2-slow.log
drwx------ 2 mysql mysql 4.0K Dec 4 14:34 francs
-rw-rw---- 1 mysql mysql 76M Dec 9 16:00 ibdata1
-rw-rw---- 1 mysql mysql 48M Dec 9 16:00 ib_logfile0
-rw-rw---- 1 mysql mysql 48M Aug 13 15:08 ib_logfile1
drwxrwxr-x 2 mysql mysql 4.0K Aug 19 10:21 log_bk
drwx------ 2 mysql mysql 4.0K Aug 13 15:08 mysql
-rw-rw---- 1 mysql mysql 0 Aug 19 11:09 on.index
drwx------ 2 mysql mysql 4.0K Aug 13 15:24 performance_schema
drwx------ 2 mysql mysql 4.0K Aug 13 15:08 test

备注: db2-relay-bin 打头的几个文件就是 relay log,其中 db2-relay-bin.index 为索引文件; 默认在主数据目录下,格式为 host_name-relay-bin,不清楚为什么 MySQL 要将 relay log 和 binary log 分开。

二 Master info log

master info log 文件记录了备节点的连接信息,例如用户名,密码等。同时包括主节点信息,目前版本这个文件可以写到 MySQL 系统表中,但需要设置以下参数:

设置备节点 my.cnf

1
master-info-repository=TABLE

备注:之后重启 mysql 服务

查看 slave_master_info 表

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
root@localhost:mysql>select  *  from slave_master_infoG  
* 1. row *
Number_of_lines: 23
Master_log_name: bin-log.000040
Master_log_pos: 120
Host: 192.168.2.37
User_name: rep1
User_password: rep1abcd1243d
Port: 3306
Connect_retry: 60
Enabled_ssl: 0
Ssl_ca:
Ssl_capath:
Ssl_cert:
Ssl_cipher:
Ssl_key:
Ssl_verify_server_cert: 0
Heartbeat: 1800
Bind:
Ignored_server_ids: 0
Uuid: 0c130d47-22bb-11e4-aaaa-000c2986ac80
Retry_count: 86400
Ssl_crl:
Ssl_crlpath:
Enabled_auto_position: 0
1 row in set (0.13 sec)

备注:这里密码 User_password 显示为明文,感觉不是很合适,应该加密下。

三 Relay log info log

relay log info log 文件记录了备节点应用 relay log 文件的进度情况,目前版本这个文件可以写到 MySQL 系统表中,但需要设置以下参数

设置备节点 my.cnf

1
relay_log_info_repository=TABLE

备注:之后重启 mysql 服务

查看 slave_relay_log_info 表

root@localhost:mysql>select  *  from slave_relay_log_infoG  
*  1. row *  
 Number_of_lines:  7  
 Relay_log_name:  ./db2-relay-bin.000064  
 Relay_log_pos:  281  
 Master_log_name: bin-log.000040  
 Master_log_pos:  120  
 Sql_delay:  0  
Number_of_workers:  0  
 Id:  1  
1 row in  set  (0.00 sec)

四 参考

原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/239611.html

(0)
上一篇 2022年2月12日
下一篇 2022年2月12日

相关推荐

发表回复

登录后才能评论