パフォーマンスの問題のある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 におけるイベント駆動型開発についての簡単な説明
目次1. ブロックスコープ1.1. let は var を置き換える1.2. グローバル定数とスレッ...
NFSが提供するサービスマウント: サーバー上で /usr/sbin/rpc.mountd サーボ ...
まずは、以前書いた CSS カルーセルアニメーション効果を見てみましょう。アニメーションの遷移をスム...
BMP は、ハードウェア デバイスに依存せず、広く使用されている画像ファイル形式です。ビットマップ保...
目次インデックスタイプインデックス構造非クラスター化インデックスクエリインデックスカバー要約するイン...
序文アプリケーション シナリオ: おそらく、内部 Web サイトは外部ユーザーにアクセス可能である必...
目次1. クエリ結果を挿入する2. 集計クエリ2.1 はじめに2.2 集計関数2.3 group b...
url-loader をダウンロード 糸を追加 -D URLローダー モジュール: { ルール: {...
この記事では、JD.comのフラッシュセール効果を実現するためのJavaScriptの具体的なコード...
既存のビデオ プレーヤーがニーズを満たせない場合は、ビデオを自分でカプセル化する必要があります。ビデ...
この記事では主に、オブジェクト内のフィールドを削除するための js の実装を紹介し、次のように共有し...
問題を見つける最近、仕事で問題が発生しました。InnoDB タイプの SQL ファイルを実行すると、...
目次序文質問オンラインソリューション序文この記事の内容は私がこの業界に入ったときのメモを元にしている...
Docker ベースのデータベースをデプロイするsudo docker pull influxdb ...
注: Web 開発では、フォームに autocomplete="off" を追加...