class Aws::DatabaseMigrationService::Types::OracleSettings

Provides information that defines an Oracle endpoint.

@note When making an API call, you may pass OracleSettings

data as a hash:

    {
      add_supplemental_logging: false,
      archived_log_dest_id: 1,
      additional_archived_log_dest_id: 1,
      extra_archived_log_dest_ids: [1],
      allow_select_nested_tables: false,
      parallel_asm_read_threads: 1,
      read_ahead_blocks: 1,
      access_alternate_directly: false,
      use_alternate_folder_for_online: false,
      oracle_path_prefix: "String",
      use_path_prefix: "String",
      replace_path_prefix: false,
      enable_homogenous_tablespace: false,
      direct_path_no_log: false,
      archived_logs_only: false,
      asm_password: "SecretString",
      asm_server: "String",
      asm_user: "String",
      char_length_semantics: "default", # accepts default, char, byte
      database_name: "String",
      direct_path_parallel_load: false,
      fail_tasks_on_lob_truncation: false,
      number_datatype_scale: 1,
      password: "SecretString",
      port: 1,
      read_table_space_name: false,
      retry_interval: 1,
      security_db_encryption: "SecretString",
      security_db_encryption_name: "String",
      server_name: "String",
      spatial_data_option_to_geo_json_function_name: "String",
      standby_delay_time: 1,
      username: "String",
      use_b_file: false,
      use_direct_path_full_load: false,
      use_logminer_reader: false,
      secrets_manager_access_role_arn: "String",
      secrets_manager_secret_id: "String",
      secrets_manager_oracle_asm_access_role_arn: "String",
      secrets_manager_oracle_asm_secret_id: "String",
    }

@!attribute [rw] add_supplemental_logging

Set this attribute to set up table-level supplemental logging for
the Oracle database. This attribute enables PRIMARY KEY supplemental
logging on all tables selected for a migration task.

If you use this option, you still need to enable database-level
supplemental logging.
@return [Boolean]

@!attribute [rw] archived_log_dest_id

Specifies the ID of the destination for the archived redo logs. This
value should be the same as a number in the dest\_id column of the
v$archived\_log view. If you work with an additional redo log
destination, use the `AdditionalArchivedLogDestId` option to specify
the additional destination ID. Doing this improves performance by
ensuring that the correct logs are accessed from the outset.
@return [Integer]

@!attribute [rw] additional_archived_log_dest_id

Set this attribute with `ArchivedLogDestId` in a primary/ standby
setup. This attribute is useful in the case of a switchover. In this
case, DMS needs to know which destination to get archive redo logs
from to read changes. This need arises because the previous primary
instance is now a standby instance after switchover.

Although DMS supports the use of the Oracle `RESETLOGS` option to
open the database, never use `RESETLOGS` unless necessary. For
additional information about `RESETLOGS`, see [RMAN Data Repair
Concepts][1] in the *Oracle Database Backup and Recovery User's
Guide*.

[1]: https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/rman-data-repair-concepts.html#GUID-1805CCF7-4AF2-482D-B65A-998192F89C2B
@return [Integer]

@!attribute [rw] extra_archived_log_dest_ids

Specifies the IDs of one more destinations for one or more archived
redo logs. These IDs are the values of the `dest_id` column in the
`v$archived_log` view. Use this setting with the `archivedLogDestId`
extra connection attribute in a primary-to-single setup or a
primary-to-multiple-standby setup.

This setting is useful in a switchover when you use an Oracle Data
Guard database as a source. In this case, DMS needs information
about what destination to get archive redo logs from to read
changes. DMS needs this because after the switchover the previous
primary is a standby instance. For example, in a primary-to-single
standby setup you might apply the following settings.

`archivedLogDestId=1; ExtraArchivedLogDestIds=[2]`

In a primary-to-multiple-standby setup, you might apply the
following settings.

`archivedLogDestId=1; ExtraArchivedLogDestIds=[2,3,4]`

