roidba 一直推崇看官方文档,自己做实验测试,只要这样才能成为一名合格的DBA。

锻炼自己的动手能力。

Kill Idle Transactions (mariadb &percona server 支持)

解决开发写SQL不commit 问题

This feature limits the age of idle transactions, for all transactional storage engines. If a transaction is idle for more seconds than the threshold specified, it will be killed. This prevents users from blocking InnoDB purge by mistake.

In Percona Server 5.7.17-11 this feature has been re-implemented by setting a connection socket read timeout value instead of periodically scanning the internal InnoDB transaction list.

Version Specific Information

5.7.10-1:

Feature ported from Percona Server 5.6

5.7.17-11:

Feature re-implemented using socket timeouts

System Variables

variable innodb_kill_idle_transaction

Version Info:

5.7.17-11 – Variable is now an alias of kill_idle_transaction

Scope:

GLOBAL

Config:

YES

Dynamic:

YES

Variable Type:

INTEGER

Default Value:

0 (disabled)

Units:

Seconds

To enable this feature, set this variable to the desired seconds wait until the transaction is killed. NOTE: This variable has been deprecated and it will be removed in a future major release.

variable kill_idle_transaction

Version Info:

5.7.17-11 – Variable implemented

Scope:

GLOBAL

Config:

YES

Dynamic:

YES

Variable Type:

INTEGER

Default Value:

0 (disabled)

Units:

Seconds

If non-zero, any idle transaction will be killed after being idle for this many seconds.


官网链接

https://www.percona.com/doc/percona-server/LATEST/management/innodb_kill_idle_trx.html