Query execution was interrupted, max_statement_time exceeded
版本:5.6.16
群里看见一个问题,在备份的时候,报如下错误:
[root@B28-19-75 bak]# mysqldump -root -p --single-transaction --master-data=2 --databases db1 db2 db3 db4 db5 > db.sql
mysqldump: Error 1882: Query execution was interrupted, max_statement_time exceeded when dumping table `admin_operation_log` at row: 760155
我的max_statement_time参数在配置文件中是没设置的,默认的。 群友设置的是max_statement_time=500
max_statement_time作用:
作用:用于控制查询在MySQL的最长执行时间,如果超过该参数设置时间,查询将会自动失败,默认是不限制。
建议:如果用户希望控制数据库中SQL的执行时间,则可以开启该参数,单位是毫秒。
现象:ERROR 1882: Query execution was interrupted, max_statement_time exceeded
修改参数值:
mysql> set session max_statement_time =0;
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like '%max_statement%';
+------------------------------------------+-------+
| Variable_name | Value |
+------------------------------------------+-------+
| max_statement_time | 0 |
| performance_schema_max_statement_classes | 179 |
+------------------------------------------+-------+
重新备份,不报错:
[root@B28-19-75 bak]# mysqldump -root -p --single-transaction --master-data=2 --databases db1 db2 db3 db4 db5 > db.sql