

# Amazon RDS Custom for SQL Server の DB に関する問題のトラブルシューティング
<a name="custom-troubleshooting-sqlserver"></a>

RDS Custom の責任共有モデルは、OS シェルレベルのアクセスとデータベース管理者アクセスを提供します。RDS Custom は、システムアカウントでリソースを実行する Amazon RDS とは異なり、アカウント内でリソースを実行します。アクセスが増えるほど、責任も重くなります。以降のセクションで、Amazon RDS Custom for SQL Server DB インスタンスに関する問題のトラブルシューティング方法を学ぶことができます。

**注記**  
このセクションでは RDS Custom for SQL Server DB をトラブルシューティングする方法について説明します。RDS Custom for Oracle に関するトラブルシューティングについては、「[Amazon RDS Custom for Oracle の DB に関する問題のトラブルシューティング](custom-troubleshooting.md)」を参照してください。

**Topics**
+ [RDS Custom イベントの表示](#custom-troubleshooting-sqlserver.support-perimeter.viewing-events)
+ [RDS Custom イベントへのサブスクライブ](#custom-troubleshooting-sqlserver.support-perimeter.subscribing)
+ [RDS Custom for SQL Server の CEV エラーのトラブルシューティング](#custom-troubleshooting-sqlserver.cev)
+ [RDS Custom for SQL Server DB でサポートされていない構成の修正](#custom-troubleshooting-sqlserver.fix-unsupported)
+ [RDS Custom for SQL Server の `Storage-Full` に関するトラブルシューティング](#custom-troubleshooting-storage-full)
+ [RDS Custom for SQL Server の TDE が有効なデータベースの PENDING\$1RECOVERY 状態のトラブルシューティング](#custom-troubleshooting-sqlserver.pending_recovery)

## RDS Custom イベントの表示
<a name="custom-troubleshooting-sqlserver.support-perimeter.viewing-events"></a>

イベントを表示する手順は、RDS Custom とAmazon RDS DB インスタンスでは同じです。詳細については、「[Amazon RDS イベントの表示](USER_ListEvents.md)」を参照してください。

 AWS CLIを使用してRDS Custom イベント通知を表示するには、`describe-events`コマンドを使用します。RDS Custom では、いくつかの新しいイベントを導入しています。イベントカテゴリは Amazon RDS の場合と同じです。イベントのリストについては、[ Amazon RDS イベントカテゴリとイベントメッセージ](USER_Events.Messages.md)を参照してください。

次の例では、指定した RDS Custom DB インスタンスで発生したイベントの詳細を取得します。

```
1. aws rds describe-events \
2.     --source-identifier my-custom-instance \
3.     --source-type db-instance
```

## RDS Custom イベントへのサブスクライブ
<a name="custom-troubleshooting-sqlserver.support-perimeter.subscribing"></a>

イベント受信の手順は、RDS Custom とAmazon RDS DB インスタンスでは同じです。詳細については、「[Amazon RDS イベント通知にサブスクライブする](USER_Events.Subscribing.md)」を参照してください。

CLI を使用して RDS Custom イベント通知をサブスクライブするには、`create-event-subscription` コマンドを使用します。以下の必須パラメータを含めます。
+ `--subscription-name`
+ `--sns-topic-arn`

次の例では、現在のAWSアカウントのRDS Custom DB インスタンスのバックアップおよびリカバリイベントの受信を作成します。通知は、`--sns-topic-arn`で指定されたAmazon Simple Notification Service (Amazon SNS) のトピックに送信されます。

```
1. aws rds create-event-subscription \
2.     --subscription-name my-instance-events \
3.     --source-type db-instance \
4.     --event-categories '["backup","recovery"]' \
5.     --sns-topic-arn arn:aws:sns:us-east-1:123456789012:interesting-events
```

## RDS Custom for SQL Server の CEV エラーのトラブルシューティング
<a name="custom-troubleshooting-sqlserver.cev"></a>

CEV を作成しようとすると、エラーが発生する可能性があります。この場合、RDS Custom では `RDS-EVENT-0198` イベントメッセージを発行します。RDS イベントの表示の詳細については、「[ Amazon RDS イベントカテゴリとイベントメッセージ](USER_Events.Messages.md)」を参照してください。

以下の情報を参考にして、考えられる原因に対処します。


****  

| メッセージ | トラブルシューティングの推奨事項 | 
| --- | --- | 
| `Custom Engine Version creation expected a Sysprep’d AMI. Retry creation using a Sysprep’d AMI.` | AMI から作成した EC2 インスタンスで Sysprep を実行します。Sysprep を使用して AMI を準備する方法の詳細については、「[Sysprep を使用して標準化された Amazon マシンイメージ (AMI) を作成する](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/Creating_EBSbacked_WinAMI.html#sysprep-using-ec2launchv2)」を参照してください。 | 
| `EC2 Image permissions for image (AMI_ID) weren't found for customer (Customer_ID). Verify customer (Customer_ID) has valid permissions on the EC2 Image.` | 作成に使用したアカウントとプロファイルに、選択した AMI の `create EC2 Instance` と `Describe Images` に必要な権限があることを確認します。 | 
| `Failed to rebuild databases with server collation (collation name) due to missing setup.exe file for SQL Server.` | `setup` ファイルが `C:\Program Files\Microsoft SQL Server\nnn\Setup Bootstrap\SQLnnnn\setup.exe` にあることを確認してください。 | 
| `Image (AMI_ID) doesn't exist in your account (ACCOUNT_ID). Verify (ACCOUNT_ID) is the owner of the EC2 image.` | AMI が同じお客様のアカウントに存在することを確認します。 | 
| `Image id (AMI_ID) isn't valid. Specify a valid image id, and try again.` | AMI の名前が正しくありません。正しい AMI ID が提供されていることを確認します。 | 
| `Image (AMI_ID) operating system platform isn't supported. Specify a valid image, and try again.` |  Windows Server with SQL Server Enterprise、Standard、または Web エディションを備えた、サポートされている AMI を選択します。EC2 Marketplace から、以下のいずれかの使用オペレーションコードの AMI を選択してください。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/custom-troubleshooting-sqlserver.html)  | 
| `SQL Server Web Edition isn't supported for creating a Custom Engine Version using Bring Your Own Media. Specify a valid image, and try again.` | サポートされている SQL Server のエディションを含む AMI を使用してください。詳細については、「[RDS Custom for SQL Server CEV のバージョンサポート](custom-cev-sqlserver.preparing.md#custom-cev-sqlserver.preparing.VersionSupport)」を参照してください。 | 
| `The custom engine version can't be the same as the OEV engine version. Specify a valid CEV, and try again.` | Classic RDS Custom for SQL Server エンジンはサポートされていません。例えば、バージョン **15.00.4073.23.v1** などです。サポートされているバージョン番号を使用してください。 | 
| `The custom engine version isn't in an active state. Specify a valid CEV, and try again.` | オペレーションを完了するには、CEV が `AVAILABLE` 状態である必要があります。CEV を `INACTIVE` から `AVAILABLE` に変更します。 | 
| `The custom engine version isn't valid for an upgrade. Specify a valid CEV with an engine version greater or equal to (X), and try again.` | ターゲット CEV は無効です。有効なアップグレードパスの要件を確認してください。 | 
| `The custom engine version isn't valid. Names can include only lowercase letters (a-z), dashes (-), underscores (_), and periods (.). Specify a valid CEV, and try again.` | 必要な CEV 命名規則に従ってください。詳細については、「[RDS Custom for SQL Server CEV の一般的な要件](custom-cev-sqlserver.preparing.md#custom-cev-sqlserver.preparing.Requirements)」を参照してください。 | 
| `The custom engine version isn't valid. Specify valid database engine version, and try again. Example: 15.00.4073.23-cev123.` | サポートされていない DB エンジンバージョンが提供されました。サポートされている DB エンジンのバージョンを使用してください。 | 
| `The expected architecture is (X) for image (AMI_ID), but architecture (Y) was found.` | **x86\$164** アーキテクチャで構築された AMI を使用してください。 | 
| `The expected owner of image (AMI_ID) is customer account ID (ACCOUNT_ID), but owner (ACCOUNT_ID) was found.` | 権限がある AMI から EC2 インスタンスを作成します。EC2 インスタンスで Sysprep を実行して、ベースイメージを作成して保存します。 | 
| `The expected platform is (X) for image (AMI_ID), but platform (Y) was found.` | Windows プラットフォームで構築された AMI を使用してください。 | 
| `The expected root device type is (X) for image %s, but root device type (Y) was found.` | EBS デバイスタイプで AMI を作成します。 | 
| `The expected SQL Server edition is (X), but (Y) was found.` |  Windows Server with SQL Server Enterprise、Standard、または Web エディションを備えた、サポートされている AMI を選択します。EC2 Marketplace から、以下のいずれかの使用オペレーションコードの AMI を選択してください。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/custom-troubleshooting-sqlserver.html)  | 
| `The expected state is (X) for image (AMI_ID), but the following state was found: (Y).` | AMI が`AVAILABLE` の状態であることを確認します。 | 
| `The provided Windows OS name (X) isn’t valid. Make sure the OS is one of the following: (Y).` | サポートされている Windows OS を使用してください。 | 
| `Unable to find bootstrap log file in path.` | ログファイルが `C:\Program Files\Microsoft SQL Server\nnn\Setup Bootstrap\Log\Summary.txt` にあることを確認してください。 | 
| `RDS expected a Windows build version greater than or equal to (X), but found version (Y).`. | OS ビルドバージョンが最低でも **14393** の AMI を使用してください。 | 
| `RDS expected a Windows major version greater than or equal to (X), but found version (Y).`. | OS のメジャーバージョンが **10.0** 以降の AMI を使用してください。 | 

## RDS Custom for SQL Server DB でサポートされていない構成の修正
<a name="custom-troubleshooting-sqlserver.fix-unsupported"></a>

共有責任モデルであるため、RDS Custom for SQL Server DB インスタンスを`unsupported-configuration`状態にする設定上の問題は、お客様の責任で解決していただく必要があります。問題がAWSインフラストラクチャであれば、コンソールやAWS CLIを使用して修正できます。OSまたはデータベースの設定に問題がある場合は、ホストにログインして修正できます。

**注記**  
このセクションでは RDS Custom for SQL Server でサポートされていない構成を修正する方法について説明します。RDS Custom for Oracle の詳細については、「[RDS Custom for Oracle でサポートされていない構成の修正](custom-troubleshooting.md#custom-troubleshooting.fix-unsupported)」を参照してください。

次の表では、サポートペリメーターが送信する通知とイベント、その修正方法について説明します。これらの通知とサポートペリメーターは変更されることがあります。サポート周辺の背景については、「[RDS Custom サポート範囲](custom-concept.md#custom-troubleshooting.support-perimeter)」を参照してください。イベントの説明については、「[ Amazon RDS イベントカテゴリとイベントメッセージ](USER_Events.Messages.md)」を参照してください。


| イベントコード | 設定領域 | RDS イベントメッセージ | 検証プロセス | 
| --- | --- | --- | --- | 
|  `SP-S0000`  |  サポートされていない手動設定  |  `X` のため、RDS Custom DB インスタンスのステータスは、[サポートされていない設定] に設定されています。  |  この問題を解決するには、サポートケースを作成します。  | 

**AWS リソース (インフラストラクチャ)**


| イベントコード | 設定領域 | RDS イベントメッセージ | 検証プロセス | 
| --- | --- | --- | --- | 
|  `SP-S1001`  |  EC2 インスタンスのステータス  |  基盤となる EC2 インスタンス %s が RDS インスタンスを停止せずに停止されたため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、基盤となる EC2 インスタンスを起動し、バイナリボリュームとデータボリュームがアタッチされていることを確認します。RDS インスタンスを停止する場合は、まず基盤となる EC2 インスタンスのステータスが [利用可能] であることを確認してから、RDS コンソールまたは CLI を使用して RDS インスタンスを停止します。  |  DB インスタンスのステータスを確認するには、コンソールを使用するか、次の AWS CLI コマンドを実行します。 <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep DBInstanceStatus<br />                            </pre>  | 
|  `SP-S1002`  |  EC2 インスタンスのステータス  |  RDS DB インスタンスのステータスは [`STOPPED`] に設定されているが、基盤となる EC2 インスタンス %s が起動されたため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、基盤となる EC2 インスタンスを停止します。RDS インスタンスを起動する場合は、コンソールまたは CLI を使用します。  |   DB インスタンスのステータスを確認するには、次の AWS CLI コマンドを使用します。 <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep DBInstanceStatus</pre> EC2 インスタンスのステータスは EC2 コンソールで確認できます。 DB インスタンスを起動するには、コンソールを使用するか、次の AWS CLI コマンドを実行します。 <pre>aws rds start-db-instance \<br />    --db-instance-identifier db-instance-name</pre>  | 
|  `SP-S1003`   |  EC2 インスタンスクラス  |  EC2 ホストの期待される DB インスタンスクラスと設定されたクラスが一致しないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、DB インスタンスクラスを元のクラスタイプに変更します。  |   次の CLI コマンドを使用して、期待される DB インスタンスクラスを確認します。 <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep DBInstanceClass</pre>  | 
|  `SP-S1004`  |  EBS ストレージボリュームにアクセスできない  |  EC2 インスタンスに関連付けられた元の EBS ストレージボリューム %s に現在アクセスできないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。  |    | 
|  `SP-S1005`  |  EBS ストレージボリュームがデタッチされている  |  元の EBS ストレージボリューム「volume-id」がアタッチされていないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、関連付けられている EBS ボリュームを EC2 インスタンスにアタッチします。  |   EBS ボリュームを再アタッチしたら、次の CLI コマンドを使用して、EBS ボリューム「volume-id」が RDS インスタンスに適切にアタッチされているかどうかを確認します。 <pre>aws ec2 describe-volumes \<br />    --volume-ids volume-id |grep InstanceId</pre>  | 
|  `SP-S1006`  |  EBS ストレージボリュームサイズ  |  EBS ストレージボリューム「volume-id」の期待される設定と設定された設定が一致しないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。ボリュームサイズが EC2 レベルで元の値 [%s] から手動で変更されました。この問題を解決するには、サポートケースを作成します。  |   次の CLI コマンドを使用して、EBS ボリューム「volume-id」の詳細と RDS インスタンスの詳細のボリュームサイズを比較します。 <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep AllocatedStorage</pre>  次の CLI コマンドを使用して、実際に割り当てられたボリュームサイズを表示します。 <pre>aws ec2 describe-volumes \<br />    --volume-ids |grep Size</pre>  | 
|  `SP-S1007`  |  EBS ストレージボリュームの設定  |  EBS ストレージボリューム「volume-id」の期待される設定と設定された設定が一致しないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、EBS ストレージボリューム設定 [IOPS、スループット、ボリュームタイプ] を、EC2 レベルで [IOPS: %s、スループット: %s、ボリュームタイプ: %s] の元の値に変更します。今後のストレージの変更には、RDS コンソールまたは CLI を使用します。ボリュームサイズも EC2 レベルで元の値 [%s] から手動で変更されました。この問題を解決するには、サポートケースを作成します。  |   次の CLI コマンドを使用して、EBS ボリューム「volume-id」の詳細と RDS インスタンスの詳細のボリュームタイプを比較します。EBS レベルの値が RDS レベルの値と一致していることを確認します。 <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep StorageType</pre> RDS レベルでストレージスループットの想定値を取得するには: <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep StorageThroughput</pre>  RDS レベルでボリューム IOPS の想定値を取得するには: <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep Iops</pre> EC2 レベルで現在のストレージタイプを取得するには: <pre>aws ec2 describe-volumes \<br />    --volume-ids |grep VolumeType</pre>  EC2 レベルでストレージスループットの現在の値を取得するには: <pre>aws ec2 describe-volumes \<br />    --volume-ids |grep Throughput</pre> EC2 レベルでボリューム IOPS の現在の値を取得するには: <pre>aws ec2 describe-volumes \<br />    --volume-ids |grep Iops</pre>  | 
|  `SP-S1008`  |  EBS ストレージボリュームのサイズと設定  |  EBS ストレージボリューム「volume-id」の期待される設定と設定された設定が一致しないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、EBS ストレージボリューム設定 [IOPS、スループット、ボリュームタイプ] を、EC2 レベルで [IOPS: %s、スループット: %s、ボリュームタイプ: %s] の元の値に変更します。今後のストレージの変更には、RDS コンソールまたは CLI を使用します。ボリュームサイズも EC2 レベルで元の値 [%s] から手動で変更されました。この問題を解決するには、サポートケースを作成します。  |   次の CLI コマンドを使用して、EBS ボリューム「volume-id」の詳細と RDS インスタンスの詳細のボリュームタイプを比較します。EBS レベルの値が RDS レベルの値と一致していることを確認します。 <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep StorageType</pre> RDS レベルでストレージスループットの想定値を取得するには: <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep StorageThroughput</pre>  RDS レベルでボリューム IOPS の想定値を取得するには: <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep Iops</pre> EC2 レベルで現在のストレージタイプを取得するには: <pre>aws ec2 describe-volumes \<br />    --volume-ids |grep VolumeType</pre>  EC2 レベルでストレージスループットの現在の値を取得するには: <pre>aws ec2 describe-volumes \<br />    --volume-ids |grep Throughput</pre> EC2 レベルでボリューム IOPS の現在の値を取得するには: <pre>aws ec2 describe-volumes \<br />    --volume-ids |grep Iops</pre> 想定される割り当て済みボリュームサイズを取得するには: <pre>aws rds describe-db-instances \<br />    --db-instance-identifier db-instance-name |grep AllocatedStorage</pre> 割り当てられた実際のボリュームサイズを取得するには: <pre>aws ec2 describe-volumes \<br />    --volume-ids |grep Size</pre>  | 
|  `SP-S1009`  |  SQS アクセス許可  |  IAM インスタンスプロファイルに Amazon Simple Queue Service (SQS) のアクセス許可がないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、ホストに関連付けられた IAM プロファイルに次のアクセス許可があることを確認します: ["SQS:SendMessage"、"SQS:ReceiveMessage"、"SQS:DeleteMessage"、"SQS:GetQueueUrl"]。  |    | 
|  `SP-S1010`  |  SQS VPC エンドポイント  |  VPC エンドポイントポリシーが Amazon Simple Queue Service (SQS) オペレーションをブロックしているため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、必要な SQS アクションを許可するように VPC エンドポイントポリシーを変更します。  |    | 
|  `SP-S1011`  |  イベントバスポリシー  |  イベントバス arn:aws:events:region-1:123456789012:event-bus/default のリソースベースのポリシーが Amazon CloudWatch の events:PutEvents アクションを拒否しているため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、EventBus %s の events:PutEvents アクションを許可するようにリソースベースのポリシーを変更します。  |    | 
|  `SP-S1012`  |  CloudWatch VPC のアクセス許可  |  VPC エンドポイントポリシーに Amazon CloudWatch イベントへのアクセス許可がないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、EventBus arn:aws:events:region-1:123456789012:event-bus/default の events:PutEvents を許可するように VPC エンドポイントポリシーを変更します。  |    | 
|  `SP-S1013`  |  サービスコントロールポリシー  |  AWS Organizations のサービスコントロールポリシーに Amazon CloudWatch イベントへのアクセス許可がないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、EventBus arn:aws:events:region-1:123456789012:event-bus/default の events:PutEvents を許可するようにサービスコントロールポリシーを変更します。  |    | 
|  `SP-S1014`  |  IAM インスタンスプロファイル  |  IAM インスタンスプロファイル %s のアクセス許可が Amazon CloudWatch イベントを拒否しているため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、["events:PutEvents"] を 'Allow' に設定し、インスタンスに関連付けられた IAM プロファイルで EventBus arn:aws:events:region-1:123456789012:event-bus/default の events:PutEvents を許可します。  |    | 
|  `SP-S1015`  |  IAM インスタンスプロファイル  |  IAM インスタンスプロファイル %s に Amazon CloudWatch イベントへのアクセス許可がないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、["events:PutEvents"] アクセス許可を含め、インスタンスに関連付けられた IAM プロファイルで EventBus arn:aws:events:region-1:123456789012:event-bus/default の events:PutEvents を許可します。  |    | 
|  `SP-S1016`  |  IAM アクセス許可の境界  |  IAM インスタンスプロファイル %s には Amazon CloudWatch イベントを拒否するアクセス許可の境界があるため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されます。これを解決するには、IAM インスタンスプロファイルのアクセス許可の境界で EventBus arn:aws:events:region-1:123456789012:event-bus/default の ["events:PutEvents"] を 'Allow' に設定します。  |    | 

**オペレーティングシステム**


| イベントコード | 設定領域 | RDS イベントメッセージ | 検証プロセス | 
| --- | --- | --- | --- | 
|  `SP-S2001`  |  SQL サービスステータス  |  SQL Server サービスが起動されていないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、ホストで SQL Server サービスを再起動します。この DB インスタンスがマルチ AZ DB インスタンスで、再起動が失敗した場合、ホストを停止して起動し、フェイルオーバーを開始します。  |  | 
|  `SP-S2002`  |  RDS Custom エージェントステータス  |  RDS Custom エージェントサービスがインストールされていないか、起動できなかったため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、Windows イベントログを確認して、サービスが起動されない理由を特定し、問題を解決するための適切な手順を実行します。さらにサポートが必要な場合は、サポートケースを作成してください。  |  ホストにログインし、RDS Custom エージェントが実行されていることを確認します。 エージェントステータスを表示するには、次のコマンドを使用します。 <pre>$name = "RDSCustomAgent"<br />$service = Get-Service $name<br />Write-Host $service.Status</pre> ステータスが `Running` でなければ、次のコマンドを使ってサービスを開始できます。 <pre>Start-Service $name</pre> エージェントが起動できない場合は、Windows イベントをチェックして、起動できない理由を確認します。エージェントでは、Windows ユーザーがサービスを起動する必要があります。Windows ユーザーが存在し、サービスを実行する権限があることを確認します。  | 
|  `SP-S2003`  |  SSM エージェントステータス  |  Amazon SSM エージェントサービスにアクセスできないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これをトラブルシューティングするには、`Get-Service AmazonSSMAgent` PowerShell コマンドでサービスステータスを確認するか、`Start-Service AmazonSSMAgent` でサービスを起動します。**ssm**、**ssmmessages**、および **ec2messages** のリージョン別エンドポイントへの HTTPS (ポート 443) アウトバウンドトラフィックが許可されていることを確認します。  |  詳細については、「[SSM Agent のトラブルシューティング](https://docs.aws.amazon.com/systems-manager/latest/userguide/troubleshooting-ssm-agent.html)」を参照してください。 SSM エンドポイントのトラブルシューティングについては、「[Unable to connect to SSM endpoints](https://docs.aws.amazon.com/systems-manager/latest/userguide/troubleshooting-ssm-agent.html#systems-manager-ssm-agent-troubleshooting-endpoint-access)」および「[Use ssm-cli to troubleshoot managed node availability](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-cli.html#agent-ts-ssm-cli)」を参照してください。  | 
|  `SP-S2004`  |  RDS Custom エージェントログイン  |   SQL ログイン `"$HOSTNAME/RDSAgent”` で予期しない問題が発生したため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。この問題を解決するには、サポートケースを作成します。  |  | 
|  `SP-S2005`  |  Timezone  |  Amazon EC2 インスタンス [%s] のタイムゾーンが変更されたため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、タイムゾーンをインスタンスの作成時に指定された設定に戻します。特定のタイムゾーンでインスタンスを作成する場合は、RDS Custom のドキュメントを参照してください。  |  `Get-Timezone` PowerShell コマンドを実行して、タイムゾーンを確認します。 詳細については、「[RDS Custom for SQL Server DB インスタンスのローカルタイムゾーン](custom-reqs-limits-MS.TimeZone.md)」を参照してください。  | 
|  `SP-S2006`  |  高可用性ソフトウェアソリューションバージョン  |  現在のインスタンスの高可用性ソフトウェアソリューションが想定バージョンと異なるため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。この問題を解決するには、サポートケースを作成します。  |  | 
|  `SP-S2007`  |  高可用性ソフトウェアソリューションの設定  |  高可用性ソフトウェアソリューションの設定がインスタンス %s で予期しない値に変更されているため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。この問題を解決するには、EC2 インスタンスを再起動します。EC2 インスタンスを再起動すると、高可用性ソフトウェアソリューションに必要な設定に自動的に更新されます。  |    | 
| SP-S2008 |  SQL Server サービス   |  RDS Custom DB インスタンスが [サポートされていない設定] に設定されています。SQLServer (MSSQLServer) サービスがホストに存在しません。これを解決するには、サポートケースを作成します。  |  エージェントステータスを表示するには、次のコマンドを使用します。 <pre>$name = "MSSQLServer"<br />$service = Get-Service $name<br />Write-Host $service.Status</pre>  | 
| SP-S2009 | SSL 証明書 |  RDS Custom DB インスタンスは [サポートされていない設定] に設定されています。これは、RDS の中断を引き起こす自己署名されていない SSL 証明書が原因です。この問題を解決するには、信頼されたルート証明書ストアから自己署名証明書を削除します。  |  次の PowerShell コマンドを実行して、自己署名証明書を確認します。 <pre>Get-ChildItem cert:\LocalMachine\root -Recurse | Where-Object {$_.Issuer -ne $_.Subject -and $_.Issuer -notlike "*RDSCustomAgentCA*"}</pre> 詳細については、「[HTTP Error 403.16 when you try to access a website that's hosted on IIS](https://learn.microsoft.com/en-us/troubleshoot/developer/webapps/iis/site-behavior-performance/http-403-forbidden-access-website)」を参照してください。  | 
| SP-S2010 | ルートボリュームのストレージステータス |  RDS Custom DB インスタンスは、ルートボリュームストレージが満杯であるため、[サポートされていない設定] に設定されています。この問題を解決するには、ルート EBS ボリューム「volume-id」で少なくとも 500 MiB のストレージスペースを解放するか、ボリュームサイズを増やして EC2 インスタンス「instance-id」の C ドライブのサイズを変更します。EC2 インスタンスを置き換えると、ルートボリュームサイズの変更は保持されません。  |  ルート (C:) ボリュームで使用可能なストレージを表示するには、次のコマンドを使用します。 <pre>(Get-PSDrive -Name C).Free / 1MB</pre> EBS ルートボリュームの変更の詳細については、「[How](https://forums.aws.amazon.com/knowledge-center/expand-ebs-root-volume-windows)」を参照してください。  | 

**データベース**


| イベントコード | 設定領域 | RDS イベントメッセージ | 検証プロセス | 
| --- | --- | --- | --- | 
|  `SP-S3001`  |  SQL Server 共有メモリプロトコル  |  SQL Server 共有メモリプロトコルが無効になっているため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、SQL Server Configuration Manager で共有メモリプロトコルを有効にします。  |  これを検証するには、**[SQL Server Configuration Manager] > [SQL Server Network Configuration] > [Protocols for MSSQLSERVER] > [Shared Memory]** が有効になっていることを確認します。プロトコルを有効にしてから、SQL Server プロセスを再起動します。  | 
|  `SP-S3002`  |  サービスマスターキー  |  RDS オートメーションが、新しい SMK 生成の一部としてサービスマスターキー (SMK) のバックアップを取得できないため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。この問題を解決するには、サポートケースを作成します。  |    | 
|  `SP-S3003`  |  サービスマスターキー  |  サービスマスターキー (SMK) に関連するメタデータがないか不完全であるため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。この問題を解決するには、サポートケースを作成します。  |    | 
|  `SP-S3004`  |  DB エンジンのバージョンとエディション  |  RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これは、SQL Server の想定バージョンとインストールされているバージョンおよびエディションが一致しないためです。SQL Server のエディションの変更は、RDS Custom for SQL Server ではサポートされていません。また、RDS Custom EC2 インスタンスでの SQL Server バージョンの手動変更もサポートされていません。この問題を解決するには、サポートケースを作成します。  |   次のクエリを実行して、SQL バージョンを取得します。 <pre>select @@version</pre>  次の AWS CLI コマンドを実行して、RDS SQL エンジンのバージョンとエディションを取得します。 <pre>aws rds describe-db-instances \<br />--db-instance-identifier db-instance-name |grep EngineVersion<br />aws rds describe-db-instances \<br />--db-instance-identifier db-instance-name |grep Engine</pre> 詳細については、「[RDS Custom for SQL Server DB インスタンスの変更](custom-managing.modify-sqlserver.md)」および「[DB インスタンスのエンジンバージョンのアップグレード](USER_UpgradeDBInstance.Upgrading.md)」を参照してください。  | 
|  `SP-S3005`   |  DB エンジンのエディション  |  現在の SQL Server エディションが、想定される SQL Server のエディション [%s] と一致しないため、RDS Custom DB インスタンスのステータスが [サポートされていない設定] に設定されています。SQL Server のエディションの変更は、RDS Custom for SQL Server ではサポートされていません。この問題を解決するには、サポートケースを作成します。  |   次のクエリを実行して、SQL エディションを取得します。 

**Example**  

```
select @@version
```  次の AWS CLI コマンドを実行して、RDS SQL エンジンのエディションを取得します。 <pre>aws rds describe-db-instances \<br />--db-instance-identifier db-instance-name |grep Engine</pre>  | 
|  `SP-S3006`   |  DB エンジンのバージョン  |  現在の SQL Server バージョンが、想定される SQL Server のバージョン [%s] と一致しないため、RDS Custom DB インスタンスのステータスが [サポートされていない設定] に設定されています。SQL Server のエディションの変更は、RDS Custom EC2 のインスタンスではサポートされていません。この問題を解決するには、サポートケースを作成します。SQL Server のバージョンを今後変更する場合は、AWS RDS コンソールから、または modify-db-instance CLI コマンドを使用してインスタンスを変更できます。  |   次のクエリを実行して、SQL バージョンを取得します。 

**Example**  

```
select @@version
```  次の AWS CLI コマンドを実行して、RDS SQL エンジンのバージョンを取得します。 <pre>aws rds describe-db-instances \<br />--db-instance-identifier db-instance-name |grep EngineVersion</pre> 詳細については、「[RDS Custom for SQL Server DB インスタンスの変更](custom-managing.modify-sqlserver.md)」および「[DB インスタンスのエンジンバージョンのアップグレード](USER_UpgradeDBInstance.Upgrading.md)」を参照してください。  | 
|  `SP-S3007`  |  データベースファイルの場所  |  データベースファイルが D:\$1 ドライブの外部で設定されているため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、ROW、LOG、FILESTREAM などのすべてのデータベースファイルが D:\$1 ドライブに格納されることを確認します。  |  次のクエリを実行して、デフォルトパスにないデータベースファイルの場所を一覧表示します。 <pre>USE master;<br />SELECT physical_name as  files_not_in_default_path<br />FROM sys.master_files<br />WHERE SUBSTRING(physical_name,1,3)!='D:\';<br /></pre>  | 
|  `SP-S3008`  |  データベース数の制限を超えました  |  DB インスタンスでのデータベースの総数が上限の 5,000 を超えているため、RDS Custom DB インスタンスのステータスは [サポートされていない設定] に設定されています。これを解決するには、データベースの数をサポートされている上限未満に減らします。  |  データベースの総数を確認するには、次のコマンドを使用します。 <pre>SELECT COUNT(name) as databaseCount<br />FROM sys.databases<br />WHERE name not in ('tempdb','master','model','msdb','DWDiagnostics','DWConfiguration','DWQueue');</pre>  | 

## RDS Custom for SQL Server の `Storage-Full` に関するトラブルシューティング
<a name="custom-troubleshooting-storage-full"></a>

RDS Custom は、ルート (C:) ボリュームもモニタリングします。ルートボリュームで利用できるディスク容量が 500 MiB 未満の場合、RDS Custom for SQL Server DB インスタンスは `unsupported-configuration` 状態に移行します。`Event SP-S2010` の「[RDS Custom for SQL Server DB でサポートされていない構成の修正](#custom-troubleshooting-sqlserver.fix-unsupported)」を参照してください。

## RDS Custom for SQL Server の TDE が有効なデータベースの PENDING\$1RECOVERY 状態のトラブルシューティング
<a name="custom-troubleshooting-sqlserver.pending_recovery"></a>

自動復号で問題が発生した場合、透過的データ暗号化 (TDE) が有効になっている SQL Server データベースは `PENDING_RECOVERY` 状態のままになることがあります。これは通常、復元の完了前にアカウントの RDS Custom マネージド S3 バケットに保存されているソース DB インスタンスサービスマスターキー (SMK) バックアップファイルが削除された場合に、DB インスタンスの復元後に発生します。

自動復号を有効にして TDE が有効なデータベースをオンラインにするには、パスワードでデータベースマスターキー (DMK) を開き、SMK を使用して DMK を暗号化する必要があります。

以下の SQL Server コマンドを参照してください。

```
-- Identify PENDING_RECOVERY TDE databases
USE MASTER;
GO
SELECT name, is_encrypted, state_desc FROM sys.databases;
GO

-- Open DMK using password
OPEN MASTER KEY DECRYPTION BY PASSWORD = '<password>';
GO

-- Encrypt DMK using SMK
ALTER MASTER KEY ADD ENCRYPTION BY SERVICE MASTER KEY;
GO

-- Close SMK
CLOSE MASTER KEY;
GO

-- Bring the TDE databases online
ALTER DATABASE <database_name> SET ONLINE;
GO

-- Verify TDE databases are now in ONLINE state
SELECT name, is_encrypted, state_desc FROM sys.databases;
GO
```