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

Database Autonomy Service:自動 SQL 最適化

最終更新日:Jun 21, 2026

低速または非効率な SQL クエリがアプリケーションのパフォーマンスに影響を与える場合、これらを最適化する必要があります。Database Autonomy Service (DAS) は自動 SQL 最適化をサポートしています。問題のあるクエリを自動的に識別し、インデックスの推奨事項を生成し、テーブルロックを発生させることなくインデックスを作成することで、従来の最適化手法よりも効率的な代替手段を提供します。

仕組み

MySQL カーネルのネイティブなオンライン DDL (データ定義言語) 機能を使用します。このプロセスにより、従来のインデックス作成方法で発生する可能性のある長時間のテーブルロックを防ぎます。詳細については、「SQL 最適化技術」をご参照ください。

前提条件

データベース

リージョン

  • ApsaraDB RDS for MySQL High-availability Edition、Enterprise Edition (three-node)、または Cluster Edition

  • PolarDB for MySQL Cluster Edition

    説明

    PolarDB for MySQL シングルノードクラスター (旧シングルノードインスタンス) はサポートされていません。

  • ApsaraDB MyBase for MySQL High-availability Edition

China (Hangzhou)、China (Shanghai)、China (Shenzhen)、China (Heyuan)、China (Guangzhou)、China (Qingdao)、China (Beijing)、China (Zhangjiakou)、China (Hohhot)、China (Ulanqab)、China (Nanjing - Local Region - Being Discontinued)China (Fuzhou - Local Region - Being Discontinued)、China (Chengdu)、China (Zhengzhou)、China (Hong Kong)、Japan (Tokyo)、South Korea (Seoul)、Singapore、Malaysia (Kuala Lumpur)、Indonesia (Jakarta)、Philippines (Manila)、Thailand (Bangkok)、UAE (Dubai)、Saudi Arabia (Riyadh)、Germany (Frankfurt)、US (Silicon Valley)、US (Virginia)、UK (London)

課金

DAS O&M サービスをサブスクライブすると、自動 SQL 最適化機能を使用できます。 DAS O&M サービスの料金については、「O&M サービス (旧エコノミー版)」をご参照ください。

制限事項

DAS は、X-Engine を使用するテーブルの SQL クエリの診断と最適化をサポートしていません。

操作手順

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

  2. 左側のナビゲーションウィンドウで、インスタンスモニター.

  3. 表示されるページで、管理するデータベースインスタンスを見つけ、インスタンスIDをクリックします。 インスタンス詳細ページが表示されます。

  4. インスタンスの詳細ページで、自律型センター左側のナビゲーションウィンドウに表示されます。

  5. On the自律型センタータブをクリックします。Autonomy Service Settings右上隅にあります。

  6. 自律機能管理 > Autonomous Function Settings タブで自律機能スイッチをオンにします。次に、[最適化とスロットリング] タブで、[自動インデックス作成および削除] を選択します。

    • [SQL 診断のみ]: DAS は推奨事項のみを提供し、インデックスの作成や変更は行いません。

    • [SQL 診断と自動インデックス作成]: DAS は最適化の推奨事項を自動的に実装します。

      説明

      DAS は、データベースインスタンスの [メンテナンスウィンドウ] または [メンテナンスウィンドウ] 内にインデックスを作成します。

  7. [決定] をクリックします。

  8. 自動 SQL 最適化イベントに関する通知を受信するには、[アラートテンプレート] を設定します。

    システムはアラートテンプレートを推奨し、対応する自律イベントのアラートルールを追加します。画面の指示に従って設定を完了できます。

    説明
    • インスタンスに対してすでにアラートテンプレートを設定している場合は、画面の指示に従って、関連する自律イベントのアラートルールを既存のテンプレートに追加してください。

    • アラートテンプレートとアラートルールを手動で設定する必要がある場合は、「アラートテンプレートを設定する」および「アラートルールを設定する」をご参照ください。

  9. 通知用の [Alert Contact Groups] を選択します。

    • [連絡先の追加] をクリックして、新しいアラート連絡先を追加します。

    • [連絡先グループの作成] をクリックして、新しいアラート連絡先グループを追加します。

    • 既存の連絡先を変更または削除するには、対象の連絡先の横にある [変更] または [削除] をクリックします。

    詳細については、「アラート連絡先を管理する」をご参照ください。

  10. [設定の送信] をクリックし、表示されるダイアログボックスでアラート設定を確認します。

次のステップ

  1. [自律センター] ページで、指定した時間範囲の [自動 SQL 最適化] イベントを表示します。 次に、フィルターバーで [最適化イベント] を選択し、以下のイベントリストで [低速 SQL 診断 (診断最適化)] イベントを探します。

  2. [詳細] をクリックします。[低速 SQL 診断 (診断最適化)] パネルの [根本原因の分析と提案] タブで、[問題のある SQL 文] および [SQL Optimization] セクションの情報を表示できます。SQL 最適化 セクションには、[インデックスの推奨事項] および [文の最適化] の詳細が記載されています。

関連ドキュメント

ターゲット SQL ステートメントを手動で最適化するには、「SQL 最適化」をご参照ください。

よくある質問

  • Q: DAS による自動インデックス作成は、長時間のテーブルロックを引き起こしますか?

    A: いいえ。DAS はネイティブなオンライン DDL 操作を使用してインデックスを作成します。この方法により、長時間のテーブルロックを防ぐことができます。

  • Q: コンソールで検出された低速 SQL クエリを DAS が最適化しないのはなぜですか?

    A: すべての低速ログエントリが最適化されるわけではありません。DAS は、現在の SQL ステートメントに対して推奨事項があり、かつ最適化を適用することでパフォーマンスが大幅に向上すると確認できた場合にのみ、最適化を実行します。SQL ステートメントにすでに適切なインデックスがある場合、または潜在的なパフォーマンス向上が僅かである場合、DAS は最適化を実行しません。

関連 API

API

説明

UpdateAutoSqlOptimizeStatus

複数のインスタンスの自動 SQL 最適化機能を有効化、変更、または無効化します。

GetSqlOptimizeAdvice

DAS の自動 SQL 最適化機能によって生成された診断による推奨事項を照会します。

GetInstanceSqlOptimizeStatistic

指定した期間内の自動 SQL 最適化タスクの統計 (タスクの総数や最大のパフォーマンス向上など) を照会します。