パフォーマンスの問題のある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 におけるイベント駆動型開発についての簡単な説明
情報を探すインターネットで見つかったいくつかの方法: autocomplete="off&...
WeChatミニプログラムはますます人気が高まっています。多くの大学生が独学で学んでいるのも見てきま...
参考までに、Javascript を使用して広告を閉じる方法に関するケース スタディを示します。詳細...
問題の説明: docker run -p 19918:19918/tcp -v /etc/local...
背景ファイルの作成時刻を取得する必要がある場合があります。例えば: 「xtrabackup スキーマ...
目次1. Vue環境を構築する2. Vue スキャフォールディングツール3. プロジェクトを作成する...
ここでは、dockerがインストールされたcentosサーバーを紹介し、リモートリンクサービスを開始...
目次序文コアコードコードのファイル表示部分序文この記事では主に、Vue プロジェクトでの添付ファイル...
目次シナリオコードの実装要約:シナリオ最近、ElementUI をベースにしたバックグラウンド管理シ...
恥ずかしながら、このようなよく使われるチェックボックスのスタイルを変更するために、Baidu で長い...
目次概要0. JavaScriptとWeb開発の基礎1. Vueの基本概念Vue コア機能コンポーネ...
まず、MySQL とは何かを理解しましょう。 MySQL は、スウェーデンの会社 MySQL AB ...
XHTML には似た機能を持つタグがいくつかあります。もちろん、ここでの類似性とは意味の類似性を指...
1. Docker環境を構築する1. Dockerfileを作成する Centos:latest か...
目次1. js整数の演算2. ネイティブアラートを書き換えてポップアップボックスの数を記録する3. ...