xtrabackup对于flush tables with read lock操作的设置

参数说明

版本  percona-xtrabackup-2.4.8-Linux-x86_64 
--kill-long-queries-timeout=N  指的是执行flush tables with read lock以后,如果flush操作被卡了N秒,则杀掉卡住它的线程,默认0的情况就是不杀死任何卡住flush的sql,直到该sql执行完成
--kill-long-query-type=all|select   被kill的sql种类,默认为全部
--ftwrl-wait-timeout=M  指的是执行flush tables with read lock以前,如果检测到存在长SQL,先等待M秒,如果超过M秒还存在长SQL,则备份报错退出。默认为0表示立即执行flush tables with read lock
--ftwrl-wait-threshold=X 指的是执行flush tables with read lock以前,检测长SQL的方法,如果在执行flush以前存在已经运行了超过X秒的SQL,则将该SQL定义为长SQL,默认60s,如果没有定义-ftwrl-wait-timeout=M,那么这个参数设置无效

使用概述

简单来说,--kill-long-queries-timeout是比较粗暴的设置,--ftwrl-wait-timeout是比较温和的设置,根据业务需求两者选其一就行(因为往往有些垃圾开发写的垃圾SQL,等1小时也没用),当然如果两个参数都设置,那么应该是这样的执行逻辑:
1 执行flush tables with read lock以前,如果存在超过--ftwrl-wait-threshold=X秒的长SQL,则等待M秒,如果M秒后还存在长SQL,则备份报错退出
2 如果M秒后没有长SQL了,则执行flush tables with read lock,执行以后,如果flush 操作被卡了N秒,则杀掉卡住它的线程

参考

https://www.percona.com/doc/percona-xtrabackup/LATEST/innobackupex/innobackupex_option_reference.html

https://www.percona.com/doc/percona-xtrabackup/LATEST/innobackupex/improved_ftwrl.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值