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

ApsaraDB RDS:読み取り専用 ApsaraDB RDS for SQL Server インスタンスの作成

最終更新日:Apr 04, 2025

データベースシステムが大量の読み取りリクエストを受信する場合、1 つ以上の読み取り専用 ApsaraDB RDS for SQL Server インスタンスを作成して、データベースシステムの読み取り機能とアプリケーションのスループットを向上させることができます。ApsaraDB RDS for SQL Server は、ネイティブ SQL Server の Always On アーキテクチャを使用します。ApsaraDB RDS for SQL Server では、プライマリ RDS インスタンスを複製し、読み取り専用 RDS インスタンスを生成するために物理レプリケーションが実装されています。読み取り専用 RDS インスタンスのデータは、プライマリ RDS インスタンスのデータと同じです。プライマリ RDS インスタンスのデータが更新されると、更新は自動的に読み取り専用 RDS インスタンスに同期されます。

説明
  • 読み取り専用 RDS インスタンスの機能、制限、およびシナリオの詳細については、「読み取り専用 ApsaraDB RDS for SQL Server インスタンスの概要」をご参照ください。

  • ApsaraDB RDS for SQL Server は、プライマリ RDS インスタンスが特定の要件を満たしている場合、読み取り専用 RDS インスタンスの高速初期化をサポートしています。これにより、読み取り専用 RDS インスタンスの作成時間が数分に短縮され、プライマリ RDS インスタンスの I/O パフォーマンスに影響を与えません。詳細については、「付録: 読み取り専用 RDS インスタンスの高速初期化の概要」をご参照ください。

前提条件

読み取り専用 RDS インスタンスは、次の要件を満たすプライマリ RDS インスタンスが作成されている場合にのみ作成できます。

  • プライマリ RDS インスタンスは、RDS クラスタ版で SQL Server 2017 EE、RDS クラスタ版で SQL Server 2019 EE、または RDS クラスタ版で SQL Server 2022 EE を実行している。

  • プライマリ RDS インスタンスは、RDS クラスタ版を実行している。

  • プライマリ RDS インスタンスは、企業向け SSD(ESSD)または汎用 ESSD を使用している。

  • RDS インスタンスは、サブスクリプションまたは従量課金の課金方法を使用している。サーバーレス RDS インスタンスは、読み取り専用 RDS インスタンスの作成をサポートしていません。詳細については、「サーバーレス ApsaraDB RDS for SQL Server インスタンス」をご参照ください。

説明
  • プライマリ RDS インスタンスの読み取り専用 RDS インスタンスを作成する前に、プライマリ RDS インスタンスの 基本情報 ページで、プライマリ RDS インスタンスの主要エンジンバージョンまたは RDS エディションを確認する必要があります。プライマリ RDS インスタンスがない場合は、上記の要件を満たすインスタンスを作成します。詳細については、「ApsaraDB RDS for SQL Server インスタンスの作成」をご参照ください。

  • RDS ベーシック版または RDS ハイアベイラビリティ版を実行しているプライマリ RDS インスタンスの読み取り専用 RDS インスタンスを作成する場合は、RDS エディションを RDS クラスタ版にアップグレードしてから、読み取り専用 RDS インスタンスを作成できます。

