2012-04-18 10 views
4

MySQLは常にデッドロックを自動的に検出しますか?または、MySQLがデッドロックを処理していると判断できない状況がいくつかあります。Mysqlデッドロック検出

+0

[PHPによるMySQLデッドロック検出](http://stackoverflow.com/questions/1554432/mysql-deadlock-detection-via-php) – Alp

+0

おそらくどのストレージエンジンを使用していますか? InnoDB? –

答えて

3

で、MyISAMテーブル、テーブル・レベルのロッキングストレージエンジンは、deadlock-freeあります。

InnoDBはdeadlock detectionです。

NDBの検出は、タイムアウトによって実行されます。トランザクションにはTransactionDeadlockDetectionTimeoutパラメーターを設定できます。

したがって、ロールバックでもタイムアウトでも、デッドロックは最終的に回復します。

0

これは、自動的にこれを行うことができるように、どのエンジンを使用しているかによって異なります。

以上の説明はドキュメントによればhere.

関連する問題