すべてのテーブルをロックする必要があります 、LOCKまで使用したい 解放されます。 completely_different_table_2を指定できます READ LOCKのみ 、これにより、他のプロセスがロックされている間にこのテーブルを読み取ることができます:
LOCK TABLES table_1 WRITE, completely_different_table_2 READ;
PS:MySQLにはそうする理由があります。 LOCKをリクエストした場合 、データの一貫した状態を凍結したい。 completely_different_table_2からデータを読み取る場合 LOCKの内部 、table_1に書き込まれたデータ 何らかの形でこの他のテーブルに依存します。したがって、LOCKの間に誰にもこのテーブルを変更させたくないでしょう。 READ LOCKをリクエストします この2番目のテーブルについても同様です。データがtable_1に書き込まれた場合 他のテーブルに依存しません。LOCKまでクエリを実行しないでください。 がリリースされました。