在云厂商工作,经常遇到过各种各样备份失败的情况,
本文整理了通过mysqldump工具备份失败的情况与解决思路。
mysqldump: Error: Query execution was interrupted, maximum statement execution time exceeded when trying to dump tablespaces OR
mysqldump: Error 3024: Query execution was interrupted, maximum statement execution time exceeded when dumping table $tb_name at row: xxxx
版本:
MySQL 5.7.8+
原因:
max_execution_time
过小
处理思路:
① 通过hints,增大N值(文档说,在hints用法中,将N改为0为无限制,但我测下来不生效,可设置成一个较大值如999999解决)
SELECT *+ MAX_EXECUTION_TIME(N) */ * FROM t1 LIMIT 100000;
② 修改max_execution_time
值,将该值设置为较大一个值,或设置为0(不限制)
附录:
该参数5.7.8被添加,单位为ms,动态参数,默认为0,设置为0时意味着SELECT超时不被设置(不限制超时时间)。不作用于存储过程中的SELECT语句,并且只作用于只读的SELECT
,如INSERT ... SELECT ...
是不