MYSQLが遅かったとき、原因究明のため調べたこと
MYSQLが遅かったとき、原因究明のため調べたこと
ターミナルでMYSQLに接続して・・・
1.show processlistでQUERYの実行時間を調べる
2.innodb_thread_concurrencyを確認
InnoDB の処理を同時に実行できるスレッド数の上限値
コマンド
-------------------------------
show variables like '%thread%'
-------------------------------
上限なしの0なので問題なし
3.max_connectionsを確認
max_connectionsは同時接続数の最大値
コマンド
-------------------------------
show variables like '%conection%'
-------------------------------
151と出たので問題なし
4.mysqladminコマンドでMySQLサーバの状態を調べる
ディレクトリ移動(xamppの場合)
-------------------------------
C:\xampp\mysql\bin
-------------------------------
コマンド(パスワードなし)
-------------------------------
mysqladmin status
-------------------------------
コマンド(パスワードあり、xamppの場合)
-------------------------------
mysqladmin status -u ユーザー名 -p
-------------------------------
詳しく見る場合
-------------------------------
mysqladmin mysqladmin extended-status
-------------------------------
こちらを参考にした
エラーが出てることに気づいたので、
-------------------------------
lock wait timeout exceeded; try restarting transaction
-------------------------------
ロックの待ち時間を確認してみる。
コマンド
-------------------------------
show variables like '%timeout%'
-------------------------------
innodb_lock_wait_timeoutが50秒であることを確認。
この件は、テーブルにインデックスをつけることで問題は解決した。
こちら
ただの覚書でした。
カテゴリー:mysql