Although DMS supports the use of the Oracle `RESETLOGS` option to
open the database, never use `RESETLOGS` unless it's necessary. For
more information about `RESETLOGS`, see [ RMAN Data Repair
Concepts][1] in the *Oracle Database Backup and Recovery User's
Guide*.

[1]: https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/rman-data-repair-concepts.html#GUID-1805CCF7-4AF2-482D-B65A-998192F89C2B
@return [Array<Integer>]

@!attribute [rw] allow_select_nested_tables

Set this attribute to `true` to enable replication of Oracle tables
containing columns that are nested tables or defined types.
@return [Boolean]

@!attribute [rw] parallel_asm_read_threads

Set this attribute to change the number of threads that DMS
configures to perform a change data capture (CDC) load using Oracle
Automatic Storage Management (ASM). You can specify an integer value
between 2 (the default) and 8 (the maximum). Use this attribute
together with the `readAheadBlocks` attribute.
@return [Integer]

@!attribute [rw] read_ahead_blocks

Set this attribute to change the number of read-ahead blocks that
DMS configures to perform a change data capture (CDC) load using
Oracle Automatic Storage Management (ASM). You can specify an
integer value between 1000 (the default) and 200,000 (the maximum).
@return [Integer]

@!attribute [rw] access_alternate_directly

Set this attribute to `false` in order to use the Binary Reader to
capture change data for an Amazon RDS for Oracle as the source. This
tells the DMS instance to not access redo logs through any specified
path prefix replacement using direct file access.
@return [Boolean]

@!attribute [rw] use_alternate_folder_for_online

Set this attribute to `true` in order to use the Binary Reader to
capture change data for an Amazon RDS for Oracle as the source. This
tells the DMS instance to use any specified prefix replacement to
access all online redo logs.
@return [Boolean]

@!attribute [rw] oracle_path_prefix

Set this string attribute to the required value in order to use the
Binary Reader to capture change data for an Amazon RDS for Oracle as
the source. This value specifies the default Oracle root used to
access the redo logs.
@return [String]

@!attribute [rw] use_path_prefix

Set this string attribute to the required value in order to use the
Binary Reader to capture change data for an Amazon RDS for Oracle as
the source. This value specifies the path prefix used to replace the
default Oracle root to access the redo logs.
@return [String]

@!attribute [rw] replace_path_prefix

Set this attribute to true in order to use the Binary Reader to
capture change data for an Amazon RDS for Oracle as the source. This
setting tells DMS instance to replace the default Oracle root with
the specified `usePathPrefix` setting to access the redo logs.
@return [Boolean]

@!attribute [rw] enable_homogenous_tablespace

Set this attribute to enable homogenous tablespace replication and
create existing tables or indexes under the same tablespace on the
target.
@return [Boolean]

@!attribute [rw] direct_path_no_log

When set to `true`, this attribute helps to increase the commit rate
on the Oracle target database by writing directly to tables and not
writing a trail to database logs.
@return [Boolean]

@!attribute [rw] archived_logs_only

When this field is set to `Y`, DMS only accesses the archived redo
logs. If the archived redo logs are stored on Oracle ASM only, the
DMS user account needs to be granted ASM privileges.
@return [Boolean]

@!attribute [rw] asm_password

For an Oracle source endpoint, your Oracle Automatic Storage
Management (ASM) password. You can set this value from the `
asm_user_password ` value. You set this value as part of the
comma-separated value that you set to the `Password` request
parameter when you create the endpoint to access transaction logs
using Binary Reader. For more information, see [Configuration for
change data capture (CDC) on an Oracle source database][1].

[1]: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC.Configuration
@return [String]

@!attribute [rw] asm_server

For an Oracle source endpoint, your ASM server address. You can set
this value from the `asm_server` value. You set `asm_server` as part
of the extra connection attribute string to access an Oracle server
with Binary Reader that uses ASM. For more information, see
[Configuration for change data capture (CDC) on an Oracle source
database][1].

[1]: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC.Configuration
@return [String]

