すべてのプロダクト
Search
ドキュメントセンター

PolarDB:低速 SQL クエリ

最終更新日:May 24, 2024

PolarDB for MySQLは、スローSQL分析機能を提供します。 この機能により、遅いログの傾向と統計を表示できます。 また、低速SQLクエリを修正する方法に関する診断結果と提案を取得することもできます。

手順

  1. にログインします。PolarDBコンソール.

  2. 左側のナビゲーションウィンドウで、クラスター.

  3. 左上隅で、クラスターがデプロイされているリージョンを選択します。

  4. クラスターを見つけて、そのIDをクリックします。

  5. 左側のナビゲーションウィンドウで、診断と最適化 > スロー SQL クエリ を選択します。

  6. On the低速クエリログ分析タブで時間範囲を指定し、指定した時間範囲内のスロークエリログの傾向、統計、および詳細を表示します。

    説明

    時間範囲を指定する場合、終了時刻は開始時刻より後である必要があり、開始時刻と終了時刻の間隔は24時間を超えることはできません。 前月のスロークエリログをクエリできます。

    • 低速クエリログの傾向セクションで、トレンドチャートのある時点をクリックし、その時点でのスロークエリログの統計と詳細を表示できます。

    • ノード数 セクションでは、各ノードのスロークエリの数を表示できます。

    • 低速クエリログのエクスポート をクリックすると、スロークエリログをコンピューターにダウンロードできます。

    • 低速クエリログの統計 タブでは、次の操作を実行できます。

      • 管理するSQLテンプレートを見つけて、操作 列の サンプル をクリックします。 低速クエリログサンプル ダイアログボックスで、SQLテンプレートのスロークエリログサンプルを表示します。

      • 管理するSQLテンプレートを見つけて、最適化 列の 操作 をクリックします。 SQL 診断の最適化 ダイアログボックスで、SQL診断の結果を表示します。

        SQL最適化の提案を受け入れる場合は、右上隅の コピー をクリックし、最適化されたSQL文をデータベースクライアントまたはData Management (DMS) に貼り付けて実行します。 SQL最適化の提案を受け入れない場合は、Cancel をクリックします。

        説明

        DASは、SQL文の複雑さ、テーブル内のデータ量、およびデータベースのワークロードに基づいてSQL診断を実行します。 SQL診断が実行されてから20秒以上後に提案が返されることがあります。 診断が完了すると、SQL診断エンジンは診断結果、最適化の提案、および期待される最適化の利点を提供します。 診断結果に基づいて、提案を受け入れるかどうかを決定できます。

        [Database Expert Service] をクリックして、エキスパートサービスを購入することもできます。 Database Expert Serviceは、緊急支援、健康診断、パフォーマンスの最適化、セキュリティ保証、データ移行など、付加価値のあるプロフェッショナルなデータベースサービスを提供します。

      • 管理するSQLテンプレートを見つけて、操作 列の スロットリングを実行してください。 をクリックします。 SQL スロットリング ダイアログボックスで、パラメーターを設定します。 詳細については、「SQLスロットリング」をご参照ください。

      • 管理するSQLテンプレートを見つけ、操作 列の [IMCI] をクリックして、インメモリ列インデックス (IMCI) 機能のドキュメントを表示します。

        説明
        • データベースインスタンスのIMCIノードが購入されていない場合、SQLテンプレートの最大実行時間が20秒を超え、SQLテンプレートの最大スキャン行数が200,000を超える場合、[IMCI] ボタンが [操作] 列に表示されます。スキャンされた最大行数

        • 大量のデータに対して複雑なクエリが必要な場合は、IMCI機能を使用してクエリのパフォーマンスを向上させることをお勧めします。

    • 低速クエリログの詳細 タブで、管理するSQL文を見つけ、操作 列の 最適化 または スロットリングを実行してください。 をクリックします。 これにより、SQL診断またはSQLスロットリングも実行できます。

    慢日志

よくある質問

Q: スロークエリログに記録されたSQL文の実行完了時間が、実際のSQL文の実行完了時間と異なるのはなぜですか。

A: この問題は通常、低速クエリログに記録されたタイムゾーンが実行されたSQL文によって変更されたときに発生します。 SQL文の実行完了時間は, スロークエリログに記録されているタイムゾーンによって異なります。セッションレベル, データベースレベル, システムレベルです。 データベースにタイムゾーンが指定されている場合、SQL文の実行完了時刻はデータベースのタイムゾーンに基づいて記録されます。 それ以外の场合は, システムのタイムゾーンに基づいてSQL文の実行完了时间が记录されます。 SQL文がセッションレベルでタイムゾーンを変更すると、スロークエリログに記録されたタイムゾーンが適切に変換されない可能性があります。

関連する API 操作

API 操作

説明

DescribeSlowLogRecords

PolarDB for MySQLクラスターのスローログの詳細を照会します。

DescribeDBClusterAuditLogCollector

PolarDB for MySQLクラスターに対してSQLデータコレクターが有効になっているかどうかを照会します。 SQLデータコレクターの機能には、監査ログとSQL Explorerが含まれます。

ModifyDBClusterAuditLogCollector

PolarDB for MySQLクラスターのSQLデータコレクターを有効または無効にします。 SQLデータコレクターの機能には、監査ログとSQL Explorerが含まれます。