MySQL 8.0 リファレンスマニュアル


26.51.20 INFORMATION_SCHEMA INNODB_LOCKS テーブル

INNODB_LOCKS テーブルには、InnoDB トランザクションがリクエストしたがまだ取得していない各ロックと、別のトランザクションをブロックしているトランザクションが保持している各ロックに関する情報が表示されます。

注記

このテーブルは非推奨で、MySQL 8.0.1 の時点で削除されています。 代わりに、パフォーマンススキーマ data_locks テーブルを使用してください。 セクション27.12.13.1「data_locks テーブル」を参照してください。

INNODB_LOCKSdata_locks の相違点:

  • トランザクションがロックを保持している場合、INNODB_LOCKS は、別のトランザクションがロックを待機している場合にのみロックを表示します。data_locks では、トランザクションが待機しているかどうかに関係なく、ロックが表示されます。

  • data_locks テーブルには、LOCK_SPACELOCK_PAGE または LOCK_REC に対応するカラムはありません。

  • INNODB_LOCKS テーブルには、グローバル PROCESS 権限が必要です。 data_locks テーブルには、選択元のテーブルに対する SELECT の通常のパフォーマンススキーマ権限が必要です。

次のテーブルに、INNODB_LOCKS カラムから data_locks カラムへのマッピングを示します。 この情報を使用して、あるテーブルから別のテーブルにアプリケーションを移行します。

表 26.4 INNODB_LOCKS から data_locks カラムへのマッピング

INNODB_LOCKS カラム data_locks カラム
LOCK_ID ENGINE_LOCK_ID
LOCK_TRX_ID ENGINE_TRANSACTION_ID
LOCK_MODE LOCK_MODE
LOCK_TYPE LOCK_TYPE
LOCK_TABLE (スキーマ名とテーブル名の組合せ) OBJECT_SCHEMA (スキーマ名)、OBJECT_NAME (テーブル名)
LOCK_INDEX INDEX_NAME
LOCK_SPACE なし
LOCK_PAGE なし
LOCK_REC なし
LOCK_DATA LOCK_DATA


関連キーワード:  テーブル, SCHEMA, INFORMATION, INNODB, LOCK, LOCKS, data, locks, TABLE, InnoDB