@!attribute [rw] asm_user

For an Oracle source endpoint, your ASM user name. You can set this
value from the `asm_user` value. You set `asm_user` as part of the
extra connection attribute string to access an Oracle server with
Binary Reader that uses ASM. For more information, see
[Configuration for change data capture (CDC) on an Oracle source
database][1].

[1]: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC.Configuration
@return [String]

@!attribute [rw] char_length_semantics

Specifies whether the length of a character column is in bytes or in
characters. To indicate that the character column length is in
characters, set this attribute to `CHAR`. Otherwise, the character
column length is in bytes.

Example: `charLengthSemantics=CHAR;`
@return [String]

@!attribute [rw] database_name

Database name for the endpoint.
@return [String]

@!attribute [rw] direct_path_parallel_load

When set to `true`, this attribute specifies a parallel load when
`useDirectPathFullLoad` is set to `Y`. This attribute also only
applies when you use the DMS parallel load feature. Note that the
target table cannot have any constraints or indexes.
@return [Boolean]

@!attribute [rw] fail_tasks_on_lob_truncation

When set to `true`, this attribute causes a task to fail if the
actual size of an LOB column is greater than the specified
`LobMaxSize`.

If a task is set to limited LOB mode and this option is set to
`true`, the task fails instead of truncating the LOB data.
@return [Boolean]

@!attribute [rw] number_datatype_scale

Specifies the number scale. You can select a scale up to 38, or you
can select FLOAT. By default, the NUMBER data type is converted to
precision 38, scale 10.

Example: `numberDataTypeScale=12`
@return [Integer]

@!attribute [rw] password

Endpoint connection password.
@return [String]

@!attribute [rw] port

Endpoint TCP port.
@return [Integer]

@!attribute [rw] read_table_space_name

When set to `true`, this attribute supports tablespace replication.
@return [Boolean]

@!attribute [rw] retry_interval

Specifies the number of seconds that the system waits before
resending a query.

Example: `retryInterval=6;`
@return [Integer]

@!attribute [rw] security_db_encryption

For an Oracle source endpoint, the transparent data encryption (TDE)
password required by AWM DMS to access Oracle redo logs encrypted by
TDE using Binary Reader. It is also the ` TDE_Password ` part of the
comma-separated value you set to the `Password` request parameter
when you create the endpoint. The `SecurityDbEncryptian` setting is
related to this `SecurityDbEncryptionName` setting. For more
information, see [ Supported encryption methods for using Oracle as
a source for DMS ][1] in the *Database Migration Service User
Guide*.

[1]: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.Encryption
@return [String]

@!attribute [rw] security_db_encryption_name

For an Oracle source endpoint, the name of a key used for the
transparent data encryption (TDE) of the columns and tablespaces in
an Oracle source database that is encrypted using TDE. The key value
is the value of the `SecurityDbEncryption` setting. For more
information on setting the key name value of
`SecurityDbEncryptionName`, see the information and example for
setting the `securityDbEncryptionName` extra connection attribute in
[ Supported encryption methods for using Oracle as a source for DMS
][1] in the *Database Migration Service User Guide*.

[1]: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.Encryption
@return [String]

@!attribute [rw] server_name

Fully qualified domain name of the endpoint.
@return [String]

@!attribute [rw] spatial_data_option_to_geo_json_function_name

Use this attribute to convert `SDO_GEOMETRY` to `GEOJSON` format. By
default, DMS calls the `SDO2GEOJSON` custom function if present and
accessible. Or you can create your own custom function that mimics
the operation of `SDOGEOJSON` and set
`SpatialDataOptionToGeoJsonFunctionName` to call it instead.
@return [String]

@!attribute [rw] standby_delay_time

Use this attribute to specify a time in minutes for the delay in
standby sync. If the source is an Oracle Active Data Guard standby
database, use this attribute to specify the time lag between primary
and standby databases.

