• MySQL関連のWikiへのリンク
    • MySQL
    • MySQL 5.1
    • MySQL 5.4
    • MySQL/InnoDB
    • MySQL/エラー
    • MySQL/クラスタリング
    • MySQL/サーバ移動
    • MySQL/チューニング
    • MySQL/バージョン
    • MySQL/バックアップ
    • MySQL/プロファイリング
    • MySQL/ベンチマーク
    • MySQL/レプリケーション
    • MySQL/ロック
    • MySQL/制限

  • 現在ロックされているSQLがあるかどうか見るには show processlist; を実行する。
  • ロックではないが、drop database 中は他のDBの更新処理も closing tables 処理(スレッドが変更されたテーブル データをディスクにフラッシュしている、そして使用されたテーブルを閉じている)が激遅になって処理が止まるのに注意!

ロック状態の確認

SELECT * FROM sys.innodb_lock_waits;

調査

  • まずクエリログをファイルに出力するようにする
  • show processlist で確認
  • ロックがかかっているクエリを確認
    SELECT * FROM sys.innodb_lock_waits;
  • sql_kill_blocking_query で対象になっている番号のクエリを確認
  • show processlist では NULL となっていても、クエリログでは確認できる

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-05-24 (火) 14:15:15 (41d)