メタデータロックとは
メタデータロックとはトランザクションの実行中に、そのトランザクションで利用したスキーマやテーブル定義などのメタデータが変更されないように取得するロックです。
DDLの実行時には、テーブル定義などのメタ情報に対するロックである、排他(X)レベルのメタデータロック(MDL)を取得します。
また、ALTER TABLE ADD COLUMN
...などの一部のDDLの実行開始時にXロックを取り、その後他のDMLを並列で実行できるようにロックレベルをダウングレードして、DDL完了時に再度Xロックを取得する仕組みで2回排他ロックを取得したりします。
…
[さらに読む]