使用上の注意

  • プライマリ RDS インスタンスの読み取り専用 RDS インスタンスを作成できます。既存のプライマリ RDS インスタンスを読み取り専用 RDS インスタンスに変換することはできません。

  • 読み取り専用 RDS インスタンスを作成すると、システムはセカンダリ RDS インスタンスから読み取り専用 RDS インスタンスにデータを複製します。これにより、プライマリ RDS インスタンスでのワークロードの中断を防ぎます。

  • 読み取り専用 RDS インスタンスの数: プライマリ RDS インスタンスに対して最大 7 つの読み取り専用 RDS インスタンスを作成できます。

  • インスタンスバックアップ: 読み取り専用 RDS インスタンスのバックアップポリシーを構成したり、手動でバックアップを作成したりすることはできません。これらは、プライマリ RDS インスタンスで構成および作成されます。バックアップファイルまたは任意の時点から一時 RDS インスタンスを作成することはできません。バックアップセットを使用して RDS インスタンスを上書きすることはできません。読み取り専用 RDS インスタンスを作成した後、バックアップセットを使用してプライマリ RDS インスタンスを上書きしてデータを復元することはできません。

  • データ移行: 読み取り専用 RDS インスタンスにデータを移行することはできません。

  • データベース管理: 読み取り専用 RDS インスタンスでデータベースを作成または削除することはできません。

  • アカウント管理: 読み取り専用 RDS インスタンスでアカウントを作成または削除したり、アカウントに権限を付与したり、アカウントのパスワードを変更したりすることはできません。

  • 読み取り専用 RDS インスタンスの作成に必要な時間は、プライマリ RDS インスタンスのデータ量と I/O パフォーマンスに正の相関があります。読み取り専用 RDS インスタンスを作成する前に、プライマリ RDS インスタンスのデータ量と I/O パフォーマンスを評価および最適化して、作成時間を短縮することをお勧めします。

  • 読み取り専用 RDS インスタンスのストレージ容量は、プライマリ RDS インスタンスのストレージ容量より小さくすることはできません。

課金ルール

作成した読み取り専用 RDS インスタンスに対して、サブスクリプション課金方法または従量課金方法に基づいて課金されます。詳細については、「料金」をご参照ください。

説明

プライマリ RDS インスタンスの課金方法がサーバーレスの場合、読み取り専用 RDS インスタンスを作成することはできません。

読み取り専用 RDS インスタンスの作成

