||
Xtrabackup 2.4.18 备份报错:Unable to obtain lock. Please try again later.
环境信息
Xtrabackup 2.4.18
MySQL 5.7.21
备份语句指定--ftwrl-wait-timeout=60,备份期间有select语句执行耗时超过60秒,FTWRL等待锁时间大于ftwrl-wait-timeout设置的时间,则获取FTWRL锁超时,不继续备份,打印日志
Unable to obtain lock. Please try again later.
说明:Xtrabackup percona-xtrabackup-80-8.0.x 没有myisam表的情况会使用备份锁不需要FTWRL锁,不存在本案例中相同的问题。
--kill-long-queries-timeout=50
xtrabackup在执行 FLUSH TABLES WITH READ LOCK 被阻塞时,等待指定秒数后进行kill阻塞源query
主要目的就是要保证FLUSH TABLES WITH READ LOCK能够执行成功,所以xtrabackup用户需要process和super权限
--kill-long-query-type=all
什么类型的query会被kill掉,配合上面的参数一起使用。
ALL,就是包含了DDL/DML/SELECT等语句都计入长查询判定的范畴。可以设置为SELECT,则排除其他类型的语句。
select sleep(1200),id from t2;
/usr/bin/xtrabackup --socket=/opt/mysql3307/mysql.sock --user=root --password="xxx" --lock-wait-threshold=40 --lock-wait-query-type=all --lock-wait-timeout=180 --lock-ddl-timeout=60 --ftwrl-wait-timeout=60 --compress --compress-threads=8 --backup --stream=xbstream --target-dir=/nfs/mysqlback/172.17.134.50/3307 1>dt.xb 2>/nfs/mysqlback/172.17.134.50/3307/dt.log
合作电话:010-64087828
社区邮箱:greatsql@greatdb.com