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 ビルドに関する情報の検索場所
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 用の一般的な管理タスク
- Microsoft SQL Server DB インスタンスの制限
- Microsoft SQL Server の DB インスタンスクラスのサポート
- Microsoft SQL Server のセキュリティ
- Microsoft SQL Server DB インスタンス用のコンプライアンスプログラムサポート
- Amazon RDS での Microsoft SQL Server バージョン
- Amazon RDS での Microsoft SQL Server の機能
- Microsoft SQL Server のデータベースミラーリングまたは Always On 可用性グループを使用したマルチ AZ 配置
- Transparent Data Encryption を使用した保管時のデータの暗号化
- Amazon RDS for Microsoft SQL Server 用の関数とストアドプロシージャ
- Microsoft SQL Server DB インスタンスのローカルタイムゾーン
- Amazon RDS での Microsoft SQL Server のライセンス
- Microsoft SQL Server データベースエンジンを実行する DB インスタンスに接続する
- RDS for SQL Server による Active Directory の操作
- Microsoft SQL Server DB エンジンのアップグレード
- ネイティブバックアップと復元を使用した SQL Server データベースのインポートとエクスポート
- Amazon RDS での Microsoft SQL Server 用のリードレプリカの使用
- Amazon RDS for Microsoft SQL Server のマルチ AZ 配置
- Amazon RDS での Microsoft SQL Server の追加機能
- Microsoft SQL Server データベースエンジンのオプション
- Amazon RDS for Microsoft SQL Server の一般的な DBA タスク
Amazon RDS の Microsoft SQL Server 用の一般的な管理タスク
以下に示しているのは、Amazon RDS for SQL Server DB インスタンスで実行する一般的な管理タスクと、各タスクの関連ドキュメントへのリンクです。
タスク領域 | 説明 | 関連資料 |
---|---|---|
インスタンスクラス、ストレージ、PIOPS |
本稼働用に DB インスタンスを作成する場合、インスタンスクラス、ストレージタイプ、およびプロビジョンド IOPS が Amazon RDS でどのように機能するか理解する必要があります。 |
|
マルチ AZ 配置 |
本稼働 DB インスタンスは、マルチ AZ 配置を使用する必要があります。マルチ AZ 配置は、DB インスタンスの拡張された可用性、データ堅牢性、および耐障害性を提供します。SQL Server のマルチ AZ 配置は、SQL Server ネイティブの DBM または AG テクノロジーを使用して実装されます。 |
Microsoft SQL Server のデータベースミラーリングまたは Always On 可用性グループを使用したマルチ AZ 配置 |
Amazon Virtual Private Cloud (VPC) |
AWS アカウントにデフォルト VPC がある場合、DB インスタンスがデフォルト VPC 内に自動的に作成されます。アカウントにデフォルト VPC がない場合、DB インスタンスを VPC に作成する必要があるときは、DB インスタンスを作成する前に VPC とサブネットグループを作成する必要があります。 |
|
セキュリティグループ |
デフォルトでは、DB インスタンスが作成されると、アクセスを禁止するファイアウォールが設定されます。したがって、DB インスタンスにアクセスするために、正しい IP アドレスとネットワーク構成を備えたセキュリティグループを作成する必要があります。 |
|
パラメータグループ |
DB インスタンスに特定のデータベースパラメータが必要になる場合は、DB インスタンスを作成する前にパラメータグループを作成する必要があります。 |
|
オプショングループ |
DB インスタンスに特定のデータベースオプションが必要になる場合は、DB インスタンスを作成する前にオプショングループを作成する必要があります。 |
|
DB インスタンスへの接続 |
セキュリティグループを作成し、それを DB インスタンスに関連付けると、Microsoft SQL Server Management Studio などの標準的な SQL クライアントアプリケーションを使用して DB インスタンスに接続できます。 |
|
バックアップと復元 |
DB インスタンスを作成するとき、自動バックアップが作成されるように設定できます。完全バックアップファイル (.bak ファイル) を使用することで、データベースを手動でバックアップおよび復元することもできます。 |
|
モニタリング |
CloudWatch Amazon RDS メトリクス、イベント、および拡張モニタリングを使用することで、SQL Server DB インスタンスをモニタリングできます。 |
|
ログファイル |
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 つのコンポーネントを設定します。
コンポーネント | 詳細 |
---|---|
監査 |
監査を設定するには、 |
送信の暗号化 |
送信の暗号化を設定するには、DB インスタンスへのすべての接続で Secure Sockets Layer (SSL) を強制的に使用するようにします。詳細については、「DB インスタンスへの接続に SSL を使用させる」を参照してください。 |
保管時の暗号化 |
保管時の暗号化を設定するには、2 つのオプションがあります。
|
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 サーバーの透過的なデータの暗号化サポート」を参照してください。