SET [GLOBAL | SESSION] TRANSACTION ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE }
この構文では、トランザクションの分離レベルが、グローバルなセッション全体または次のトランザクションのどちらかとして設定されます。
デフォルトの動作では、次の(まだ開始されていない)トランザクションの分離レベルが設定されます。このステートメントに
GLOBAL
キーワードを使用すると、それ以降に作成されるすべての新しい接続(既存の接続は対象外)に対してグローバルにデフォルトのトランザクションレベルが設定されます。
これを行うには、SUPER
権限が必要です。SESSION
キーワードを使用すると、現在の接続で実行されるすべての新しいトランザクションに対してデフォルトのトランザクションレベルが設定されます。
InnoDB
トランザクションの各分離レベルについては、項7.5.9.1. 「InnoDB と SET ... TRANSACTION ISOLATION LEVEL ...
」
を参照してください。MySQL 4.0.5 以降、InnoDB
ではこれらの各レベルをサポートしています。デフォルトのレベルは
REPEATABLE READ
です。
mysqld
のデフォルトのグローバル分離レベルは、--transaction-isolation=...
で設定することができます。 See
項4.1.1. 「mysqld
コマンドラインオプション」。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.