ApsaraDB RDS コンソールで、または CreateReadOnlyDBInstance 操作を呼び出すことによって、読み取り専用 RDS インスタンスを作成できます。

  1. ApsaraDB RDS コンソールにログインし、インスタンス ページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、RDS インスタンスを見つけて、インスタンス ID をクリックします。

  2. 表示されるページの インスタンスの分布 セクションで、読み取り専用 の右側にある add をクリックします。

    image.png

  3. 課金方法、ストレージ タイプ、ゾーンなどの基本情報を構成します。次に、[次へ: インスタンス構成] をクリックします。

    1. [課金方法] パラメーターを構成します。

      課金方法

      説明

      メリット

      サブスクリプション

      サブスクリプションインスタンスとは、前払い料金を支払うインスタンスです。長期間インスタンスを使用する場合は、[サブスクリプション] 課金方法を選択することをお勧めします。サブスクリプション課金方法を選択する場合は、ページの下部にある [サブスクリプション期間] パラメーターを構成します。

      長期間の使用の場合、サブスクリプション課金方法は従量課金方法よりも費用対効果が高くなります。サブスクリプション期間が長いほど、価格が低くなります。

      従量課金

      従量課金インスタンスの場合は、実際の リソース使用量 に基づいて1時間ごとに課金されます。短期間インスタンスを使用する場合は、[従量課金] 課金方法を選択することをお勧めします。

      [従量課金] RDS インスタンスを作成できます。作成した RDS インスタンスがビジネス要件を満たしていることを確認した後、RDS インスタンスの課金方法を [サブスクリプション] に変更できます。

      従量課金 RDS インスタンスはいつでもリリースできます。従量課金 RDS インスタンスの課金は、インスタンスをリリースした直後に停止します。

    2. [ストレージタイプ] パラメーターを構成します。

      詳細については、「ストレージタイプ」をご参照ください。

    3. [ゾーン] パラメーターを構成します。

      説明
      • 各ゾーンは、リージョン内の独立した物理的な場所です。同じリージョン内のゾーン間に実質的な違いはありません。

      • RDS インスタンスが、アプリケーションがデプロイされている Elastic Compute Service (ECS) インスタンスと同じゾーンにある場合、これらのインスタンスは最適なパフォーマンスを提供できます。RDS インスタンスと ECS インスタンスが同じリージョン内の異なるゾーンにある場合、RDS インスタンスと ECS インスタンスのパフォーマンスは、同じゾーンにある RDS インスタンスと ECS インスタンスのパフォーマンスよりもわずかに低くなります。

    4. [インスタンスタイプ] パラメーターを構成します。

      カテゴリ (専用または汎用インスタンスファミリ) を指定します。次に、CPU コア数、メモリ容量、および最大接続数を指定します。

      インスタンスタイプ

      説明

      メリット

      汎用インスタンスタイプ

      汎用 RDS インスタンスは、割り当てられたすべてのメモリと I/O リソースを占有します。

      汎用 RDS インスタンスは、同じホストにデプロイされている他の汎用 RDS インスタンスと CPU およびストレージリソースを共有します。

      汎用インスタンスは費用対効果が高くなります。

      専用インスタンスタイプ

      専用 RDS インスタンスは、割り当てられたすべての CPU、メモリ、ストレージ、および I/O リソースを占有します。

      説明

      専用ホストインスタンスファミリは、専用インスタンスファミリの最高構成です。専用ホスト RDS インスタンスは、RDS インスタンスがデプロイされているホストのすべての CPU、メモリ、ストレージ、および I/O リソースを排他的に占有します。

      専用インスタンスは、より優れたパフォーマンスと安定性を提供します。

      説明
      • スペックアップするインスタンスタイプを選択します。各インスタンスタイプは、特定の数の CPU コア、メモリ容量、最大接続数、および最大 IOPS をサポートしています。

      • データ同期の I/O パフォーマンスを確保するために、読み取り専用 RDS インスタンスのメモリ容量がプライマリ RDS インスタンスのメモリ容量以上であることを確認することをお勧めします。

    5. [ストレージ容量] パラメーターを構成します。

      RDS インスタンスのストレージ容量。ストレージ容量は、データファイル、システムファイル、アーカイブログファイル、およびトランザクションファイルを保存するために使用されます。[ストレージ容量] パラメーターの有効な値は、指定した [ストレージタイプ] パラメーターと [インスタンスタイプ] パラメーターの値によって異なります。ストレージ容量は 5 GB 単位で調整できます。

      説明
  4. ネットワークタイプ、vSwitch、リソースグループなどのインスタンスリソースを構成します。次に、[次へ: 注文の確認] をクリックします。

    1. ネットワークタイプ パラメーターは、VPC に固定されています。

    2. VPC とプライマリノードの Vswitch パラメーターを設定します。

      RDS インスタンスには、ECS インスタンスが存在する VPC を選択することをお勧めします。 RDS インスタンスと ECS インスタンスが異なる VPC に存在する場合、これらのインスタンスは内部ネットワーク経由で通信できません。

      説明

      同じ VPC 内で異なる vSwitch を使用している場合でも、RDS インスタンスと ECS インスタンスを内部ネットワーク経由で接続できます。

    3. カスタムパラメーターを設定します。特別なビジネス要件がない場合は、これらのパラメーターのデフォルト値を保持できます。

      パラメーター

      説明

      インスタンスリリース保護

      課金方法従量課金に設定した場合、リリース保護機能を有効にすることで、インスタンスの誤ったリリースを防ぐことができます。

      リソースグループ

      デフォルトのリソースグループを使用するか、ビジネス要件に基づいてカスタムリソースグループを選択できます。

      インスタンスの説明

      値は 2 ~ 255 文字で、文字、数字、アンダースコア(_)、ハイフン(-)を含めることができます。文字で始める必要があります。

      システムデータベースの文字セットの照合順序規則を変更する

      プライマリ RDS インスタンスの文字セットの照合順序規則が自動的に使用されます。

  5. [パラメーター構成] セクションで RDS インスタンスの構成を確認し、[数量] パラメーターと [サブスクリプション期間] パラメーターを構成し、[サービス利用規約] を読んで選択し、[今すぐ支払う] をクリックして支払いを完了します。RDS インスタンスの課金方法としてサブスクリプション課金方法を選択した場合にのみ、サブスクリプション期間パラメーターを構成する必要があります。

    説明
    • RDS インスタンスの課金方法としてサブスクリプションを選択する場合は、[自動更新] を選択することをお勧めします。 これにより、RDS インスタンスの更新を忘れた場合でも、ワークロードの中断を防ぐことができます。

    • サーバーレス RDS インスタンスの作成には 1 ~ 10 分かかります。 ページをリフレッシュして、サーバーレス RDS インスタンスを表示できます。

