パフォーマンスの問題のあるSQL文を取得する方法 1. ユーザーからのフィードバックを通じてパフォーマンスに問題があるSQL文を取得する スロークエリログを使用してパフォーマンスの問題のあるSQLステートメントを取得する まず、遅いクエリに関連するパラメータを紹介しましょう。 1. slow_query_log はカスタムスロークエリログ設定を開始します。これは、MySQL コマンドラインから設定できます: set global slow_query_log=on 2. slow_query_log_file は、スロークエリログの保存パスとファイルを指定します。ログストレージとデータストレージは別々に保存することをお勧めします。 3. long_query_timeはスロークエリログのSQL実行時間を記録する閾値を指定する。①条件に合うSQLを全て記録する 4. log_queries_not_using_indexes インデックスを使用しないSQLをログに記録するかどうか 5. log_output はスローログクエリの保存形式を設定します(ファイルとして保存する必要がある場合は、FILE に変更してください) 低速クエリ使用ログに記録される情報
パフォーマンスの問題のあるSQLを取得するために低速クエリを使用する よく使われるスロークエリログ分析ツール (mysqldumpslow) 遅いクエリログの例 低速クエリ関連の構成設定 分析結果を表示するためのコマンドライン実行パラメータ
よく使われるスロークエリログ分析ツール (pt-query-digest) ツールを使用する前に、まずツールをインストールする必要があります。すでにツールをお持ちの場合は、次のインストール手順をスキップできます。 3. ツールキットをインストールする スロークエリログを分析するためのコマンドを実行する ]# pt-query-digest --user=root --password=redhat --host=127.0.0.1 slow-mysql > slow.rep MySQLサーバがクエリ要求を処理するプロセス全体
クエリキャッシュがSQLパフォーマンスに与える影響
クエリキャッシュのパラメータの最適化 query_cache_typeはクエリキャッシュが使用可能かどうかを設定します 注: DEMAND は、クエリ ステートメントで SQL-CACHE と SQL_NO_CACHE のみが使用され、キャッシュが必要かどうかが制御されることを意味します。 query_cache_sizeはクエリキャッシュのメモリサイズを設定します query_cache_limitはクエリキャッシュの利用可能なストレージの最大値を設定します。 query_cache_wlock_invalidate は、テーブルがロックされた後にキャッシュされたデータを返すかどうかを設定します (このオプションはデフォルトでは無効になっており、推奨されています) query_cache_min_res_unitはクエリキャッシュによって割り当てられるメモリブロックの最小値を設定します。 MySQLが誤った実行計画を生成する原因
MySQLオプティマイザが最適化できるSQLタイプ 1. テーブルの関連付け順序を再定義します。オプティマイザは、統計情報に基づいてテーブルの関連付け順序を決定します。 2. 外部リンクを内部リンクに変換する 3. 同等の変換規則を使用する 4. count()、min()、max()を最適化する 5. 式を定数式に変換する 6. 同等の変換規則を使用する 7. サブクエリの最適化 8. in()条件を最適化する クエリ処理のさまざまな段階で費やされた時間を判断する方法 プロファイルの使用 プロファイリングを 1 に設定します。 クエリ N のプロファイルを表示します。 クエリの各段階にかかる時間 プロファイルを使用して、ステートメントに費やされた時間を表示します 特定のSQLクエリの最適化 1. マスタースレーブ切り替えの原理を利用して、大きなテーブルのテーブル構造を変更します。たとえば、スレーブサーバーで変更し、変更が完了したらマスタースレーブ切り替えを実行し、元のマスターで大きなテーブルを変更します。一定のリスクがあります。 大きなテーブルを変更するには、pt-online-schema-changeコマンドを使用します。具体的な操作は次の図に示されています。 上図のパラメータの説明
オリジナル作品、転載する場合は出典を明記してください 以下もご興味があるかもしれません:
|
<<: LinuxサーバにおけるNginxとApacheの共存の実装方法の分析
>>: JS と Nodejs におけるイベント駆動型開発についての簡単な説明
ネットワークが分離されているため、MySQL は yum を使用してインストールできません。ここでは...
IDC のサーバーの /partition 使用率がいっぱいです。 100% に到達しました!確認し...
最初のステップ: VMwareで、「編集」-「仮想ネットワークエディタ」をクリックします。下図に示す...
環境ホスト名IPアドレス仕えるジェンキンス192.168.216.200トムキャット、ジェンキンスサ...
構文フォーマット: row_number() over(partition by grouping ...
目次前面に書かれたルータ.jsonルート生成メニュー生成効果要約する前面に書かれたルートを繰り返し記...
目次序文: 1. イベント ループとタスク キューの理由: 2. イベントループメカニズム: 3. ...
Linux のファイル権限まず、現在のディレクトリ内のファイルの内容を確認しましょう。 ls -l ...
1. はじめに最近、開発者が誤ってデータを削除したり更新したりするケースがよくあります。今回もまた問...
これは新しいバージョンではもう不可能なようで、推奨されません。そうでない場合は、ソフト リンクを直接...
ソースコード(一部のクラスは削除されています):コードをコピーコードは次のとおりです。 <テー...
目次ポータルエラー境界処理エラー境界を使用しない場合はどうなりますか?注記ポータルスロットとも言えま...
目次1. ディレクティブカスタムディレクティブ2. ミックスイン3. 継承を拡張する4. 提供して注...
エラー 1290 (HY000) : MySQL サーバーは –secure-file-priv オ...
目次1. インストール環境2. インストール手順ステップ1: インストールパッケージをダウンロードす...