TL;DR
- MySQL 8.0(細かくは8.0.4っぽい)とそれ以降は「外部キー制約を持っているテーブルにSELECTするとそのテーブルの親テーブルにもメタデータロック(MDL)を置くようになった」
- MDLであるがゆえに foreign_key_checks をOFFにしようが 無効化はできない
- MySQL :: WL#6049: Meta-data locking for FOREIGN KEY tables
-
WL#6049 “Meta-data locking for FOREIGN KEY
tables” and WL#11059 · mysql/mysql-server@6626f76
- これ以降にもいくつかコミットが続いている …