Amazon RDS for Microsoft SQL Server - Amazon Relational Database Service

Amazon RDS for Microsoft SQL Server

Amazon RDS は、複数のバージョンやエディションの Microsoft SQL Server をサポートします。以下の表は、メジャーバージョンごとのサポートされている最新のマイナーバージョンを示しています。サポートされているバージョン、エディション、および RDS エンジンのバージョンの詳細なリストについては、「Amazon RDS での Microsoft SQL Server バージョン」を参照してください。

メジャーバージョン サービスパック/ GDR 累積更新 マイナーバージョン ナレッジベース記事 リリース日
SQL Server 2022 GDR CU14

16.0.4140.3

KB5042578 2024 年 9 月 10 日
SQL Server 2019 GDR CU28

15.0.4390.2

KB5042749 2024 年 9 月 10 日
SQL Server 2017 GDR CU31

14.0.3475.1

KB5042215 2024 年 9 月 10 日
SQL Server 2016 SP3 GDR CU14

13.0.6445.1

KB5042207 2024 年 9 月 10 日

SQL Server のライセンスについては、「Amazon RDS での Microsoft SQL Server のライセンス」を参照してください。SQL Server のビルドの詳細については、「最新の SQL Server ビルドに関する情報の検索場所」に関するこの Microsoft のサポート記事を参照してください。

Amazon RDS では、DB インスタンス、DB スナップショット、ポイントインタイムリカバリ、自動バックアップ、手動バックアップを作成できます。SQL Server を実行する DB インスタンスは VPC 内で使用できます。SQL Server を実行している DB インスタンスへの接続に Secure Sockets Layer (SSL) を使用することもできます。さらに、保管時のデータの暗号化に Transparent Data Encryption (TDE) を使用することも可能です。Amazon RDS は現在、SQL Server データベースミラーリング (DBM) または Always On Availability グループ (AG) を、高可用性フェイルオーバーソリューションとして使用することで、SQL Server 向けのマルチ AZ デプロイをサポートしています。

マネージド型サービスを提供するために、Amazon RDS では DB インスタンスへのシェルアクセスはできないように設定されています。また、高度な権限を必要とする特定のシステムプロシージャやシステムテーブルへのアクセスが制限されています。Amazon RDS では、Microsoft SQL Server Management Studio などの標準的な SQL クライアントアプリケーションを使用しての、DB インスタンス上のデータベースに対するアクセスがサポートされています。Amazon RDS では、Telnet、Secure Shell (SSH)、または Windows のリモートデスクトップ接続を使用した、DB インスタンスへの直接的なホストアクセスは許可されません。DB インスタンスを作成すると、マスターユーザーに対して、そのインスタンス上のすべてのユーザーデータベースに対する db_owner ロールが割り当てられ、バックアップに使用するアクセス許可を除き、すべてのデータベースレベルのアクセス許可が付与されます。バックアップは、Amazon RDS により自動的に実行されます。

最初の DB インスタンスを作成する前に、このガイドの「セットアップ」セクションの手順を完了してください。詳細については、「Amazon RDS 環境のセットアップ」を参照してください。

トピック

Amazon RDS の Microsoft SQL Server 用の一般的な管理タスク

以下に示しているのは、Amazon RDS for SQL Server DB インスタンスで実行する一般的な管理タスクと、各タスクの関連ドキュメントへのリンクです。

SQL Server DB インスタンスを使用するための高度な管理タスクがあります。詳細については、次のドキュメントを参照してください。

Microsoft SQL Server DB インスタンスの制限