読み取り専用 RDS インスタンスの表示

読み取り専用 RDS インスタンスは、インスタンスページ、必要な RDS インスタンスのクラスタ管理ページ、または必要な RDS インスタンスの基本情報ページで表示できます。

インスタンスページで読み取り専用 RDS インスタンスを表示する

  1. ApsaraDB RDS コンソール にログインします。左側のナビゲーションウィンドウで、インスタンス をクリックします。上部のナビゲーションバーで、読み取り専用 RDS インスタンスが存在するリージョンを選択します。

  2. 読み取り専用 RDS インスタンスを見つけて、インスタンスの ID をクリックします。

基本情報ページで読み取り専用 RDS インスタンスを表示する

プライマリ RDS インスタンスの 基本情報 ページで、読み取り専用 RDS インスタンスを表示できます。

  1. ApsaraDB RDS コンソール にログインします。左側のナビゲーションウィンドウで、インスタンス をクリックします。上部のナビゲーションバーで、プライマリ RDS インスタンスが存在するリージョンを選択します。

  2. プライマリ RDS インスタンスを見つけて、インスタンスの ID をクリックします。

  3. プライマリ RDS インスタンスの 基本情報 ページで、読み取り専用 RDS インスタンスの数にポインターを移動し、表示する読み取り専用 RDS インスタンスの ID をクリックします。

クラスタ管理ページで読み取り専用 RDS インスタンスを表示する

前提条件

読み取り専用 RDS インスタンスが接続されているプライマリ RDS インスタンスの クラスター管理 ページで、読み書き分離機能が有効になっています。詳細については、「読み書き分離を有効にする」をご参照ください。

手順

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

  2. プライマリ RDS インスタンスを見つけて、インスタンスの ID をクリックします。

  3. 左側のナビゲーションウィンドウで、クラスター管理 をクリックします。

  4. 読み取り専用 RDS インスタンスを見つけて、インスタンスの ID をクリックします。

次の手順

読み取り専用 RDS インスタンスが作成された後、読み書き分離を有効にし、読み取り専用 RDS インスタンスの読み取り重みを構成する必要があります。システムは、構成された重み付け比率に基づいて読み取りリクエストを処理します。

よくある質問

読み取り専用 RDS インスタンスの課金方法を変更できますか?

はい、読み取り専用 RDS インスタンスの課金方法を変更できます。詳細については、「従量課金からサブスクリプションへの課金方法の変更」または「サブスクリプションから従量課金への課金方法の変更」をご参照ください。

読み取り専用 RDS インスタンスの構成を変更したり、読み取り専用 RDS インスタンスをリリースしたり、読み取り専用 RDS インスタンスの課金方法を変更したりした後、プライマリ RDS インスタンスは影響を受けますか?

いいえ、プライマリ RDS インスタンスは影響を受けません。

データベースシステムのプライマリ RDS インスタンスでアカウントを作成した後、読み取り専用 RDS インスタンスでアカウントを管理できますか?

いいえ、読み取り専用 RDS インスタンスでアカウントを管理することはできません。アカウントは読み取り専用 RDS インスタンスに対する読み取り権限を持っていますが、書き込み権限はありません。

プライマリ RDS インスタンスに障害が発生した場合、読み取り専用 RDS インスタンスを通常の RDS インスタンスに変換できますか?

いいえ、読み取り専用 RDS インスタンスを通常の RDS インスタンスに変換することはできません。

読み取り専用 RDS インスタンスは手動バックアップまたは自動バックアップをサポートしていますか?

いいえ、読み取り専用 RDS インスタンスは手動バックアップまたは自動バックアップをサポートしていません。バックアップはプライマリ RDS インスタンスで実行されます。読み取り専用 RDS インスタンスのバックアップ設定を構成したり、手動でバックアップを作成したりすることはできません。

読み取り専用 RDS インスタンスは並列レプリケーションをサポートしていますか?

はい、読み取り専用 RDS インスタンスは並列レプリケーションをサポートしています。デフォルトでは、ApsaraDB RDS for SQL Server は並列レプリケーションを使用します。

