(MySQL)トランザクション隔離レベルの設定
備忘録的メモ。
用語
トランザクション隔離レベル
隔離レベル | Dirty Reads | Non-Repeatable Reads | Phantom Reads | transaction-isolation |
---|---|---|---|---|
READ UNCOMMITTED | 有 | 有 | 有 | READ-UNCOMMITTED |
READ COMMITTED | 無 | 有 | 有 | READ-COMMITTED |
REPEATABLE READ | 無 | 無 | 有(無) | REPEATABLE-READ |
SERIALIZABLE | 無 | 無 | 無 | SERIALIZABLE |
MySQLのデフォルトレベルは、"REPEATABLE READ"です。
MySQLの"REPEATABLE READ"はPhantom Readsが発生しないらしいので、特別な理由がない限りデフォルトで問題ないと思います。
http://dev.mysql.com/doc/refman/5.1/ja/innodb-transaction-isolation.html