ホームページ > バックエンド開発 > PHPチュートリアル > MYSQL 接続タイムアウトの原因を確認する方法と MYSQL を監視する方法

MYSQL 接続タイムアウトの原因を確認する方法と MYSQL を監視する方法

WBOY
リリース: 2016-06-13 13:09:46
オリジナル
1019 人が閲覧しました

MYSQL 接続タイムアウトの原因を確認する方法と MYSQL を監視する方法

最近、接続が多すぎるためにデータベースが突然停止したことがわかりました
データベース内の多くのプロセスが待機しており、多くのテーブルがロックされています。 。

1. Web サイトに長時間の接続がないことを確認しました。
2. interactive_timeout と wait_timeout は両方とも 20 秒に設定されています。

問題はデータベース操作によって引き起こされるはずですが、始めてみるべきですか?
リアルタイムで表示せずに、どの接続がinteractive_timeout と wait_timeout で設定された最大値を超えているかを確認する方法はありますか?
またはどの接続で問題が発生しましたか

このように記録すると、原因を見つけやすくなりますか?それとも何か他の方法はありますか?アドバイスをお願いします。 。ありがとうございます

-----解決策---------
通常、速度を上げるためにどのプログラムを改善する必要があるかを監視するために、実行に時間がかかる SQL ステートメントを記録する必要があります。

方法は非常に簡単です:

mysql 設定ファイルを見つけて段落を追加するか、次の段落を見つけてコメントを削除します



SQL コード
log_slow_queries = /var/blogguy.cn/log/mysql/mysql-slow.log
long_query_time = 1
log-queries-not-using-indexes = true


最初 1 行目はレコード ファイルのアドレスを指定し、2 行目は長いクエリの時間とこの時間をチェックした後のレコードを指定し、3 行目はインデックスなしのクエリを記録するかどうかを指定します。

mysql を保存して再起動すると、有効になります。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート