MySQL事務未提交的超時時間指的是在執行MySQL事務時,如果長時間沒有對該事務進行提交操作,則MySQL會自動結束該事務,以避免鎖定資源的情況。如果超過了事務未提交的超時時間,MySQL會將事務標記為死亡事務,并將這些事務回滾,以釋放鎖定的資源。
mysql>show variables like 'innodb_rollback_on_timeout'; +------------------------------+-------+ | Variable_name | Value | +------------------------------+-------+ | innodb_rollback_on_timeout | OFF | +------------------------------+-------+
在MySQL中,默認的事務未提交超時時間為50秒。如果需要修改超時時間,可以使用如下的命令:
mysql>set innodb_lock_wait_timeout=100;
這里的“100”指的是新設置的超時時間,單位為秒。如果需要了解MySQL的事務超時情況,可以通過以下命令進行查詢:
mysql>show engine innodb status\G
在查詢結果中,可以找到“TRANSACTIONS”的一項,其中的“OLDEST”指的是該事務未提交的最長時間,單位為秒。