[解決済み】MySQLのCPU使用率が高い【クローズド
質問
最近、サーバーのCPUが非常に高くなることがあります。
CPU負荷は平均13.91(1分)11.72(5分)8.01(15分)、私のサイトのトラフィックはわずかに増加したのみです。
topコマンドを実行した後、MySQLが160%のCPUを使用していることが分かりました!
最近、テーブルを最適化し、持続的接続に切り替えました。 これがMySQLが大量のCPUを使用する原因になっているのでしょうか?
解決方法を教えてください。
まず最初に、持続的接続をオフにすることをお勧めします。
次に、MySQLのユーザーをダブルチェックして、リモートサーバーから接続される可能性がないことを確認したいと思います。これもセキュリティ上、重要なチェック項目です。
3つ目は、「Security(セキュリティ)」を有効にすることです。 MySQLのスロークエリ 長時間かかっているクエリを監視し、キーテーブルを長時間ロックしているクエリがないことを確認するためにログを使用します。
その他にも、CPU負荷が高い状態で以下のクエリを実行することでも確認できます。
SHOW PROCESSLIST;
これは、現在実行中の、あるいは実行待ちのクエリ、そのクエリが何であるか、何をしているかを表示します(このコマンドは、クエリが長すぎる場合は切り捨てますので、SHOW FULL PROCESSLISTを使用してクエリ全体のテキストを見ることができます)。
また、バッファーのサイズなどにも気を配りたいものです。 テーブルキャッシュ , クエリキャッシュ と innodb_buffer_pool_size (innodb テーブルを使用している場合) これらのメモリ割り当てがクエリパフォーマンスに影響を与え、MySQL が CPU を消費する原因となる可能性があるからです。
また、以下の記事も良い情報を含んでいるので、一読しておくとよいでしょう。
また、プロファイラーを使うのも非常に良いアイデアです。アプリケーションの実行中のクエリ、クエリの重複、所要時間などを表示するもので、好きなときにオンにすることができます。このようなものの例としては、私が取り組んでいる PHPプロファイラ が、世の中にはたくさんあります。Drupal、Joomla、Wordpressなどのソフトウェアを使用している場合は、手動で何かを統合する必要なくこの情報を取得できるモジュールが利用できるかもしれないので、コミュニティ内で尋ねてみるとよいでしょう。
関連
-
[解決済み] 親の行を削除または更新できない: 外部キー制約に失敗 - MYSQL
-
[解決済み】MySQLのエラーコードです。MySQL WorkbenchでUPDATE中に1175のエラーが発生しました。
-
[解決済み] 1030 ストレージエンジンからエラー28が発生しました
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法
-
[解決済み] MySQLの複数行を1つのフィールドに連結することはできますか?
-
[解決済み] MySQLでコマンドラインを使用してユーザーアカウントのリストを取得するにはどうすればよいですか?
-
[解決済み] MySQLのクエリ結果をCSV形式で出力するにはどうすればよいですか?
-
[解決済み] ブーリアン値を格納するために使用するMySQLデータ型
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】mysqladmin: 'localhost'でのサーバーへの接続に失敗しました。
-
[解決済み】MySQLのDESCRIBE [table]に相当するSQLiteはあるか?]
-
[解決済み】MySQLのforeachループ
-
[解決済み] "sqlstate[23000]: 整合性制約違反 "を有効な制約で
-
[解決済み] mysql 拡張は非推奨で、将来的に削除されます: 代わりに mysqli か PDO を使ってください [重複] 。
-
[解決済み] ローカルマシンからリモートDBをmysqldumpする方法
-
[解決済み] このMySQLエラー Incorrect column specifier for column COLUMN NAMEを回避するにはどうしたらよいですか?
-
[解決済み] MySQLのエラーコードです。MySQL WorkbenchでUPDATE中に1175が発生する
-
[解決済み] #1136 - 列数が 1 行目の値数と一致しません。
-
[解決済み] DateTime 日付と時間によるグループ化