MySQL ロック テーブルとは何ですか?
高い同時実行条件下で mysql をより適切に最適化するには、mysql クエリが更新されるときのテーブル ロック メカニズムを理解する必要があります。
MySQL には、ページ レベル、テーブル レベル、行レベルの 3 つのロック レベルがあります。
MyISAM および MEMORY ストレージ エンジンはテーブル レベルのロックを使用し、BDB ストレージ エンジンはページ レベルのロック (ページ レベル
ロック) を使用しますが、テーブル レベルのロックもサポートしています。ストレージ エンジンは行レベルのロック (行レベルのロック) とテーブル レベルのロックの両方をサポートしますが、デフォルトでは行レベルのロックが使用されます。
MySQL のこれら 3 つのロックの特性は、次のように大まかに要約できます:
テーブル レベルのロック: 低いオーバーヘッド、高速なロック、デッドロックなし、大きなロック粒度、高いロック競合の可能性最高および最低の同時実行性。
行レベルのロック: オーバーヘッドが高く、ロックが遅い; デッドロックが発生します; ロックの粒度は最も小さく、ロック競合の可能性は最も低く、同時実行性は最も高くなります。
ページ ロック: コストとロック時間はテーブル ロックと行ロックの間であり、デッドロックが発生します。ロックの粒度はテーブル ロックと行ロックの間で、同時実行性は平均的です。
ロック テーブルを解決するにはどうすればよいですか? MySQLロックテーブルのロックを解除するにはどうすればよいですか?
1. プロセスを確認します。主に、テーブルがロックされているプロセスの ID を見つけます。
SHOW PROCESSLIST;
2. プロセスを強制終了します。テーブルのロックを解除した人 Process ID
KILL 10866;//次の数字はプロセスの IDです
以上がmysqlロックテーブルのロックを解除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。