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

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

最終更新日:Dec 12, 2024

データベースシステムが多数の読み取り要求を受信した場合、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 Cluster EditionでSQL Server 2017 EE、RDS Cluster EditionでSQL Server 2019 EE、またはRDS Cluster EditionでSQL Server 2022 EEを実行します。

  • プライマリRDSインスタンスはRDS Cluster Editionを実行します。

  • プライマリRDSインスタンスは、エンタープライズSSD (ESSD) または一般的なESSDを使用します。

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

説明
  • プライマリRDSインスタンス用の読み取り専用RDSインスタンスを作成する前に、プライマリRDSインスタンスの 基本情報 ページで、プライマリRDSインスタンスのメジャーエンジンバージョンまたはRDSエディションを確認する必要があります。

  • RDS Basic EditionまたはRDS High-availability Editionを実行するプライマリRDSインスタンスの読み取り専用RDSインスタンスを作成する場合は、プライマリRDSインスタンスをSQL Server EE (Always On) にアップグレードしてから、読み取り専用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インスタンスのストレージ容量範囲の詳細については、「読み取り専用ApsaraDB RDS For SQL Serverインスタンスタイプ」をご参照ください。

課金ルール

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

説明

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

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

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

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

    image.png

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

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

      課金方法

      説明

      メリット

      サブスクリプション

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

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

      従量課金

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

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

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

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

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

    3. Zoneパラメーターを設定します。

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

      • 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をサポートします。 詳細については、「読み取り専用ApsaraDB RDS For SQL Serverインスタンスのインスタンスタイプ」をご参照ください。

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

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

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

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

      • ローカルSSDストレージタイプを選択した場合、RDSインスタンスのストレージ容量はインスタンスタイプによって異なる場合があります。 標準のSSDまたはESSDストレージタイプを選択した場合、RDSインスタンスのストレージ容量はインスタンスタイプによって変わりません。 詳細については、「プライマリ ApsaraDB RDS インスタンスタイプ」をご参照ください。

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

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

    2. VPCおよび [プライマリノードのvSwitch] パラメーターを設定します。

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

      説明

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

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

      パラメーター

      説明

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

      [課金方法][従量課金] に設定した場合、インスタンスリリース保護 を有効にして、インスタンスの偶発的なリリースを防ぐことができます。 詳細については、「リリース保護機能の有効化または無効化」をご参照ください。

      リソースグループ

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

      インスタンスの説明

      値は2 ~ 255文字で、英数字、アンダースコア (_) 、ハイフン (-) を使用できます。 先頭は文字である必要があります。

      システムデータベースの文字セット照合ルールの変更

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

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

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

    • サーバーレスRDSインスタンスの作成には1〜10分かかります。 ページを更新して、サーバーレスRDSインスタンスを表示できます。

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

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

[インスタンス] ページでの読み取り専用RDSインスタンスの表示

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

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

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

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

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

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

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

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

前提条件

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

手順

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

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

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

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

関連ドキュメント

FAQ

読み取り専用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コンソールでログを縮小することもできます。 詳細については、「ApsaraDB RDS For SQL Serverインスタンスのトランザクションログの縮小」をご参照ください。

読み取り専用RDSインスタンスにデータをレプリケートする方法? レプリケーション待ち時間の原因と問題の解決方法は? レプリケーションのレイテンシを表示するにはどうすればよいですか。

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

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

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

    解決策: 読み取り専用RDSインスタンスの仕様をアップグレードします。 詳細は、「インスタンス仕様の変更」をご参照ください。

  • 原因: 大規模な同時トランザクションが存在します。

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

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

    解決策: RDSインスタンスのメジャーエンジンバージョンをアップグレードするか、マイナーエンジンバージョンを更新します。 詳細については、「メジャーエンジンのバージョンのアップグレード」または「マイナーエンジンバージョンの更新」をご参照ください。

ApsaraDB RDS for SQL Serverの自律性サービスを使用して、問題を特定し、レプリケーションの待ち時間を表示できます。 次のステートメントを実行して、レプリケーションの待ち時間を表示することもできます。 詳細については、「DASの概要」をご参照ください。

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
から
    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
注文によって
    ag.name ASC, d.name ASC, drs.truncation_lsn ASC, ar.replica_server_name ASC