トランザクションログをクリアするために使用されるメカニズムは何ですか?

RDS インスタンスのトランザクションログは、次のフェーズでクリアされます。

  • ログの切り捨て: ログの切り捨ては、ログバックアップごとに自動的に実行されます。長時間トランザクションが実行された場合、同期待機が発生した場合、またはカーネル関連の問題が発生した場合、ログの切り捨ては有効になりません。

  • ログの縮小: 定期バックアップにはログの縮小が含まれます。ApsaraDB RDS コンソールでログを縮小することができます。

データはどのように読み取り専用 RDS インスタンスに複製されますか? プライマリ RDS インスタンスと読み取り専用 RDS インスタンスの間にレプリケーション遅延が発生した場合、原因は何ですか? また、どのように問題を解決しますか? レプリケーション遅延はどのように表示しますか?

読み取り専用 RDS インスタンスを作成すると、システムはセカンダリ RDS インスタンスから読み取り専用 RDS インスタンスにデータを複製します。読み取り専用 RDS インスタンスが作成されると、プライマリ RDS インスタンスと同じデータが保持されます。プライマリ RDS インスタンスのデータが更新されると、システムはプライマリ RDS インスタンスに接続されているすべての読み取り専用 RDS インスタンスに更新を自動的に同期します。

次のセクションでは、原因と解決策について説明します。

  • 原因: プライマリ RDS インスタンスの仕様が読み取り専用 RDS インスタンスの仕様よりも高い。この場合、プライマリ RDS インスタンスと読み取り専用 RDS インスタンスの間のレプリケーション遅延が大きくなります。

    解決策: 読み取り専用 RDS インスタンスの仕様をアップグレードする

  • 原因: 大量の同時トランザクションが存在する。

    解決策: 大量のトランザクションを確認して処理する。ほとんどの場合、大量のトランザクションは、ロック、低速クエリ、およびコミットされていない一時クエリによって発生します。

  • 原因: カーネルが異常である。

    解決策: 主要エンジンバージョン をアップグレードするか、RDS インスタンスの マイナーエンジンバージョン を更新する。

ApsaraDB RDS for SQL Server の自律型サービス を使用して問題を特定し、レプリケーション遅延を表示できます。また、次のステートメントを実行して、レプリケーション遅延を表示することもできます。

SELECT
    ag.name AS [availability_group_name]
    , d.name AS [database_name]
    , ar.replica_server_name AS [replica_instance_name]
    , drs.truncation_lsn
    , drs.log_send_queue_size
    , drs.redo_queue_size
FROM
    sys.availability_groups ag
    INNER JOIN sys.availability_replicas ar
        ON ar.group_id = ag.group_id
    INNER JOIN sys.dm_hadr_database_replica_states drs
        ON drs.replica_id = ar.replica_id
    INNER JOIN sys.databases d
        ON d.database_id = drs.database_id
WHERE drs.is_local=0
ORDER BY
    ag.name ASC, d.name ASC, drs.truncation_lsn ASC, ar.replica_server_name ASC

RDS エンタープライズ版を実行する RDS for SQL Server インスタンスを作成するときに、読み取り専用インスタンスを作成できないのはなぜですか?

読み取り専用インスタンスは、既存のプライマリ RDS インスタンスにのみ追加できます。次の要件を満たす プライマリ RDS インスタンスを作成してから、プライマリインスタンスに読み取り専用インスタンスを追加する必要があります。

  • プライマリ RDS インスタンスは、RDS クラスタ版で SQL Server 2017 EE、RDS クラスタ版で SQL Server 2019 EE、または RDS クラスタ版で SQL Server 2022 EE を実行している。

  • プライマリ RDS インスタンスは、RDS クラスタ版を実行している。

  • プライマリ RDS インスタンスは、企業向け SSD(ESSD)または汎用 ESSD を使用している。

  • RDS インスタンスは、サブスクリプションまたは従量課金の課金方法を使用している。サーバーレス RDS インスタンス は、読み取り専用 RDS インスタンスの作成をサポートしていません。