阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

理解MySQL主从复制之realy_log_recovery

155次阅读
没有评论

共计 786 个字符,预计需要花费 2 分钟才能阅读完成。

该参数是默认打开的,在数据库启动后立即启动自动 relay log 恢复。在恢复过程中,创建一个新的 relay log, 并将 IO 线程初始化到 SQL 线程的位置。

MySQL 运行过程中,如果出现宕机的情况,从库启动后必须能够恢复到已经执行事务的位置,该信息传统上是存在文件中,那么久有可能存在不一致或者损坏的风险。从 MySQL5.7 开始,可以用表来存储这些信息,并发这些表设置为 InnoDB 引擎,通过使用事务型存储引擎,恢复这个信息。可以配置参数 master_info_repository=table 和 relay_log_info_repository=table 使从库信息存储在表中。从库如何从宕机的状态恢复到正确的状态,取决于从库是单线程还是多线程、relay_log_recover 参数的值,以及 master_auto_position 的使用方式。

1、单线程模式的复制

1)当基于 GTID 模式复制的时候,并且设置了 master_auto_position 参数和 relay_log_recover=0,使用该配置,其 relay_log_info_repository 和其他变量的设置都不会影响恢复。

2)当基于传统模式(file position)的情况,请设置 relay_log_recover= 1 和 relay_log_info_repository=table。

2、多线程模式的复制

1)当基于 GTID 模式复制的时候,并且设置了 master_auto_position 和 relay_log_recovery=0, 使用该配置,其 relay_log_info_reposition 和其它变量的设置都不会影响恢复。

2)当基于传统模式复制的时候,请设置 relay_log_recovery=1、sync_relay_log= 1 和 relay_log_info_repository=table。

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-22发表,共计786字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中