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秒であることを確認。

この件は、テーブルにインデックスをつけることで問題は解決した。
こちら

ただの覚書でした。