DB インスタンスへの Microsoft SQL Server の Amazon RDS 実装には、注意が必要ないくつかの制限があります。

  • DB インスタンスでサポートされるデータベースの最大数は、インスタンスクラスタイプと可用性モードのシングル AZ、マルチ AZ データベースミラーリング (DBM)、またはマルチ AZ 可用性グループ (AG) によって異なります。Microsoft SQL Server システムは、この制限にはカウントされません。

    次の表は、各インスタンスクラスタイプと可用性モードでサポートされるデータベースの最大数を示しています。この表は、あるインスタンスクラスタイプから別のインスタンスクラスタイプに移動するか、ある可用性モードから別の可用性モードに移行することができるのかを判断するのに役立ちます。ソース DB インスタンスに、ターゲットインスタンスのクラスタイプまたは可用性モードがサポートできる数より多いデータベースがある場合、DB インスタンスの変更は失敗します。リクエストのステータスは、[イベント] ウィンドウで確認できます。

    インスタンスクラスのタイプ Single-AZ マルチ AZ (DBM) マルチ AZ (Always On AG)
    db.*.micro to db.*.medium 30 該当なし 該当なし
    db.*.large 30 30 30
    db.*.xlarge から db.*.16xlarge 100 50 75
    db.*.24xlarge 100 50 100

    * は、インスタンスクラスの異なるタイプを表します。

    例えば、DB インスタンスが、シングル AZ の db.*.16xlarge で実行されており、76 のデータベースを持っているとします。マルチ AZ の Always On AG を使用してアップグレードする DB インスタンスを変更します。DB インスタンスにターゲット設定でサポートできる以上のデータベースが含まれているため、このアップグレードは失敗します。インスタンスクラスタイプを db.*.24xlarge にアップグレードする場合には、その変更は成功します。

    アップグレードが失敗すると、次のようなイベントおよびメッセージが表示されます。

    • データベースインスタンスクラスを変更できません。インスタンスには 76 個のデータベースがありますが、変換後にサポートされるのは 75 個のみです。

    • DB インスタンスクラスを マルチ AZ に変換できません。インスタンスには 76 のデータベースがありますが、変換後にサポートされるのは 75 のみです。

    ポイントインタイムリストアまたはスナップショットリストアに失敗すると、次のようなイベントやメッセージが表示されます。

    • データベースインスタンスが互換性のない復元になりました。インスタンスには 76 個のデータベースがありますが、変換後にサポートされるのは 75 個のみです。

  • 以下のポートは、Amazon RDS 用に予約されているため、DB インスタンスの作成時には使用できません: 1234, 1434, 3260, 3343, 3389, 47001, および 49152-49156

  • 169.254.0.0/16 の範囲内の IP アドレスからのクライアント接続は許可されていません。これは、ローカルリンクのアドレス指定に使用される Automatic Private IP Addressing Range (APIPA) です。

  • DB インスタンスにソフトウェアの制限 (24 コア、4 ソケット、128 GB RAM) よりも多くのプロセッサがある場合、SQL Server Standard Edition は使用可能なプロセッサのサブセットのみを使用します。この例は、db.m5.24xlarge および db.r5.24xlarge インスタンスクラスです。

    詳細については、Microsoft のドキュメントの「Editions and supported features of SQL Server 2019 (15.x)」のスケール制限の表を参照してください。

  • Amazon RDS for SQL Server では、msdb データベースへのデータのインポートがサポートされていません。

  • SQL Server マルチ AZ 配置の DB インスタンスにあるデータベースの名前は変更できません。

  • RDS for SQL Server で次の DB パラメータを設定する場合は、必ずこれらのガイドラインを使用してください。

    • max server memory (mb) >= 256 MB

    • max worker threads >= (論理CPUの数 * 7)

    DB パラメータの設定の詳細については、「Amazon RDS のパラメータグループ」を参照してください。

  • SQL Server DB インスタンスの最大ストレージのサイズは次のとおりです。

    • 汎用 (SSD) ストレージ – すべてのエディションで 16 TiB

    • プロビジョンド IOPS ストレージ – すべてのエディションで 16 TiB

    • マグネティックストレージ – すべてのエディションで 1 TiB

    さらに大きいサイズのストレージを必要とするシナリオでは、複数の DB インスタンスにまたがるシャーディングを使用することによって制限を回避できます。このアプローチでは、シャーディングされたシステムに接続するアプリケーションに、データに依存するルーティングロジックが必要です。既存のシャーディングフレームワークを使用するか、カスタムコードを記述してシャーディングを有効にできます。既存のフレームワークを使用する場合、このフレームワークは DB インスタンスと同じサーバーのコンポーネントにインストールできません。

  • SQL Server DB インスタンスの最小ストレージサイズは次のとおりです。

    • 汎用 (SSD) ストレージ – Enterprise、Standard、Web および Express Edition 向けは 20 GiB

    • プロビジョンド IOPS ストレージ – Enterprise、Standard、Web および Express Editions 向けは 20 GiB

    • マグネティックストレージ – Enterprise、Standard、Web および Express エディション向けは 20 GiB

  • Amazon RDS では、RDS DB インスタンスと同じサーバー上でのこれらのサービスの実行をサポートしていません。

    • Data Quality Services

    • マスターデータサービス

    これらの機能を使用するには、SQL Server を Amazon EC2 インスタンスにインストールするか、オンプレミスの SQL Server インスタンスを使用します。このような場合、EC2 インスタンスまたは SQL Server インスタンスは、Amazon RDS の SQL Server DB インスタンスのマスターデータサービスサーバーとして機能します。Microsoft のライセンスポリシーに従って、Amazon EBS とともに Amazon EC2 インスタンスに SQL サーバーをインストールできます。

  • Microsoft SQL Server の制限により、DROP DATABASE の実行が成功する前の時点に復元した場合、その時点のデータベースの状態が反映されない可能性があります。例えば、削除されたデータベースは通常、DROP DATABASE コマンドが発行される前の最大 5 分前の状態に復元されます。このタイプの復元は、削除されたデータベースに数分間に行われたトランザクションを復元できないことを意味します。この問題に対処するには、復元オペレーションが完了してから DROP DATABASE コマンドを再発行します。データベースを削除すると、そのデータベースのトランザクションログが削除されます。

  • SQL Server の場合は、DB インスタンスを作成した後、データベースを作成します。データベース名は、通常の SQL Server の命名ルールに従いますが、以下の点が異なります。

    • データベース名を rdsadmin で始めることはできません。

    • 先頭や末尾にスペースやタブを含めることはできません。

    • 新しい行を作成する文字を含めることはできません。

    • 一重引用符 (') を含めることはできません。

    • RDS for SQL Server は現在、マイナーバージョンの自動更新をサポートしていません。詳細については、「Amazon RDS でのバージョン管理」を参照してください。

  • SQL Server Web Edition では、新しい RDS for SQL Server DB インスタンスを作成するときにのみ、開発/テストテンプレートを使用できます。

Microsoft SQL Server DB インスタンス用のコンプライアンスプログラムサポート

AWS対象範囲内の のサービスは、サードパーティーの監査人によって十分に評価され、認定、コンプライアンスの証明、または Authority to Operate (ATO) が与えられます。詳細については、コンプライアンスプログラムによる対象範囲内の AWS のサービスを参照してください。

Microsoft SQL Server の DB インスタンス用の HIPAA サポート

Amazon RDS for Microsoft SQL Server データベースを使用して、HIPAA 準拠アプリケーションを構築できます。AWS との事業提携契約 (BAA) に基づいて、保護されるべき医療情報 (PHI) を含め、医療関連の情報を保存できます。詳細については、「HIPAA コンプライアンス」を参照してください。

Amazon RDS for SQL Server では、以下のバージョンおよびエディションの HIPAA をサポートしています。

  • SQL Server 2022 Enterprise、Standard、および Web Edition

  • SQL Server 2019 Enterprise、Standard、および Web Edition

  • SQL Server 2017 Enterprise、Standard、および Web Edition

  • SQL Server 2016 Enterprise、Standard、および Web Edition

DB インスタンスで HIPAA サポートを有効にするには、次の 3 つのコンポーネントを設定します。

コンポーネント 詳細

監査

監査を設定するには、rds.sqlserver_audit パラメータを fedramp_hipaa の値に設定します。DB インスタンスがカスタム DB パラメータグループを使用していない場合は、rds.sqlserver_audit パラメータを変更する前に、カスタムパラメータグループを作成し、DB インスタンスにアタッチする必要があります。詳細については、「Amazon RDS のパラメータグループ」を参照してください。

送信の暗号化

送信の暗号化を設定するには、DB インスタンスへのすべての接続で Secure Sockets Layer (SSL) を強制的に使用するようにします。詳細については、「DB インスタンスへの接続に SSL を使用させる」を参照してください。

保管時の暗号化

保管時の暗号化を設定するには、2 つのオプションがあります。

  1. SQL Server 2016–2022 Enterprise Edition または 2022 Standard Edition を実行している場合、Transparent Data Encryption (TDE) を使用して、保管時の暗号化を実現できます。詳細については、「SQL サーバーの透過的なデータの暗号化サポート」を参照してください。

  2. AWS Key Management Service (AWS KMS) 暗号化キーを使用して、保管時の暗号化を設定できます。詳細については、「Amazon RDS リソースの暗号化」を参照してください。

Microsoft SQL Server のデータベースミラーリングまたは Always On 可用性グループを使用したマルチ AZ 配置

Amazon RDS は、Microsoft SQL Server を実行する DB インスタンスで SQL Server データベースミラーリング (DBM) または Always On 可用性グループ (AG) によるマルチ AZ 配置をサポートしています。マルチ AZ 配置は、DB インスタンスの拡張された可用性、データ堅牢性、および耐障害性を提供します。予定されたデータベースメンテナンスまたは予期しないサービス障害時に、Amazon RDS は自動的に最新のセカンダリレプリカにフェイルオーバーするため、データベースオペレーションを手動の介入なしで速やかに再開できます。プライマリインスタンスおよびセカンダリインスタンスは、同じエンドポイントを使用します。このエンドポイントの物理的なネットワークアドレスは、フェイルオーバープロセスの一環としてパッシブなセカンダリレプリカに移行します。フェイルオーバーが発生した場合、アプリケーションを再構成する必要はありません。

Amazon RDS は、アクティブにマルチ AZ をモニタリングして、プライマリで問題が発生したときにフェイルオーバーを開始することで、フェイルオーバーを管理します。スタンバイとプライマリが完全に同期しない限り、フェイルオーバーが開始することはありません。Amazon RDS は、異常のある DB インスタンスを自動的に修正し、同期レプリケーションを再確立することで、マルチ AZ デプロイをアクティブに維持します。何も管理する必要はありません。Amazon RDS がプライマリインスタンス、監視インスタンス、およびスタンバイインスタンスを処理します。SQL Server マルチ AZ をセットアップすると、RDS はインスタンスのすべてのデータベースに対してパッシブなセカンダリインスタンスを設定します。

詳細については、「Amazon RDS for Microsoft SQL Server のマルチ AZ 配置」を参照してください。

Transparent Data Encryption を使用した保管時のデータの暗号化

Amazon RDS は、格納されているデータを透過的に暗号化する Microsoft SQL Server の透過的なデータ暗号化 (TDE) をサポートしています。Amazon RDS は、オプショングループを使用してこれらの機能の有効化と設定を行います。TDE オプションの詳細については、「SQL サーバーの透過的なデータの暗号化サポート」を参照してください。