データベース テーブル (MIGRATIONS) を使用してスキーマで実行された移行を記録するスキーマ移行コードがあります。スキーマへの新しい移行の実行に関しては、コードがテーブルをロックするため、クラスター内の他のインスタンスも移行を実行できず、実行する必要がある移行を確認して実行します。次の SQL を使用して MIGRATIONS テーブルをロックします。
lock tables migration_log write;
移行のいずれかでテーブルが作成されると、次のエラーが発生します。
Table 'tbl_name' was not locked with LOCK TABLES
LOCK TABLES ステートメントを発行すると、そのステートメントで言及されているテーブルのみを処理できると読みました。
要するに、mysql で 1 つのテーブルをロックし、別のテーブルを作成するにはどうすればよいでしょうか?
それができない場合、私が達成しようとしていることを達成するための別のアプローチを提案できますか?