In DMS, you can create an Oracle CDC task that uses an Active Data
Guard standby instance as a source for replicating ongoing changes.
Doing this eliminates the need to connect to an active database that
might be in production.
@return [Integer]

@!attribute [rw] username

Endpoint connection user name.
@return [String]

@!attribute [rw] use_b_file

Set this attribute to Y to capture change data using the Binary
Reader utility. Set `UseLogminerReader` to N to set this attribute
to Y. To use Binary Reader with Amazon RDS for Oracle as the source,
you set additional attributes. For more information about using this
setting with Oracle Automatic Storage Management (ASM), see [ Using
Oracle LogMiner or DMS Binary Reader for CDC][1].

[1]: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC
@return [Boolean]

@!attribute [rw] use_direct_path_full_load

Set this attribute to Y to have DMS use a direct path full load.
Specify this value to use the direct path protocol in the Oracle
Call Interface (OCI). By using this OCI protocol, you can bulk-load
Oracle target tables during a full load.
@return [Boolean]

@!attribute [rw] use_logminer_reader

Set this attribute to Y to capture change data using the Oracle
LogMiner utility (the default). Set this attribute to N if you want
to access the redo logs as a binary file. When you set
`UseLogminerReader` to N, also set `UseBfile` to Y. For more
information on this setting and using Oracle ASM, see [ Using Oracle
LogMiner or DMS Binary Reader for CDC][1] in the *DMS User Guide*.

[1]: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC
@return [Boolean]

@!attribute [rw] secrets_manager_access_role_arn

The full Amazon Resource Name (ARN) of the IAM role that specifies
DMS as the trusted entity and grants the required permissions to
access the value in `SecretsManagerSecret`. The role must allow the
`iam:PassRole` action. `SecretsManagerSecret` has the value of the
Amazon Web Services Secrets Manager secret that allows access to the
Oracle endpoint.

<note markdown="1"> You can specify one of two sets of values for these permissions. You
can specify the values for this setting and
`SecretsManagerSecretId`. Or you can specify clear-text values for
`UserName`, `Password`, `ServerName`, and `Port`. You can't specify
both. For more information on creating this `SecretsManagerSecret`
and the `SecretsManagerAccessRoleArn` and `SecretsManagerSecretId`
required to access it, see [Using secrets to access Database
Migration Service resources][1] in the *Database Migration Service
User Guide*.

 </note>

[1]: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager
@return [String]

@!attribute [rw] secrets_manager_secret_id

The full ARN, partial ARN, or friendly name of the
`SecretsManagerSecret` that contains the Oracle endpoint connection
details.
@return [String]

@!attribute [rw] secrets_manager_oracle_asm_access_role_arn

Required only if your Oracle endpoint uses Advanced Storage Manager
(ASM). The full ARN of the IAM role that specifies DMS as the
trusted entity and grants the required permissions to access the
`SecretsManagerOracleAsmSecret`. This
`SecretsManagerOracleAsmSecret` has the secret value that allows
access to the Oracle ASM of the endpoint.

<note markdown="1"> You can specify one of two sets of values for these permissions. You
can specify the values for this setting and
`SecretsManagerOracleAsmSecretId`. Or you can specify clear-text
values for `AsmUserName`, `AsmPassword`, and `AsmServerName`. You
can't specify both. For more information on creating this
`SecretsManagerOracleAsmSecret` and the
`SecretsManagerOracleAsmAccessRoleArn` and
`SecretsManagerOracleAsmSecretId` required to access it, see [Using
secrets to access Database Migration Service resources][1] in the
*Database Migration Service User Guide*.

 </note>

[1]: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager
@return [String]

@!attribute [rw] secrets_manager_oracle_asm_secret_id

Required only if your Oracle endpoint uses Advanced Storage Manager
(ASM). The full ARN, partial ARN, or friendly name of the
`SecretsManagerOracleAsmSecret` that contains the Oracle ASM
connection details for the Oracle endpoint.
@return [String]

@see docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/OracleSettings AWS API Documentation

Constants

SENSITIVE