

# Amazon RDS Custom for Oracle の既知の問題
<a name="custom-known-issues"></a>

RDS Custom for Oracle を使用する場合は、DB インスタンスの次の問題に注意してください。
+ ルートボリュームまたは dbbin ボリュームのサイズ変更はサポートされていません。
**警告**  
ルートボリュームまたは dbbin ボリュームのサイズを手動で変更しないことを強くお勧めします。すべての構成をデータボリュームに保存すればパッチ適用後も保持されます。また、ボリュームのサイズを変更する場合は必ず RDS スケールストレージ API 使用してください。
+ データベースインスタンスが、Oracle Linux 7 を使用する AMI など、古い AMI にある場合、RDS API がブロックされる可能性があります。この問題を解決するには、OS パッチを使用して DB インスタンスに最新の AMI にパッチを適用します。詳細については、「[CEV アップグレードのオプション](custom-upgrading.md#custom-upgrading.overview.cev-options)」を参照してください。
+ RDS オペレーションを実行する前に、AWS アカウント にコンピューティングとストレージに十分なクォータがあることを確認してください。
+ データベースを作成している間に、データベースまたは Amazon EC2 のホストにアクティブにログインしてコマンドを実行すると、データベースの作成が完了しない可能性があります。
+ リードレプリカの問題のため、コントロールファイルの多重化は現在サポートされていません。リードレプリカを作成する前に、ソースデータベースの `CONTROL_FILES` 初期化パラメータでファイル名を 1 つだけ指定してください。
+ データベースモードを `PHYSICAL STANDBY` (マウントまたは読み取り専用) から `SNAPSHOT STANDBY` (読み取り/書き込みに変換) に変更することはできません。
+ AWS アカウント がサービスコントロールポリシー (SCP) を持つ AWS Organization の一部であり、SCP に条件キーが含まれている場合、RDS Custom for Oracle DB インスタンスが次のエラーで作成されない場合があります。

  ```
  You can't create the DB instance because of incompatible resources. 
  The IAM instance profile role [AWSRDSCustomInstanceRole1-us-east-1] is missing the following permissions: 
  EFFECT [Allow] on ACTION(S) [ssm:DescribeAssociation, ssm:DescribeDocument, ssm:GetConnectionStatus, 
    ssm:GetDeployablePatchSnapshotForInstance, ssmmessages:OpenControlChannel, ssm:GetParameters, 
    ssm:ListInstanceAssociations, ssm:PutConfigurePackageResult, ssmmessages:CreateControlChannel, 
    ssm:GetParameter, ssm:UpdateAssociationStatus, ssm:GetManifest, ssmmessages:CreateDataChannel, 
    ssm:PutInventory, ssm:UpdateInstanceInformation, ssm:DescribeInstanceInformation, 
    ssmmessages:OpenDataChannel, ssm:GetDocument, ssm:ListAssociations, ssm:PutComplianceItems, 
    ssm:UpdateInstanceAssociationStatus] for RESOURCE(S) [], EFFECT [Allow] on ACTION(S) [ec2messages:DeleteMessage, 
    ec2messages:FailMessage, ec2messages:GetEndpoint, ec2messages:AcknowledgeMessage, ec2messages:GetMessages, 
    ec2messages:SendReply] for RESOURCE(S) [], EFFECT [Allow] on ACTION(S) [logs:CreateLogStream, 
    logs:DescribeLogStreams, logs:PutRetentionPolicy, logs:PutLogEvents]
  ```

  この問題を解決するには、サポート でチケットを作成します。

## データベースユーザーアカウントの既知の問題
<a name="custom-known-issues-accounts"></a>

次の問題に注意してください。
+ `RDSADMIN` や `RDS_DATAGUARD` などの、文字列 `RDS` で始まるデータベースユーザーアカウントを削除しないでください。RDS Custom for Oracle は、自動化のために `RDS` アカウントを使用します。このユーザーアカウントを削除すると、RDS Custom はインスタンスをサポートされていない設定状態に移行します。
+ `ModifyDBInstance` API を使用して RDS Custom for Oracle DB インスタンスのマスターユーザー名を変更することはできません。
+ RDS Custom for Oracle は、すべての DB インスタンスでユーザーアカウントの認証情報をローテーションします。詳細については、「[コンプライアンスプログラムのための RDS Custom for Oracle の認証情報のローテーション](custom-security.cred-rotation.md)」を参照してください。オンプレミスのプライマリ/スタンバイ設定を使用すると、認証情報のローテーションが次のリソースに影響する可能性があります。
  + 手動で作成された RDS Custom for Oracle のスタンバイインスタンス

    この問題を解決するには、手動のスタンバイデータベースを削除し、API コールを使用して Oracle リードレプリカを作成します。手動のスタンバイデータベースのシークレットを手動で管理し、ソースの DB インスタンスと一致させてください。
  + 手動で作成されたクロスリージョンリードレプリカ

    この問題を解決するには、シークレットを手動で管理して、プライマリ DB インスタンスと一致させてください。

## パラメータファイルと設定ファイルに関する既知の問題
<a name="custom-known-issues-files"></a>
+ コンピューティングのスケール、OS アップグレード、および RDS Custom がルートボリュームを置き換えるその他の処理の後に、`crontab` ファイルを設定する必要があります。`crontab` のバックアップを保持しておくことを強くお勧めします。
+ `listener.ora` ファイルの設定は、次のガイドラインに従って行ってください。
  + ファイル内のすべてのエントリが同じ行にあることを確認します。これにより、インスタンス作成時にインデントの問題を回避できます。
  + `GLOBAL_DBNAME` の値が `SID_NAME` と等しいことを確認します。
  + `LISTENER` の値が命名規則 `L_dbname_001` に従っていることを確認します。
  + `listener.ora` ファイルにある接続先のデータベース名が変更されていないことを確認します。RDS Custom は、この接続を使用してデータベースの起動を検証します。このファイルを誤って変更すると、スケーリングコンピューティングやパッチ適用などの操作が失敗する可能性があります。

    次に、正しく設定された `listener.ora` の例を示します。

    ```
    ADR_BASE_L_ORCL_001=/rdsdbdata/log/
    USE_SID_AS_SERVICE_L_ORCL_001=ON
    SID_LIST_L_ORCL_001=(SID_LIST = (SID_DESC = (SID_NAME = ORCL)(GLOBAL_DBNAME = ORCL) (ORACLE_HOME = /rdsdbbin/oracle.19.custom.r1.EE.1)))
    SUBSCRIBE_FOR_NODE_DOWN_EVENT_L_ORCL_001=OFF
    L_ORCL_001=(DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(PORT = XXXX)(HOST = x.x.x.x))) (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(PORT = XXXX)(HOST = 127.0.0.1))))
    ```
+ コメントは、サーバーパラメータファイルまたは初期化パラメータファイルではサポートされていません。
+ サーバーパラメータファイル (`/rdsdbdata/config/oracle_pfile`) で次の初期化パラメータを宣言する必要があります。
  + `MEMORY_MAX_TARGET`
  + `MEMORY_TARGET`
  + `PGA_AGGREGATE_TARGET`
  + `PROCESSES`
  + `SGA_TARGET`
  + `USE_LARGE_PAGES`

  前述のパラメータが `/rdsdbdata/config/oracle_pfile` で宣言されていない場合、リードレプリカの作成とコンピューティングのスケールが失敗する可能性があります。
+ サーバーパラメータファイル、監査ファイル、`listener.ora`、`tnsnames.ora`、`sqlnet.ora` などの設定ファイルのシンボリックリンクは削除できません。また、これらのファイルのディレクトリ構造を変更することはできません。RDS Custom オートメーションは、これらのファイルが特定のディレクトリ構造に存在することを想定しています。

  初期化パラメータファイルからサーバーパラメータファイルを作成するには、次の構文を使用します。

  ```
  CREATE SPFILE='/rdsdbdata/admin/$ORACLE_SID/pfile/spfile$ORACLE_SID.ora' 
      FROM PFILE='/rdsdbdata/config/oracle_pfile';
  ```