You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::DatabaseMigrationService::Client

Inherits:
Seahorse::Client::Base show all
Defined in:
(unknown)

Overview

An API client for AWS Database Migration Service. To construct a client, you need to configure a :region and :credentials.

databasemigrationservice = Aws::DatabaseMigrationService::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

See #initialize for a full list of supported configuration options.

Region

You can configure a default region in the following locations:

  • ENV['AWS_REGION']
  • Aws.config[:region]

Go here for a list of supported regions.

Credentials

Default credentials are loaded automatically from the following locations:

  • ENV['AWS_ACCESS_KEY_ID'] and ENV['AWS_SECRET_ACCESS_KEY']
  • Aws.config[:credentials]
  • The shared credentials ini file at ~/.aws/credentials (more information)
  • From an instance profile when running on EC2

You can also construct a credentials object from one of the following classes:

Alternatively, you configure credentials with :access_key_id and :secret_access_key:

# load credentials from disk
creds = YAML.load(File.read('/path/to/secrets'))

Aws::DatabaseMigrationService::Client.new(
  access_key_id: creds['access_key_id'],
  secret_access_key: creds['secret_access_key']
)

Always load your credentials from outside your application. Avoid configuring credentials statically and never commit them to source control.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

Constructor collapse

API Operations collapse

Instance Method Summary collapse

Methods inherited from Seahorse::Client::Base

add_plugin, api, #build_request, clear_plugins, define, new, #operation, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options = {}) ⇒ Aws::DatabaseMigrationService::Client

Constructs an API client.

Options Hash (options):

  • :access_key_id (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :active_endpoint_cache (Boolean)

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false. See Plugins::EndpointDiscovery for more details.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types. See Plugins::ParamConverter for more details.

  • :credentials (required, Credentials)

    Your AWS credentials. The following locations will be searched in order for credentials:

    • :access_key_id, :secret_access_key, and :session_token options
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
    • HOME/.aws/credentials shared credentials file
    • EC2 instance profile credentials See Plugins::RequestSigner for more details.
  • :disable_host_prefix_injection (Boolean)

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available. See Plugins::EndpointPattern for more details.

  • :endpoint (String)

    A default endpoint is constructed from the :region. See Plugins::RegionalEndpoint for more details.

  • :endpoint_cache_max_entries (Integer)

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000. See Plugins::EndpointDiscovery for more details.

  • :endpoint_cache_max_threads (Integer)

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10. See Plugins::EndpointDiscovery for more details.

  • :endpoint_cache_poll_interval (Integer)

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec. See Plugins::EndpointDiscovery for more details.

  • :endpoint_discovery (Boolean)

    When set to true, endpoint discovery will be enabled for operations when available. Defaults to false. See Plugins::EndpointDiscovery for more details.

  • :http_continue_timeout (Float) — default: 1

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_idle_timeout (Integer) — default: 5

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_open_timeout (Integer) — default: 15

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_proxy (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_read_timeout (Integer) — default: 60

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_wire_trace (Boolean) — default: false

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the logger at. See Plugins::Logging for more details.

  • :log_formatter (Logging::LogFormatter)

    The log formatter. Defaults to Seahorse::Client::Logging::Formatter.default. See Plugins::Logging for more details.

  • :logger (Logger) — default: nil

    The Logger instance to send log messages to. If this option is not set, logging will be disabled. See Plugins::Logging for more details.

  • :profile (String)

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used. See Plugins::RequestSigner for more details.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised. See Seahorse::Client::Plugins::RaiseResponseErrors for more details.

  • :region (required, String)

    The AWS region to connect to. The region is used to construct the client endpoint. Defaults to ENV['AWS_REGION']. Also checks AMAZON_REGION and AWS_DEFAULT_REGION. See Plugins::RegionalEndpoint for more details.

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors and auth errors from expired credentials. See Plugins::RetryErrors for more details.

  • :secret_access_key (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :session_token (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :simple_json (Boolean) — default: false

    Disables request parameter conversion, validation, and formatting. Also disable response data type conversions. This option is useful when you want to ensure the highest level of performance by avoiding overhead of walking request parameters and response data structures.

    When :simple_json is enabled, the request parameters hash must be formatted exactly as the DynamoDB API expects. See Plugins::Protocols::JsonRpc for more details.

  • :ssl_ca_bundle (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_ca_directory (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_ca_store (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_verify_peer (Boolean) — default: true

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled. See Plugins::StubResponses for more details.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request. See Plugins::ParamValidator for more details.

Instance Method Details

#add_tags_to_resource(options = {}) ⇒ Struct

Adds metadata tags to an AWS DMS resource, including replication instance, endpoint, security group, and migration task. These tags can also be used with cost allocation reporting to track cost associated with DMS resources, or used in a Condition statement in an IAM policy for DMS. For more information, see Tag data type description.

Examples:

Example: Add tags to resource


# Adds metadata tags to an AWS DMS resource, including replication instance, endpoint, security group, and migration task. These tags can also be used with cost allocation reporting to track cost associated with AWS DMS resources, or used in a Condition statement in an IAM policy for AWS DMS.

resp = client.add_tags_to_resource({
  resource_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ASXWXJZLNWNT5HTWCGV2BUJQ7E", # Required. Use the ARN of the resource you want to tag.
  tags: [
    {
      key: "Acount", 
      value: "1633456", 
    }, 
  ], # Required. Use the Key/Value pair format.
})

# resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.add_tags_to_resource({
  resource_arn: "String", # required
  tags: [ # required
    {
      key: "String",
      value: "String",
    },
  ],
})

Options Hash (options):

  • :resource_arn (required, String)

    Identifies the AWS DMS resource to which tags should be added. The value for this parameter is an Amazon Resource Name (ARN).

    For AWS DMS, you can tag a replication instance, an endpoint, or a replication task.

  • :tags (required, Array<Types::Tag>)

    One or more tags to be assigned to the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#apply_pending_maintenance_action(options = {}) ⇒ Types::ApplyPendingMaintenanceActionResponse

Applies a pending maintenance action to a resource (for example, to a replication instance).

Examples:

Request syntax with placeholder values


resp = client.apply_pending_maintenance_action({
  replication_instance_arn: "String", # required
  apply_action: "String", # required
  opt_in_type: "String", # required
})

Response structure


resp.resource_pending_maintenance_actions.resource_identifier #=> String
resp.resource_pending_maintenance_actions.pending_maintenance_action_details #=> Array
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].action #=> String
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].auto_applied_after_date #=> Time
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].forced_apply_date #=> Time
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].opt_in_status #=> String
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].current_apply_date #=> Time
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].description #=> String

Options Hash (options):

  • :replication_instance_arn (required, String)

    The Amazon Resource Name (ARN) of the AWS DMS resource that the pending maintenance action applies to.

  • :apply_action (required, String)

    The pending maintenance action to apply to this resource.

  • :opt_in_type (required, String)

    A value that specifies the type of opt-in request, or undoes an opt-in request. You can\'t undo an opt-in request of type immediate.

    Valid values:

    • immediate - Apply the maintenance action immediately.

    • next-maintenance - Apply the maintenance action during the next maintenance window for the resource.

    • undo-opt-in - Cancel any existing next-maintenance opt-in requests.

Returns:

See Also:

#cancel_replication_task_assessment_run(options = {}) ⇒ Types::CancelReplicationTaskAssessmentRunResponse

Cancels a single premigration assessment run.

This operation prevents any individual assessments from running if they haven't started running. It also attempts to cancel any individual assessments that are currently running.

Examples:

Request syntax with placeholder values


resp = client.cancel_replication_task_assessment_run({
  replication_task_assessment_run_arn: "String", # required
})

Response structure


resp.replication_task_assessment_run.replication_task_assessment_run_arn #=> String
resp.replication_task_assessment_run.replication_task_arn #=> String
resp.replication_task_assessment_run.status #=> String
resp.replication_task_assessment_run.replication_task_assessment_run_creation_date #=> Time
resp.replication_task_assessment_run.assessment_progress.individual_assessment_count #=> Integer
resp.replication_task_assessment_run.assessment_progress.individual_assessment_completed_count #=> Integer
resp.replication_task_assessment_run.last_failure_message #=> String
resp.replication_task_assessment_run.service_access_role_arn #=> String
resp.replication_task_assessment_run.result_location_bucket #=> String
resp.replication_task_assessment_run.result_location_folder #=> String
resp.replication_task_assessment_run.result_encryption_mode #=> String
resp.replication_task_assessment_run.result_kms_key_arn #=> String
resp.replication_task_assessment_run.assessment_run_name #=> String

Options Hash (options):

  • :replication_task_assessment_run_arn (required, String)

    Amazon Resource Name (ARN) of the premigration assessment run to be canceled.

Returns:

See Also:

#create_endpoint(options = {}) ⇒ Types::CreateEndpointResponse

Creates an endpoint using the provided settings.

Examples:

Example: Create endpoint


# Creates an endpoint using the provided settings.

resp = client.create_endpoint({
  certificate_arn: "", 
  database_name: "testdb", 
  endpoint_identifier: "test-endpoint-1", 
  endpoint_type: "source", 
  engine_name: "mysql", 
  extra_connection_attributes: "", 
  kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/4c1731d6-5435-ed4d-be13-d53411a7cfbd", 
  password: "pasword", 
  port: 3306, 
  server_name: "mydb.cx1llnox7iyx.us-west-2.rds.amazonaws.com", 
  ssl_mode: "require", 
  tags: [
    {
      key: "Acount", 
      value: "143327655", 
    }, 
  ], 
  username: "username", 
})

# resp.to_h outputs the following:
{
  endpoint: {
    endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:RAAR3R22XSH46S3PWLC3NJAWKM", 
    endpoint_identifier: "test-endpoint-1", 
    endpoint_type: "source", 
    engine_name: "mysql", 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/4c1731d6-5435-ed4d-be13-d53411a7cfbd", 
    port: 3306, 
    server_name: "mydb.cx1llnox7iyx.us-west-2.rds.amazonaws.com", 
    status: "active", 
    username: "username", 
  }, 
}

Request syntax with placeholder values


resp = client.create_endpoint({
  endpoint_identifier: "String", # required
  endpoint_type: "source", # required, accepts source, target
  engine_name: "String", # required
  username: "String",
  password: "SecretString",
  server_name: "String",
  port: 1,
  database_name: "String",
  extra_connection_attributes: "String",
  kms_key_id: "String",
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  certificate_arn: "String",
  ssl_mode: "none", # accepts none, require, verify-ca, verify-full
  service_access_role_arn: "String",
  external_table_definition: "String",
  dynamo_db_settings: {
    service_access_role_arn: "String", # required
  },
  s3_settings: {
    service_access_role_arn: "String",
    external_table_definition: "String",
    csv_row_delimiter: "String",
    csv_delimiter: "String",
    bucket_folder: "String",
    bucket_name: "String",
    compression_type: "none", # accepts none, gzip
    encryption_mode: "sse-s3", # accepts sse-s3, sse-kms
    server_side_encryption_kms_key_id: "String",
    data_format: "csv", # accepts csv, parquet
    encoding_type: "plain", # accepts plain, plain-dictionary, rle-dictionary
    dict_page_size_limit: 1,
    row_group_length: 1,
    data_page_size: 1,
    parquet_version: "parquet-1-0", # accepts parquet-1-0, parquet-2-0
    enable_statistics: false,
    include_op_for_full_load: false,
    cdc_inserts_only: false,
    timestamp_column_name: "String",
    parquet_timestamp_in_millisecond: false,
    cdc_inserts_and_updates: false,
    date_partition_enabled: false,
    date_partition_sequence: "YYYYMMDD", # accepts YYYYMMDD, YYYYMMDDHH, YYYYMM, MMYYYYDD, DDMMYYYY
    date_partition_delimiter: "SLASH", # accepts SLASH, UNDERSCORE, DASH, NONE
  },
  dms_transfer_settings: {
    service_access_role_arn: "String",
    bucket_name: "String",
  },
  mongo_db_settings: {
    username: "String",
    password: "SecretString",
    server_name: "String",
    port: 1,
    database_name: "String",
    auth_type: "no", # accepts no, password
    auth_mechanism: "default", # accepts default, mongodb_cr, scram_sha_1
    nesting_level: "none", # accepts none, one
    extract_doc_id: "String",
    docs_to_investigate: "String",
    auth_source: "String",
    kms_key_id: "String",
  },
  kinesis_settings: {
    stream_arn: "String",
    message_format: "json", # accepts json, json-unformatted
    service_access_role_arn: "String",
    include_transaction_details: false,
    include_partition_value: false,
    partition_include_schema_table: false,
    include_table_alter_operations: false,
    include_control_details: false,
    include_null_and_empty: false,
  },
  kafka_settings: {
    broker: "String",
    topic: "String",
    message_format: "json", # accepts json, json-unformatted
    include_transaction_details: false,
    include_partition_value: false,
    partition_include_schema_table: false,
    include_table_alter_operations: false,
    include_control_details: false,
    message_max_bytes: 1,
    include_null_and_empty: false,
  },
  elasticsearch_settings: {
    service_access_role_arn: "String", # required
    endpoint_uri: "String", # required
    full_load_error_percentage: 1,
    error_retry_duration: 1,
  },
  neptune_settings: {
    service_access_role_arn: "String",
    s3_bucket_name: "String", # required
    s3_bucket_folder: "String", # required
    error_retry_duration: 1,
    max_file_size: 1,
    max_retry_count: 1,
    iam_auth_enabled: false,
  },
  redshift_settings: {
    accept_any_date: false,
    after_connect_script: "String",
    bucket_folder: "String",
    bucket_name: "String",
    case_sensitive_names: false,
    comp_update: false,
    connection_timeout: 1,
    database_name: "String",
    date_format: "String",
    empty_as_null: false,
    encryption_mode: "sse-s3", # accepts sse-s3, sse-kms
    explicit_ids: false,
    file_transfer_upload_streams: 1,
    load_timeout: 1,
    max_file_size: 1,
    password: "SecretString",
    port: 1,
    remove_quotes: false,
    replace_invalid_chars: "String",
    replace_chars: "String",
    server_name: "String",
    service_access_role_arn: "String",
    server_side_encryption_kms_key_id: "String",
    time_format: "String",
    trim_blanks: false,
    truncate_columns: false,
    username: "String",
    write_buffer_size: 1,
  },
  postgre_sql_settings: {
    after_connect_script: "String",
    capture_ddls: false,
    max_file_size: 1,
    database_name: "String",
    ddl_artifacts_schema: "String",
    execute_timeout: 1,
    fail_tasks_on_lob_truncation: false,
    password: "SecretString",
    port: 1,
    server_name: "String",
    username: "String",
    slot_name: "String",
  },
  my_sql_settings: {
    after_connect_script: "String",
    database_name: "String",
    events_poll_interval: 1,
    target_db_type: "specific-database", # accepts specific-database, multiple-databases
    max_file_size: 1,
    parallel_load_threads: 1,
    password: "SecretString",
    port: 1,
    server_name: "String",
    server_timezone: "String",
    username: "String",
  },
  oracle_settings: {
    add_supplemental_logging: false,
    archived_log_dest_id: 1,
    additional_archived_log_dest_id: 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",
    username: "String",
  },
  sybase_settings: {
    database_name: "String",
    password: "SecretString",
    port: 1,
    server_name: "String",
    username: "String",
  },
  microsoft_sql_server_settings: {
    port: 1,
    bcp_packet_size: 1,
    database_name: "String",
    control_tables_file_group: "String",
    password: "SecretString",
    read_backup_only: false,
    safeguard_policy: "rely-on-sql-server-replication-agent", # accepts rely-on-sql-server-replication-agent, exclusive-automatic-truncation, shared-automatic-truncation
    server_name: "String",
    username: "String",
    use_bcp_full_load: false,
  },
  ibm_db_2_settings: {
    database_name: "String",
    password: "SecretString",
    port: 1,
    server_name: "String",
    set_data_capture_changes: false,
    current_lsn: "String",
    max_k_bytes_per_read: 1,
    username: "String",
  },
  resource_identifier: "String",
  doc_db_settings: {
    username: "String",
    password: "SecretString",
    server_name: "String",
    port: 1,
    database_name: "String",
    nesting_level: "none", # accepts none, one
    extract_doc_id: false,
    docs_to_investigate: 1,
    kms_key_id: "String",
  },
})

Response structure


resp.endpoint.endpoint_identifier #=> String
resp.endpoint.endpoint_type #=> String, one of "source", "target"
resp.endpoint.engine_name #=> String
resp.endpoint.engine_display_name #=> String
resp.endpoint.username #=> String
resp.endpoint.server_name #=> String
resp.endpoint.port #=> Integer
resp.endpoint.database_name #=> String
resp.endpoint.extra_connection_attributes #=> String
resp.endpoint.status #=> String
resp.endpoint.kms_key_id #=> String
resp.endpoint.endpoint_arn #=> String
resp.endpoint.certificate_arn #=> String
resp.endpoint.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.endpoint.service_access_role_arn #=> String
resp.endpoint.external_table_definition #=> String
resp.endpoint.external_id #=> String
resp.endpoint.dynamo_db_settings.service_access_role_arn #=> String
resp.endpoint.s3_settings.service_access_role_arn #=> String
resp.endpoint.s3_settings.external_table_definition #=> String
resp.endpoint.s3_settings.csv_row_delimiter #=> String
resp.endpoint.s3_settings.csv_delimiter #=> String
resp.endpoint.s3_settings.bucket_folder #=> String
resp.endpoint.s3_settings.bucket_name #=> String
resp.endpoint.s3_settings.compression_type #=> String, one of "none", "gzip"
resp.endpoint.s3_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
resp.endpoint.s3_settings.server_side_encryption_kms_key_id #=> String
resp.endpoint.s3_settings.data_format #=> String, one of "csv", "parquet"
resp.endpoint.s3_settings.encoding_type #=> String, one of "plain", "plain-dictionary", "rle-dictionary"
resp.endpoint.s3_settings.dict_page_size_limit #=> Integer
resp.endpoint.s3_settings.row_group_length #=> Integer
resp.endpoint.s3_settings.data_page_size #=> Integer
resp.endpoint.s3_settings.parquet_version #=> String, one of "parquet-1-0", "parquet-2-0"
resp.endpoint.s3_settings.enable_statistics #=> true/false
resp.endpoint.s3_settings.include_op_for_full_load #=> true/false
resp.endpoint.s3_settings.cdc_inserts_only #=> true/false
resp.endpoint.s3_settings.timestamp_column_name #=> String
resp.endpoint.s3_settings.parquet_timestamp_in_millisecond #=> true/false
resp.endpoint.s3_settings.cdc_inserts_and_updates #=> true/false
resp.endpoint.s3_settings.date_partition_enabled #=> true/false
resp.endpoint.s3_settings.date_partition_sequence #=> String, one of "YYYYMMDD", "YYYYMMDDHH", "YYYYMM", "MMYYYYDD", "DDMMYYYY"
resp.endpoint.s3_settings.date_partition_delimiter #=> String, one of "SLASH", "UNDERSCORE", "DASH", "NONE"
resp.endpoint.dms_transfer_settings.service_access_role_arn #=> String
resp.endpoint.dms_transfer_settings.bucket_name #=> String
resp.endpoint.mongo_db_settings.username #=> String
resp.endpoint.mongo_db_settings.password #=> String
resp.endpoint.mongo_db_settings.server_name #=> String
resp.endpoint.mongo_db_settings.port #=> Integer
resp.endpoint.mongo_db_settings.database_name #=> String
resp.endpoint.mongo_db_settings.auth_type #=> String, one of "no", "password"
resp.endpoint.mongo_db_settings.auth_mechanism #=> String, one of "default", "mongodb_cr", "scram_sha_1"
resp.endpoint.mongo_db_settings.nesting_level #=> String, one of "none", "one"
resp.endpoint.mongo_db_settings.extract_doc_id #=> String
resp.endpoint.mongo_db_settings.docs_to_investigate #=> String
resp.endpoint.mongo_db_settings.auth_source #=> String
resp.endpoint.mongo_db_settings.kms_key_id #=> String
resp.endpoint.kinesis_settings.stream_arn #=> String
resp.endpoint.kinesis_settings.message_format #=> String, one of "json", "json-unformatted"
resp.endpoint.kinesis_settings.service_access_role_arn #=> String
resp.endpoint.kinesis_settings.include_transaction_details #=> true/false
resp.endpoint.kinesis_settings.include_partition_value #=> true/false
resp.endpoint.kinesis_settings.partition_include_schema_table #=> true/false
resp.endpoint.kinesis_settings.include_table_alter_operations #=> true/false
resp.endpoint.kinesis_settings.include_control_details #=> true/false
resp.endpoint.kinesis_settings.include_null_and_empty #=> true/false
resp.endpoint.kafka_settings.broker #=> String
resp.endpoint.kafka_settings.topic #=> String
resp.endpoint.kafka_settings.message_format #=> String, one of "json", "json-unformatted"
resp.endpoint.kafka_settings.include_transaction_details #=> true/false
resp.endpoint.kafka_settings.include_partition_value #=> true/false
resp.endpoint.kafka_settings.partition_include_schema_table #=> true/false
resp.endpoint.kafka_settings.include_table_alter_operations #=> true/false
resp.endpoint.kafka_settings.include_control_details #=> true/false
resp.endpoint.kafka_settings.message_max_bytes #=> Integer
resp.endpoint.kafka_settings.include_null_and_empty #=> true/false
resp.endpoint.elasticsearch_settings.service_access_role_arn #=> String
resp.endpoint.elasticsearch_settings.endpoint_uri #=> String
resp.endpoint.elasticsearch_settings.full_load_error_percentage #=> Integer
resp.endpoint.elasticsearch_settings.error_retry_duration #=> Integer
resp.endpoint.neptune_settings.service_access_role_arn #=> String
resp.endpoint.neptune_settings.s3_bucket_name #=> String
resp.endpoint.neptune_settings.s3_bucket_folder #=> String
resp.endpoint.neptune_settings.error_retry_duration #=> Integer
resp.endpoint.neptune_settings.max_file_size #=> Integer
resp.endpoint.neptune_settings.max_retry_count #=> Integer
resp.endpoint.neptune_settings.iam_auth_enabled #=> true/false
resp.endpoint.redshift_settings.accept_any_date #=> true/false
resp.endpoint.redshift_settings.after_connect_script #=> String
resp.endpoint.redshift_settings.bucket_folder #=> String
resp.endpoint.redshift_settings.bucket_name #=> String
resp.endpoint.redshift_settings.case_sensitive_names #=> true/false
resp.endpoint.redshift_settings.comp_update #=> true/false
resp.endpoint.redshift_settings.connection_timeout #=> Integer
resp.endpoint.redshift_settings.database_name #=> String
resp.endpoint.redshift_settings.date_format #=> String
resp.endpoint.redshift_settings.empty_as_null #=> true/false
resp.endpoint.redshift_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
resp.endpoint.redshift_settings.explicit_ids #=> true/false
resp.endpoint.redshift_settings.file_transfer_upload_streams #=> Integer
resp.endpoint.redshift_settings.load_timeout #=> Integer
resp.endpoint.redshift_settings.max_file_size #=> Integer
resp.endpoint.redshift_settings.password #=> String
resp.endpoint.redshift_settings.port #=> Integer
resp.endpoint.redshift_settings.remove_quotes #=> true/false
resp.endpoint.redshift_settings.replace_invalid_chars #=> String
resp.endpoint.redshift_settings.replace_chars #=> String
resp.endpoint.redshift_settings.server_name #=> String
resp.endpoint.redshift_settings.service_access_role_arn #=> String
resp.endpoint.redshift_settings.server_side_encryption_kms_key_id #=> String
resp.endpoint.redshift_settings.time_format #=> String
resp.endpoint.redshift_settings.trim_blanks #=> true/false
resp.endpoint.redshift_settings.truncate_columns #=> true/false
resp.endpoint.redshift_settings.username #=> String
resp.endpoint.redshift_settings.write_buffer_size #=> Integer
resp.endpoint.postgre_sql_settings.after_connect_script #=> String
resp.endpoint.postgre_sql_settings.capture_ddls #=> true/false
resp.endpoint.postgre_sql_settings.max_file_size #=> Integer
resp.endpoint.postgre_sql_settings.database_name #=> String
resp.endpoint.postgre_sql_settings.ddl_artifacts_schema #=> String
resp.endpoint.postgre_sql_settings.execute_timeout #=> Integer
resp.endpoint.postgre_sql_settings.fail_tasks_on_lob_truncation #=> true/false
resp.endpoint.postgre_sql_settings.password #=> String
resp.endpoint.postgre_sql_settings.port #=> Integer
resp.endpoint.postgre_sql_settings.server_name #=> String
resp.endpoint.postgre_sql_settings.username #=> String
resp.endpoint.postgre_sql_settings.slot_name #=> String
resp.endpoint.my_sql_settings.after_connect_script #=> String
resp.endpoint.my_sql_settings.database_name #=> String
resp.endpoint.my_sql_settings.events_poll_interval #=> Integer
resp.endpoint.my_sql_settings.target_db_type #=> String, one of "specific-database", "multiple-databases"
resp.endpoint.my_sql_settings.max_file_size #=> Integer
resp.endpoint.my_sql_settings.parallel_load_threads #=> Integer
resp.endpoint.my_sql_settings.password #=> String
resp.endpoint.my_sql_settings.port #=> Integer
resp.endpoint.my_sql_settings.server_name #=> String
resp.endpoint.my_sql_settings.server_timezone #=> String
resp.endpoint.my_sql_settings.username #=> String
resp.endpoint.oracle_settings.add_supplemental_logging #=> true/false
resp.endpoint.oracle_settings.archived_log_dest_id #=> Integer
resp.endpoint.oracle_settings.additional_archived_log_dest_id #=> Integer
resp.endpoint.oracle_settings.allow_select_nested_tables #=> true/false
resp.endpoint.oracle_settings.parallel_asm_read_threads #=> Integer
resp.endpoint.oracle_settings.read_ahead_blocks #=> Integer
resp.endpoint.oracle_settings.access_alternate_directly #=> true/false
resp.endpoint.oracle_settings.use_alternate_folder_for_online #=> true/false
resp.endpoint.oracle_settings.oracle_path_prefix #=> String
resp.endpoint.oracle_settings.use_path_prefix #=> String
resp.endpoint.oracle_settings.replace_path_prefix #=> true/false
resp.endpoint.oracle_settings.enable_homogenous_tablespace #=> true/false
resp.endpoint.oracle_settings.direct_path_no_log #=> true/false
resp.endpoint.oracle_settings.archived_logs_only #=> true/false
resp.endpoint.oracle_settings.asm_password #=> String
resp.endpoint.oracle_settings.asm_server #=> String
resp.endpoint.oracle_settings.asm_user #=> String
resp.endpoint.oracle_settings.char_length_semantics #=> String, one of "default", "char", "byte"
resp.endpoint.oracle_settings.database_name #=> String
resp.endpoint.oracle_settings.direct_path_parallel_load #=> true/false
resp.endpoint.oracle_settings.fail_tasks_on_lob_truncation #=> true/false
resp.endpoint.oracle_settings.number_datatype_scale #=> Integer
resp.endpoint.oracle_settings.password #=> String
resp.endpoint.oracle_settings.port #=> Integer
resp.endpoint.oracle_settings.read_table_space_name #=> true/false
resp.endpoint.oracle_settings.retry_interval #=> Integer
resp.endpoint.oracle_settings.security_db_encryption #=> String
resp.endpoint.oracle_settings.security_db_encryption_name #=> String
resp.endpoint.oracle_settings.server_name #=> String
resp.endpoint.oracle_settings.username #=> String
resp.endpoint.sybase_settings.database_name #=> String
resp.endpoint.sybase_settings.password #=> String
resp.endpoint.sybase_settings.port #=> Integer
resp.endpoint.sybase_settings.server_name #=> String
resp.endpoint.sybase_settings.username #=> String
resp.endpoint.microsoft_sql_server_settings.port #=> Integer
resp.endpoint.microsoft_sql_server_settings.bcp_packet_size #=> Integer
resp.endpoint.microsoft_sql_server_settings.database_name #=> String
resp.endpoint.microsoft_sql_server_settings.control_tables_file_group #=> String
resp.endpoint.microsoft_sql_server_settings.password #=> String
resp.endpoint.microsoft_sql_server_settings.read_backup_only #=> true/false
resp.endpoint.microsoft_sql_server_settings.safeguard_policy #=> String, one of "rely-on-sql-server-replication-agent", "exclusive-automatic-truncation", "shared-automatic-truncation"
resp.endpoint.microsoft_sql_server_settings.server_name #=> String
resp.endpoint.microsoft_sql_server_settings.username #=> String
resp.endpoint.microsoft_sql_server_settings.use_bcp_full_load #=> true/false
resp.endpoint.ibm_db_2_settings.database_name #=> String
resp.endpoint.ibm_db_2_settings.password #=> String
resp.endpoint.ibm_db_2_settings.port #=> Integer
resp.endpoint.ibm_db_2_settings.server_name #=> String
resp.endpoint.ibm_db_2_settings.set_data_capture_changes #=> true/false
resp.endpoint.ibm_db_2_settings.current_lsn #=> String
resp.endpoint.ibm_db_2_settings.max_k_bytes_per_read #=> Integer
resp.endpoint.ibm_db_2_settings.username #=> String
resp.endpoint.doc_db_settings.username #=> String
resp.endpoint.doc_db_settings.password #=> String
resp.endpoint.doc_db_settings.server_name #=> String
resp.endpoint.doc_db_settings.port #=> Integer
resp.endpoint.doc_db_settings.database_name #=> String
resp.endpoint.doc_db_settings.nesting_level #=> String, one of "none", "one"
resp.endpoint.doc_db_settings.extract_doc_id #=> true/false
resp.endpoint.doc_db_settings.docs_to_investigate #=> Integer
resp.endpoint.doc_db_settings.kms_key_id #=> String

Options Hash (options):

Returns:

See Also:

#create_event_subscription(options = {}) ⇒ Types::CreateEventSubscriptionResponse

Creates an AWS DMS event notification subscription.

You can specify the type of source (SourceType) you want to be notified of, provide a list of AWS DMS source IDs (SourceIds) that triggers the events, and provide a list of event categories (EventCategories) for events you want to be notified of. If you specify both the SourceType and SourceIds, such as SourceType = replication-instance and SourceIdentifier = my-replinstance, you will be notified of all the replication instance events for the specified source. If you specify a SourceType but don't specify a SourceIdentifier, you receive notice of the events for that source type for all your AWS DMS sources. If you don't specify either SourceType nor SourceIdentifier, you will be notified of events generated from all AWS DMS sources belonging to your customer account.

For more information about AWS DMS events, see Working with Events and Notifications in the AWS Database Migration Service User Guide.

Examples:

Request syntax with placeholder values


resp = client.create_event_subscription({
  subscription_name: "String", # required
  sns_topic_arn: "String", # required
  source_type: "String",
  event_categories: ["String"],
  source_ids: ["String"],
  enabled: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.event_subscription.customer_aws_id #=> String
resp.event_subscription.cust_subscription_id #=> String
resp.event_subscription.sns_topic_arn #=> String
resp.event_subscription.status #=> String
resp.event_subscription.subscription_creation_time #=> String
resp.event_subscription.source_type #=> String
resp.event_subscription.source_ids_list #=> Array
resp.event_subscription.source_ids_list[0] #=> String
resp.event_subscription.event_categories_list #=> Array
resp.event_subscription.event_categories_list[0] #=> String
resp.event_subscription.enabled #=> true/false

Options Hash (options):

  • :subscription_name (required, String)

    The name of the AWS DMS event notification subscription. This name must be less than 255 characters.

  • :sns_topic_arn (required, String)

    The Amazon Resource Name (ARN) of the Amazon SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

  • :source_type (String)

    The type of AWS DMS resource that generates the events. For example, if you want to be notified of events generated by a replication instance, you set this parameter to replication-instance. If this value isn\'t specified, all events are returned.

    Valid values: replication-instance | replication-task

  • :event_categories (Array<String>)

    A list of event categories for a source type that you want to subscribe to. For more information, see Working with Events and Notifications in the AWS Database Migration Service User Guide.

  • :source_ids (Array<String>)

    A list of identifiers for which AWS DMS provides notification events.

    If you don\'t specify a value, notifications are provided for all sources.

    If you specify multiple values, they must be of the same type. For example, if you specify a database instance ID, then all of the other values must be database instance IDs.

  • :enabled (Boolean)

    A Boolean value; set to true to activate the subscription, or set to false to create the subscription but not activate it.

  • :tags (Array<Types::Tag>)

    One or more tags to be assigned to the event subscription.

Returns:

See Also:

#create_replication_instance(options = {}) ⇒ Types::CreateReplicationInstanceResponse

Creates the replication instance using the specified parameters.

AWS DMS requires that your account have certain roles with appropriate permissions before you can create a replication instance. For information on the required roles, see Creating the IAM Roles to Use With the AWS CLI and AWS DMS API. For information on the required permissions, see IAM Permissions Needed to Use AWS DMS.

Examples:

Example: Create replication instance


# Creates the replication instance using the specified parameters.

resp = client.create_replication_instance({
  allocated_storage: 123, 
  auto_minor_version_upgrade: true, 
  availability_zone: "", 
  engine_version: "", 
  kms_key_id: "", 
  multi_az: true, 
  preferred_maintenance_window: "", 
  publicly_accessible: true, 
  replication_instance_class: "", 
  replication_instance_identifier: "", 
  replication_subnet_group_identifier: "", 
  tags: [
    {
      key: "string", 
      value: "string", 
    }, 
  ], 
  vpc_security_group_ids: [
  ], 
})

# resp.to_h outputs the following:
{
  replication_instance: {
    allocated_storage: 5, 
    auto_minor_version_upgrade: true, 
    engine_version: "1.5.0", 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/4c1731d6-5435-ed4d-be13-d53411a7cfbd", 
    pending_modified_values: {
    }, 
    preferred_maintenance_window: "sun:06:00-sun:14:00", 
    publicly_accessible: true, 
    replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
    replication_instance_class: "dms.t2.micro", 
    replication_instance_identifier: "test-rep-1", 
    replication_instance_status: "creating", 
    replication_subnet_group: {
      replication_subnet_group_description: "default", 
      replication_subnet_group_identifier: "default", 
      subnet_group_status: "Complete", 
      subnets: [
        {
          subnet_availability_zone: {
            name: "us-east-1d", 
          }, 
          subnet_identifier: "subnet-f6dd91af", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1b", 
          }, 
          subnet_identifier: "subnet-3605751d", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1c", 
          }, 
          subnet_identifier: "subnet-c2daefb5", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1e", 
          }, 
          subnet_identifier: "subnet-85e90cb8", 
          subnet_status: "Active", 
        }, 
      ], 
      vpc_id: "vpc-6741a603", 
    }, 
  }, 
}

Request syntax with placeholder values


resp = client.create_replication_instance({
  replication_instance_identifier: "String", # required
  allocated_storage: 1,
  replication_instance_class: "String", # required
  vpc_security_group_ids: ["String"],
  availability_zone: "String",
  replication_subnet_group_identifier: "String",
  preferred_maintenance_window: "String",
  multi_az: false,
  engine_version: "String",
  auto_minor_version_upgrade: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  kms_key_id: "String",
  publicly_accessible: false,
  dns_name_servers: "String",
  resource_identifier: "String",
})

Response structure


resp.replication_instance.replication_instance_identifier #=> String
resp.replication_instance.replication_instance_class #=> String
resp.replication_instance.replication_instance_status #=> String
resp.replication_instance.allocated_storage #=> Integer
resp.replication_instance.instance_create_time #=> Time
resp.replication_instance.vpc_security_groups #=> Array
resp.replication_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.replication_instance.vpc_security_groups[0].status #=> String
resp.replication_instance.availability_zone #=> String
resp.replication_instance.replication_subnet_group.replication_subnet_group_identifier #=> String
resp.replication_instance.replication_subnet_group.replication_subnet_group_description #=> String
resp.replication_instance.replication_subnet_group.vpc_id #=> String
resp.replication_instance.replication_subnet_group.subnet_group_status #=> String
resp.replication_instance.replication_subnet_group.subnets #=> Array
resp.replication_instance.replication_subnet_group.subnets[0].subnet_identifier #=> String
resp.replication_instance.replication_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.replication_instance.replication_subnet_group.subnets[0].subnet_status #=> String
resp.replication_instance.preferred_maintenance_window #=> String
resp.replication_instance.pending_modified_values.replication_instance_class #=> String
resp.replication_instance.pending_modified_values.allocated_storage #=> Integer
resp.replication_instance.pending_modified_values.multi_az #=> true/false
resp.replication_instance.pending_modified_values.engine_version #=> String
resp.replication_instance.multi_az #=> true/false
resp.replication_instance.engine_version #=> String
resp.replication_instance.auto_minor_version_upgrade #=> true/false
resp.replication_instance.kms_key_id #=> String
resp.replication_instance.replication_instance_arn #=> String
resp.replication_instance.replication_instance_public_ip_address #=> String
resp.replication_instance.replication_instance_private_ip_address #=> String
resp.replication_instance.replication_instance_public_ip_addresses #=> Array
resp.replication_instance.replication_instance_public_ip_addresses[0] #=> String
resp.replication_instance.replication_instance_private_ip_addresses #=> Array
resp.replication_instance.replication_instance_private_ip_addresses[0] #=> String
resp.replication_instance.publicly_accessible #=> true/false
resp.replication_instance.secondary_availability_zone #=> String
resp.replication_instance.free_until #=> Time
resp.replication_instance.dns_name_servers #=> String

Options Hash (options):

  • :replication_instance_identifier (required, String)

    The replication instance identifier. This parameter is stored as a lowercase string.

    Constraints:

    • Must contain 1-63 alphanumeric characters or hyphens.

    • First character must be a letter.

    • Can\'t end with a hyphen or contain two consecutive hyphens.

    Example: myrepinstance

  • :allocated_storage (Integer)

    The amount of storage (in gigabytes) to be initially allocated for the replication instance.

  • :replication_instance_class (required, String)

    The compute and memory capacity of the replication instance as defined for the specified replication instance class. For example to specify the instance class dms.c4.large, set this parameter to "dms.c4.large".

    For more information on the settings and capacities for the available replication instance classes, see Selecting the right AWS DMS replication instance for your migration.

  • :vpc_security_group_ids (Array<String>)

    Specifies the VPC security group to be used with the replication instance. The VPC security group must work with the VPC containing the replication instance.

  • :availability_zone (String)

    The Availability Zone where the replication instance will be created. The default value is a random, system-chosen Availability Zone in the endpoint\'s AWS Region, for example: us-east-1d

  • :replication_subnet_group_identifier (String)

    A subnet group to associate with the replication instance.

  • :preferred_maintenance_window (String)

    The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

    Format: ddd:hh24:mi-ddd:hh24:mi

    Default: A 30-minute window selected at random from an 8-hour block of time per AWS Region, occurring on a random day of the week.

    Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

    Constraints: Minimum 30-minute window.

  • :multi_az (Boolean)

    Specifies whether the replication instance is a Multi-AZ deployment. You can\'t set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

  • :engine_version (String)

    The engine version number of the replication instance.

    If an engine version number is not specified when a replication instance is created, the default is the latest engine version available.

  • :auto_minor_version_upgrade (Boolean)

    A value that indicates whether minor engine upgrades are applied automatically to the replication instance during the maintenance window. This parameter defaults to true.

    Default: true

  • :tags (Array<Types::Tag>)

    One or more tags to be assigned to the replication instance.

  • :kms_key_id (String)

    An AWS KMS key identifier that is used to encrypt the data on the replication instance.

    If you don\'t specify a value for the KmsKeyId parameter, then AWS DMS uses your default encryption key.

    AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS Region.

  • :publicly_accessible (Boolean)

    Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address. The default value is true.

  • :dns_name_servers (String)

    A list of custom DNS name servers supported for the replication instance to access your on-premise source or target database. This list overrides the default name servers supported by the replication instance. You can specify a comma-separated list of internet addresses for up to four on-premise DNS name servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"

  • :resource_identifier (String)

    A friendly name for the resource identifier at the end of the EndpointArn response parameter that is returned in the created Endpoint object. The value for this parameter can have up to 31 characters. It can contain only ASCII letters, digits, and hyphen (\'-\'). Also, it can\'t end with a hyphen or contain two consecutive hyphens, and can only begin with a letter, such as Example-App-ARN1. For example, this value might result in the EndpointArn value arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1. If you don\'t specify a ResourceIdentifier value, AWS DMS generates a default identifier value for the end of EndpointArn.

Returns:

See Also:

#create_replication_subnet_group(options = {}) ⇒ Types::CreateReplicationSubnetGroupResponse

Creates a replication subnet group given a list of the subnet IDs in a VPC.

Examples:

Example: Create replication subnet group


# Creates a replication subnet group given a list of the subnet IDs in a VPC.

resp = client.create_replication_subnet_group({
  replication_subnet_group_description: "US West subnet group", 
  replication_subnet_group_identifier: "us-west-2ab-vpc-215ds366", 
  subnet_ids: [
    "subnet-e145356n", 
    "subnet-58f79200", 
  ], 
  tags: [
    {
      key: "Acount", 
      value: "145235", 
    }, 
  ], 
})

# resp.to_h outputs the following:
{
  replication_subnet_group: {
  }, 
}

Request syntax with placeholder values


resp = client.create_replication_subnet_group({
  replication_subnet_group_identifier: "String", # required
  replication_subnet_group_description: "String", # required
  subnet_ids: ["String"], # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.replication_subnet_group.replication_subnet_group_identifier #=> String
resp.replication_subnet_group.replication_subnet_group_description #=> String
resp.replication_subnet_group.vpc_id #=> String
resp.replication_subnet_group.subnet_group_status #=> String
resp.replication_subnet_group.subnets #=> Array
resp.replication_subnet_group.subnets[0].subnet_identifier #=> String
resp.replication_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.replication_subnet_group.subnets[0].subnet_status #=> String

Options Hash (options):

  • :replication_subnet_group_identifier (required, String)

    The name for the replication subnet group. This value is stored as a lowercase string.

    Constraints: Must contain no more than 255 alphanumeric characters, periods, spaces, underscores, or hyphens. Must not be \"default\".

    Example: mySubnetgroup

  • :replication_subnet_group_description (required, String)

    The description for the subnet group.

  • :subnet_ids (required, Array<String>)

    One or more subnet IDs to be assigned to the subnet group.

  • :tags (Array<Types::Tag>)

    One or more tags to be assigned to the subnet group.

Returns:

See Also:

#create_replication_task(options = {}) ⇒ Types::CreateReplicationTaskResponse

Creates a replication task using the specified parameters.

Examples:

Example: Create replication task


# Creates a replication task using the specified parameters.

resp = client.create_replication_task({
  cdc_start_time: Time.parse("2016-12-14T18:25:43Z"), 
  migration_type: "full-load", 
  replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
  replication_task_identifier: "task1", 
  replication_task_settings: "", 
  source_endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ZW5UAN6P4E77EC7YWHK4RZZ3BE", 
  table_mappings: "file://mappingfile.json", 
  tags: [
    {
      key: "Acount", 
      value: "24352226", 
    }, 
  ], 
  target_endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ASXWXJZLNWNT5HTWCGV2BUJQ7E", 
})

# resp.to_h outputs the following:
{
  replication_task: {
    migration_type: "full-load", 
    replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
    replication_task_arn: "arn:aws:dms:us-east-1:123456789012:task:OEAMB3NXSTZ6LFYZFEPPBBXPYM", 
    replication_task_creation_date: Time.parse("2016-12-14T18:25:43Z"), 
    replication_task_identifier: "task1", 
    replication_task_settings: "{\"TargetMetadata\":{\"TargetSchema\":\"\",\"SupportLobs\":true,\"FullLobMode\":true,\"LobChunkSize\":64,\"LimitedSizeLobMode\":false,\"LobMaxSize\":0},\"FullLoadSettings\":{\"FullLoadEnabled\":true,\"ApplyChangesEnabled\":false,\"TargetTablePrepMode\":\"DROP_AND_CREATE\",\"CreatePkAfterFullLoad\":false,\"StopTaskCachedChangesApplied\":false,\"StopTaskCachedChangesNotApplied\":false,\"ResumeEnabled\":false,\"ResumeMinTableSize\":100000,\"ResumeOnlyClusteredPKTables\":true,\"MaxFullLoadSubTasks\":8,\"TransactionConsistencyTimeout\":600,\"CommitRate\":10000},\"Logging\":{\"EnableLogging\":false}}", 
    source_endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ZW5UAN6P4E77EC7YWHK4RZZ3BE", 
    status: "creating", 
    table_mappings: "file://mappingfile.json", 
    target_endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ASXWXJZLNWNT5HTWCGV2BUJQ7E", 
  }, 
}

Request syntax with placeholder values


resp = client.create_replication_task({
  replication_task_identifier: "String", # required
  source_endpoint_arn: "String", # required
  target_endpoint_arn: "String", # required
  replication_instance_arn: "String", # required
  migration_type: "full-load", # required, accepts full-load, cdc, full-load-and-cdc
  table_mappings: "String", # required
  replication_task_settings: "String",
  cdc_start_time: Time.now,
  cdc_start_position: "String",
  cdc_stop_position: "String",
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  task_data: "String",
  resource_identifier: "String",
})

Response structure


resp.replication_task.replication_task_identifier #=> String
resp.replication_task.source_endpoint_arn #=> String
resp.replication_task.target_endpoint_arn #=> String
resp.replication_task.replication_instance_arn #=> String
resp.replication_task.migration_type #=> String, one of "full-load", "cdc", "full-load-and-cdc"
resp.replication_task.table_mappings #=> String
resp.replication_task.replication_task_settings #=> String
resp.replication_task.status #=> String
resp.replication_task.last_failure_message #=> String
resp.replication_task.stop_reason #=> String
resp.replication_task.replication_task_creation_date #=> Time
resp.replication_task.replication_task_start_date #=> Time
resp.replication_task.cdc_start_position #=> String
resp.replication_task.cdc_stop_position #=> String
resp.replication_task.recovery_checkpoint #=> String
resp.replication_task.replication_task_arn #=> String
resp.replication_task.replication_task_stats.full_load_progress_percent #=> Integer
resp.replication_task.replication_task_stats.elapsed_time_millis #=> Integer
resp.replication_task.replication_task_stats.tables_loaded #=> Integer
resp.replication_task.replication_task_stats.tables_loading #=> Integer
resp.replication_task.replication_task_stats.tables_queued #=> Integer
resp.replication_task.replication_task_stats.tables_errored #=> Integer
resp.replication_task.replication_task_stats.fresh_start_date #=> Time
resp.replication_task.replication_task_stats.start_date #=> Time
resp.replication_task.replication_task_stats.stop_date #=> Time
resp.replication_task.replication_task_stats.full_load_start_date #=> Time
resp.replication_task.replication_task_stats.full_load_finish_date #=> Time
resp.replication_task.task_data #=> String
resp.replication_task.target_replication_instance_arn #=> String

Options Hash (options):

  • :replication_task_identifier (required, String)

    An identifier for the replication task.

    Constraints:

    • Must contain 1-255 alphanumeric characters or hyphens.

    • First character must be a letter.

    • Cannot end with a hyphen or contain two consecutive hyphens.

  • :source_endpoint_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies the source endpoint.

  • :target_endpoint_arn (required, String)

    An Amazon Resource Name (ARN) that uniquely identifies the target endpoint.

  • :replication_instance_arn (required, String)

    The Amazon Resource Name (ARN) of a replication instance.

  • :migration_type (required, String)

    The migration type. Valid values: full-load | cdc | full-load-and-cdc

  • :table_mappings (required, String)

    The table mappings for the task, in JSON format. For more information, see Using Table Mapping to Specify Task Settings in the AWS Database Migration Service User Guide.

  • :replication_task_settings (String)

    Overall settings for the task, in JSON format. For more information, see Specifying Task Settings for AWS Database Migration Service Tasks in the AWS Database Migration User Guide.

  • :cdc_start_time (Time)

    Indicates the start time for a change data capture (CDC) operation. Use either CdcStartTime or CdcStartPosition to specify when you want a CDC operation to start. Specifying both values results in an error.

    Timestamp Example: --cdc-start-time “2018-03-08T12:12:12”

  • :cdc_start_position (String)

    Indicates when you want a change data capture (CDC) operation to start. Use either CdcStartPosition or CdcStartTime to specify when you want a CDC operation to start. Specifying both values results in an error.

    The value can be in date, checkpoint, or LSN/SCN format.

    Date Example: --cdc-start-position “2018-03-08T12:12:12”

    Checkpoint Example: --cdc-start-position \"checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93\"

    LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”

    When you use this task setting with a source PostgreSQL database, a logical replication slot should already be created and associated with the source endpoint. You can verify this by setting the slotName extra connection attribute to the name of this logical replication slot. For more information, see Extra Connection Attributes When Using PostgreSQL as a Source for AWS DMS.

  • :cdc_stop_position (String)

    Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

    Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

    Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

  • :tags (Array<Types::Tag>)

    One or more tags to be assigned to the replication task.

  • :task_data (String)

    Supplemental information that the task requires to migrate the data for certain source and target endpoints. For more information, see Specifying Supplemental Data for Task Settings in the AWS Database Migration Service User Guide.

  • :resource_identifier (String)

    A friendly name for the resource identifier at the end of the EndpointArn response parameter that is returned in the created Endpoint object. The value for this parameter can have up to 31 characters. It can contain only ASCII letters, digits, and hyphen (\'-\'). Also, it can\'t end with a hyphen or contain two consecutive hyphens, and can only begin with a letter, such as Example-App-ARN1. For example, this value might result in the EndpointArn value arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1. If you don\'t specify a ResourceIdentifier value, AWS DMS generates a default identifier value for the end of EndpointArn.

Returns:

See Also:

#delete_certificate(options = {}) ⇒ Types::DeleteCertificateResponse

Deletes the specified certificate.

Examples:

Example: Delete Certificate


# Deletes the specified certificate.

resp = client.delete_certificate({
  certificate_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUSM457DE6XFJCJQ", 
})

# resp.to_h outputs the following:
{
  certificate: {
  }, 
}

Request syntax with placeholder values


resp = client.delete_certificate({
  certificate_arn: "String", # required
})

Response structure


resp.certificate.certificate_identifier #=> String
resp.certificate.certificate_creation_date #=> Time
resp.certificate.certificate_pem #=> String
resp.certificate.certificate_wallet #=> IO
resp.certificate.certificate_arn #=> String
resp.certificate.certificate_owner #=> String
resp.certificate.valid_from_date #=> Time
resp.certificate.valid_to_date #=> Time
resp.certificate.signing_algorithm #=> String
resp.certificate.key_length #=> Integer

Options Hash (options):

  • :certificate_arn (required, String)

    The Amazon Resource Name (ARN) of the deleted certificate.

Returns:

See Also:

#delete_connection(options = {}) ⇒ Types::DeleteConnectionResponse

Deletes the connection between a replication instance and an endpoint.

Examples:

Example: Delete Connection


# Deletes the connection between the replication instance and the endpoint.

resp = client.delete_connection({
  endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:RAAR3R22XSH46S3PWLC3NJAWKM", 
  replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
})

# resp.to_h outputs the following:
{
  connection: {
  }, 
}

Request syntax with placeholder values


resp = client.delete_connection({
  endpoint_arn: "String", # required
  replication_instance_arn: "String", # required
})

Response structure


resp.connection.replication_instance_arn #=> String
resp.connection.endpoint_arn #=> String
resp.connection.status #=> String
resp.connection.last_failure_message #=> String
resp.connection.endpoint_identifier #=> String
resp.connection.replication_instance_identifier #=> String

Options Hash (options):

  • :endpoint_arn (required, String)

    The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

  • :replication_instance_arn (required, String)

    The Amazon Resource Name (ARN) of the replication instance.

Returns:

See Also:

#delete_endpoint(options = {}) ⇒ Types::DeleteEndpointResponse

Deletes the specified endpoint.

All tasks associated with the endpoint must be deleted before you can delete the endpoint.

Examples:

Example: Delete Endpoint


# Deletes the specified endpoint. All tasks associated with the endpoint must be deleted before you can delete the endpoint.

resp = client.delete_endpoint({
  endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:RAAR3R22XSH46S3PWLC3NJAWKM", 
})

# resp.to_h outputs the following:
{
  endpoint: {
    endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:RAAR3R22XSH46S3PWLC3NJAWKM", 
    endpoint_identifier: "test-endpoint-1", 
    endpoint_type: "source", 
    engine_name: "mysql", 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/4c1731d6-5435-ed4d-be13-d53411a7cfbd", 
    port: 3306, 
    server_name: "mydb.cx1llnox7iyx.us-west-2.rds.amazonaws.com", 
    status: "active", 
    username: "username", 
  }, 
}

Request syntax with placeholder values


resp = client.delete_endpoint({
  endpoint_arn: "String", # required
})

Response structure


resp.endpoint.endpoint_identifier #=> String
resp.endpoint.endpoint_type #=> String, one of "source", "target"
resp.endpoint.engine_name #=> String
resp.endpoint.engine_display_name #=> String
resp.endpoint.username #=> String
resp.endpoint.server_name #=> String
resp.endpoint.port #=> Integer
resp.endpoint.database_name #=> String
resp.endpoint.extra_connection_attributes #=> String
resp.endpoint.status #=> String
resp.endpoint.kms_key_id #=> String
resp.endpoint.endpoint_arn #=> String
resp.endpoint.certificate_arn #=> String
resp.endpoint.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.endpoint.service_access_role_arn #=> String
resp.endpoint.external_table_definition #=> String
resp.endpoint.external_id #=> String
resp.endpoint.dynamo_db_settings.service_access_role_arn #=> String
resp.endpoint.s3_settings.service_access_role_arn #=> String
resp.endpoint.s3_settings.external_table_definition #=> String
resp.endpoint.s3_settings.csv_row_delimiter #=> String
resp.endpoint.s3_settings.csv_delimiter #=> String
resp.endpoint.s3_settings.bucket_folder #=> String
resp.endpoint.s3_settings.bucket_name #=> String
resp.endpoint.s3_settings.compression_type #=> String, one of "none", "gzip"
resp.endpoint.s3_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
resp.endpoint.s3_settings.server_side_encryption_kms_key_id #=> String
resp.endpoint.s3_settings.data_format #=> String, one of "csv", "parquet"
resp.endpoint.s3_settings.encoding_type #=> String, one of "plain", "plain-dictionary", "rle-dictionary"
resp.endpoint.s3_settings.dict_page_size_limit #=> Integer
resp.endpoint.s3_settings.row_group_length #=> Integer
resp.endpoint.s3_settings.data_page_size #=> Integer
resp.endpoint.s3_settings.parquet_version #=> String, one of "parquet-1-0", "parquet-2-0"
resp.endpoint.s3_settings.enable_statistics #=> true/false
resp.endpoint.s3_settings.include_op_for_full_load #=> true/false
resp.endpoint.s3_settings.cdc_inserts_only #=> true/false
resp.endpoint.s3_settings.timestamp_column_name #=> String
resp.endpoint.s3_settings.parquet_timestamp_in_millisecond #=> true/false
resp.endpoint.s3_settings.cdc_inserts_and_updates #=> true/false
resp.endpoint.s3_settings.date_partition_enabled #=> true/false
resp.endpoint.s3_settings.date_partition_sequence #=> String, one of "YYYYMMDD", "YYYYMMDDHH", "YYYYMM", "MMYYYYDD", "DDMMYYYY"
resp.endpoint.s3_settings.date_partition_delimiter #=> String, one of "SLASH", "UNDERSCORE", "DASH", "NONE"
resp.endpoint.dms_transfer_settings.service_access_role_arn #=> String
resp.endpoint.dms_transfer_settings.bucket_name #=> String
resp.endpoint.mongo_db_settings.username #=> String
resp.endpoint.mongo_db_settings.password #=> String
resp.endpoint.mongo_db_settings.server_name #=> String
resp.endpoint.mongo_db_settings.port #=> Integer
resp.endpoint.mongo_db_settings.database_name #=> String
resp.endpoint.mongo_db_settings.auth_type #=> String, one of "no", "password"
resp.endpoint.mongo_db_settings.auth_mechanism #=> String, one of "default", "mongodb_cr", "scram_sha_1"
resp.endpoint.mongo_db_settings.nesting_level #=> String, one of "none", "one"
resp.endpoint.mongo_db_settings.extract_doc_id #=> String
resp.endpoint.mongo_db_settings.docs_to_investigate #=> String
resp.endpoint.mongo_db_settings.auth_source #=> String
resp.endpoint.mongo_db_settings.kms_key_id #=> String
resp.endpoint.kinesis_settings.stream_arn #=> String
resp.endpoint.kinesis_settings.message_format #=> String, one of "json", "json-unformatted"
resp.endpoint.kinesis_settings.service_access_role_arn #=> String
resp.endpoint.kinesis_settings.include_transaction_details #=> true/false
resp.endpoint.kinesis_settings.include_partition_value #=> true/false
resp.endpoint.kinesis_settings.partition_include_schema_table #=> true/false
resp.endpoint.kinesis_settings.include_table_alter_operations #=> true/false
resp.endpoint.kinesis_settings.include_control_details #=> true/false
resp.endpoint.kinesis_settings.include_null_and_empty #=> true/false
resp.endpoint.kafka_settings.broker #=> String
resp.endpoint.kafka_settings.topic #=> String
resp.endpoint.kafka_settings.message_format #=> String, one of "json", "json-unformatted"
resp.endpoint.kafka_settings.include_transaction_details #=> true/false
resp.endpoint.kafka_settings.include_partition_value #=> true/false
resp.endpoint.kafka_settings.partition_include_schema_table #=> true/false
resp.endpoint.kafka_settings.include_table_alter_operations #=> true/false
resp.endpoint.kafka_settings.include_control_details #=> true/false
resp.endpoint.kafka_settings.message_max_bytes #=> Integer
resp.endpoint.kafka_settings.include_null_and_empty #=> true/false
resp.endpoint.elasticsearch_settings.service_access_role_arn #=> String
resp.endpoint.elasticsearch_settings.endpoint_uri #=> String
resp.endpoint.elasticsearch_settings.full_load_error_percentage #=> Integer
resp.endpoint.elasticsearch_settings.error_retry_duration #=> Integer
resp.endpoint.neptune_settings.service_access_role_arn #=> String
resp.endpoint.neptune_settings.s3_bucket_name #=> String
resp.endpoint.neptune_settings.s3_bucket_folder #=> String
resp.endpoint.neptune_settings.error_retry_duration #=> Integer
resp.endpoint.neptune_settings.max_file_size #=> Integer
resp.endpoint.neptune_settings.max_retry_count #=> Integer
resp.endpoint.neptune_settings.iam_auth_enabled #=> true/false
resp.endpoint.redshift_settings.accept_any_date #=> true/false
resp.endpoint.redshift_settings.after_connect_script #=> String
resp.endpoint.redshift_settings.bucket_folder #=> String
resp.endpoint.redshift_settings.bucket_name #=> String
resp.endpoint.redshift_settings.case_sensitive_names #=> true/false
resp.endpoint.redshift_settings.comp_update #=> true/false
resp.endpoint.redshift_settings.connection_timeout #=> Integer
resp.endpoint.redshift_settings.database_name #=> String
resp.endpoint.redshift_settings.date_format #=> String
resp.endpoint.redshift_settings.empty_as_null #=> true/false
resp.endpoint.redshift_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
resp.endpoint.redshift_settings.explicit_ids #=> true/false
resp.endpoint.redshift_settings.file_transfer_upload_streams #=> Integer
resp.endpoint.redshift_settings.load_timeout #=> Integer
resp.endpoint.redshift_settings.max_file_size #=> Integer
resp.endpoint.redshift_settings.password #=> String
resp.endpoint.redshift_settings.port #=> Integer
resp.endpoint.redshift_settings.remove_quotes #=> true/false
resp.endpoint.redshift_settings.replace_invalid_chars #=> String
resp.endpoint.redshift_settings.replace_chars #=> String
resp.endpoint.redshift_settings.server_name #=> String
resp.endpoint.redshift_settings.service_access_role_arn #=> String
resp.endpoint.redshift_settings.server_side_encryption_kms_key_id #=> String
resp.endpoint.redshift_settings.time_format #=> String
resp.endpoint.redshift_settings.trim_blanks #=> true/false
resp.endpoint.redshift_settings.truncate_columns #=> true/false
resp.endpoint.redshift_settings.username #=> String
resp.endpoint.redshift_settings.write_buffer_size #=> Integer
resp.endpoint.postgre_sql_settings.after_connect_script #=> String
resp.endpoint.postgre_sql_settings.capture_ddls #=> true/false
resp.endpoint.postgre_sql_settings.max_file_size #=> Integer
resp.endpoint.postgre_sql_settings.database_name #=> String
resp.endpoint.postgre_sql_settings.ddl_artifacts_schema #=> String
resp.endpoint.postgre_sql_settings.execute_timeout #=> Integer
resp.endpoint.postgre_sql_settings.fail_tasks_on_lob_truncation #=> true/false
resp.endpoint.postgre_sql_settings.password #=> String
resp.endpoint.postgre_sql_settings.port #=> Integer
resp.endpoint.postgre_sql_settings.server_name #=> String
resp.endpoint.postgre_sql_settings.username #=> String
resp.endpoint.postgre_sql_settings.slot_name #=> String
resp.endpoint.my_sql_settings.after_connect_script #=> String
resp.endpoint.my_sql_settings.database_name #=> String
resp.endpoint.my_sql_settings.events_poll_interval #=> Integer
resp.endpoint.my_sql_settings.target_db_type #=> String, one of "specific-database", "multiple-databases"
resp.endpoint.my_sql_settings.max_file_size #=> Integer
resp.endpoint.my_sql_settings.parallel_load_threads #=> Integer
resp.endpoint.my_sql_settings.password #=> String
resp.endpoint.my_sql_settings.port #=> Integer
resp.endpoint.my_sql_settings.server_name #=> String
resp.endpoint.my_sql_settings.server_timezone #=> String
resp.endpoint.my_sql_settings.username #=> String
resp.endpoint.oracle_settings.add_supplemental_logging #=> true/false
resp.endpoint.oracle_settings.archived_log_dest_id #=> Integer
resp.endpoint.oracle_settings.additional_archived_log_dest_id #=> Integer
resp.endpoint.oracle_settings.allow_select_nested_tables #=> true/false
resp.endpoint.oracle_settings.parallel_asm_read_threads #=> Integer
resp.endpoint.oracle_settings.read_ahead_blocks #=> Integer
resp.endpoint.oracle_settings.access_alternate_directly #=> true/false
resp.endpoint.oracle_settings.use_alternate_folder_for_online #=> true/false
resp.endpoint.oracle_settings.oracle_path_prefix #=> String
resp.endpoint.oracle_settings.use_path_prefix #=> String
resp.endpoint.oracle_settings.replace_path_prefix #=> true/false
resp.endpoint.oracle_settings.enable_homogenous_tablespace #=> true/false
resp.endpoint.oracle_settings.direct_path_no_log #=> true/false
resp.endpoint.oracle_settings.archived_logs_only #=> true/false
resp.endpoint.oracle_settings.asm_password #=> String
resp.endpoint.oracle_settings.asm_server #=> String
resp.endpoint.oracle_settings.asm_user #=> String
resp.endpoint.oracle_settings.char_length_semantics #=> String, one of "default", "char", "byte"
resp.endpoint.oracle_settings.database_name #=> String
resp.endpoint.oracle_settings.direct_path_parallel_load #=> true/false
resp.endpoint.oracle_settings.fail_tasks_on_lob_truncation #=> true/false
resp.endpoint.oracle_settings.number_datatype_scale #=> Integer
resp.endpoint.oracle_settings.password #=> String
resp.endpoint.oracle_settings.port #=> Integer
resp.endpoint.oracle_settings.read_table_space_name #=> true/false
resp.endpoint.oracle_settings.retry_interval #=> Integer
resp.endpoint.oracle_settings.security_db_encryption #=> String
resp.endpoint.oracle_settings.security_db_encryption_name #=> String
resp.endpoint.oracle_settings.server_name #=> String
resp.endpoint.oracle_settings.username #=> String
resp.endpoint.sybase_settings.database_name #=> String
resp.endpoint.sybase_settings.password #=> String
resp.endpoint.sybase_settings.port #=> Integer
resp.endpoint.sybase_settings.server_name #=> String
resp.endpoint.sybase_settings.username #=> String
resp.endpoint.microsoft_sql_server_settings.port #=> Integer
resp.endpoint.microsoft_sql_server_settings.bcp_packet_size #=> Integer
resp.endpoint.microsoft_sql_server_settings.database_name #=> String
resp.endpoint.microsoft_sql_server_settings.control_tables_file_group #=> String
resp.endpoint.microsoft_sql_server_settings.password #=> String
resp.endpoint.microsoft_sql_server_settings.read_backup_only #=> true/false
resp.endpoint.microsoft_sql_server_settings.safeguard_policy #=> String, one of "rely-on-sql-server-replication-agent", "exclusive-automatic-truncation", "shared-automatic-truncation"
resp.endpoint.microsoft_sql_server_settings.server_name #=> String
resp.endpoint.microsoft_sql_server_settings.username #=> String
resp.endpoint.microsoft_sql_server_settings.use_bcp_full_load #=> true/false
resp.endpoint.ibm_db_2_settings.database_name #=> String
resp.endpoint.ibm_db_2_settings.password #=> String
resp.endpoint.ibm_db_2_settings.port #=> Integer
resp.endpoint.ibm_db_2_settings.server_name #=> String
resp.endpoint.ibm_db_2_settings.set_data_capture_changes #=> true/false
resp.endpoint.ibm_db_2_settings.current_lsn #=> String
resp.endpoint.ibm_db_2_settings.max_k_bytes_per_read #=> Integer
resp.endpoint.ibm_db_2_settings.username #=> String
resp.endpoint.doc_db_settings.username #=> String
resp.endpoint.doc_db_settings.password #=> String
resp.endpoint.doc_db_settings.server_name #=> String
resp.endpoint.doc_db_settings.port #=> Integer
resp.endpoint.doc_db_settings.database_name #=> String
resp.endpoint.doc_db_settings.nesting_level #=> String, one of "none", "one"
resp.endpoint.doc_db_settings.extract_doc_id #=> true/false
resp.endpoint.doc_db_settings.docs_to_investigate #=> Integer
resp.endpoint.doc_db_settings.kms_key_id #=> String

Options Hash (options):

  • :endpoint_arn (required, String)

    The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

Returns:

See Also:

#delete_event_subscription(options = {}) ⇒ Types::DeleteEventSubscriptionResponse

Deletes an AWS DMS event subscription.

Examples:

Request syntax with placeholder values


resp = client.delete_event_subscription({
  subscription_name: "String", # required
})

Response structure


resp.event_subscription.customer_aws_id #=> String
resp.event_subscription.cust_subscription_id #=> String
resp.event_subscription.sns_topic_arn #=> String
resp.event_subscription.status #=> String
resp.event_subscription.subscription_creation_time #=> String
resp.event_subscription.source_type #=> String
resp.event_subscription.source_ids_list #=> Array
resp.event_subscription.source_ids_list[0] #=> String
resp.event_subscription.event_categories_list #=> Array
resp.event_subscription.event_categories_list[0] #=> String
resp.event_subscription.enabled #=> true/false

Options Hash (options):

  • :subscription_name (required, String)

    The name of the DMS event notification subscription to be deleted.

Returns:

See Also:

#delete_replication_instance(options = {}) ⇒ Types::DeleteReplicationInstanceResponse

Deletes the specified replication instance.

You must delete any migration tasks that are associated with the replication instance before you can delete it.

Examples:

Example: Delete Replication Instance


# Deletes the specified replication instance. You must delete any migration tasks that are associated with the replication instance before you can delete it.

resp = client.delete_replication_instance({
  replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
})

# resp.to_h outputs the following:
{
  replication_instance: {
    allocated_storage: 5, 
    auto_minor_version_upgrade: true, 
    engine_version: "1.5.0", 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/4c1731d6-5435-ed4d-be13-d53411a7cfbd", 
    pending_modified_values: {
    }, 
    preferred_maintenance_window: "sun:06:00-sun:14:00", 
    publicly_accessible: true, 
    replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
    replication_instance_class: "dms.t2.micro", 
    replication_instance_identifier: "test-rep-1", 
    replication_instance_status: "creating", 
    replication_subnet_group: {
      replication_subnet_group_description: "default", 
      replication_subnet_group_identifier: "default", 
      subnet_group_status: "Complete", 
      subnets: [
        {
          subnet_availability_zone: {
            name: "us-east-1d", 
          }, 
          subnet_identifier: "subnet-f6dd91af", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1b", 
          }, 
          subnet_identifier: "subnet-3605751d", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1c", 
          }, 
          subnet_identifier: "subnet-c2daefb5", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1e", 
          }, 
          subnet_identifier: "subnet-85e90cb8", 
          subnet_status: "Active", 
        }, 
      ], 
      vpc_id: "vpc-6741a603", 
    }, 
  }, 
}

Request syntax with placeholder values


resp = client.delete_replication_instance({
  replication_instance_arn: "String", # required
})

Response structure


resp.replication_instance.replication_instance_identifier #=> String
resp.replication_instance.replication_instance_class #=> String
resp.replication_instance.replication_instance_status #=> String
resp.replication_instance.allocated_storage #=> Integer
resp.replication_instance.instance_create_time #=> Time
resp.replication_instance.vpc_security_groups #=> Array
resp.replication_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.replication_instance.vpc_security_groups[0].status #=> String
resp.replication_instance.availability_zone #=> String
resp.replication_instance.replication_subnet_group.replication_subnet_group_identifier #=> String
resp.replication_instance.replication_subnet_group.replication_subnet_group_description #=> String
resp.replication_instance.replication_subnet_group.vpc_id #=> String
resp.replication_instance.replication_subnet_group.subnet_group_status #=> String
resp.replication_instance.replication_subnet_group.subnets #=> Array
resp.replication_instance.replication_subnet_group.subnets[0].subnet_identifier #=> String
resp.replication_instance.replication_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.replication_instance.replication_subnet_group.subnets[0].subnet_status #=> String
resp.replication_instance.preferred_maintenance_window #=> String
resp.replication_instance.pending_modified_values.replication_instance_class #=> String
resp.replication_instance.pending_modified_values.allocated_storage #=> Integer
resp.replication_instance.pending_modified_values.multi_az #=> true/false
resp.replication_instance.pending_modified_values.engine_version #=> String
resp.replication_instance.multi_az #=> true/false
resp.replication_instance.engine_version #=> String
resp.replication_instance.auto_minor_version_upgrade #=> true/false
resp.replication_instance.kms_key_id #=> String
resp.replication_instance.replication_instance_arn #=> String
resp.replication_instance.replication_instance_public_ip_address #=> String
resp.replication_instance.replication_instance_private_ip_address #=> String
resp.replication_instance.replication_instance_public_ip_addresses #=> Array
resp.replication_instance.replication_instance_public_ip_addresses[0] #=> String
resp.replication_instance.replication_instance_private_ip_addresses #=> Array
resp.replication_instance.replication_instance_private_ip_addresses[0] #=> String
resp.replication_instance.publicly_accessible #=> true/false
resp.replication_instance.secondary_availability_zone #=> String
resp.replication_instance.free_until #=> Time
resp.replication_instance.dns_name_servers #=> String

Options Hash (options):

  • :replication_instance_arn (required, String)

    The Amazon Resource Name (ARN) of the replication instance to be deleted.

Returns:

See Also:

#delete_replication_subnet_group(options = {}) ⇒ Struct

Deletes a subnet group.

Examples:

Example: Delete Replication Subnet Group


# Deletes a replication subnet group.

resp = client.delete_replication_subnet_group({
  replication_subnet_group_identifier: "us-west-2ab-vpc-215ds366", 
})

# resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.delete_replication_subnet_group({
  replication_subnet_group_identifier: "String", # required
})

Options Hash (options):

  • :replication_subnet_group_identifier (required, String)

    The subnet group name of the replication instance.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_replication_task(options = {}) ⇒ Types::DeleteReplicationTaskResponse

Deletes the specified replication task.

Examples:

Example: Delete Replication Task


# Deletes the specified replication task.

resp = client.delete_replication_task({
  replication_task_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
})

# resp.to_h outputs the following:
{
  replication_task: {
    migration_type: "full-load", 
    replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
    replication_task_arn: "arn:aws:dms:us-east-1:123456789012:task:OEAMB3NXSTZ6LFYZFEPPBBXPYM", 
    replication_task_creation_date: Time.parse("2016-12-14T18:25:43Z"), 
    replication_task_identifier: "task1", 
    replication_task_settings: "{\"TargetMetadata\":{\"TargetSchema\":\"\",\"SupportLobs\":true,\"FullLobMode\":true,\"LobChunkSize\":64,\"LimitedSizeLobMode\":false,\"LobMaxSize\":0},\"FullLoadSettings\":{\"FullLoadEnabled\":true,\"ApplyChangesEnabled\":false,\"TargetTablePrepMode\":\"DROP_AND_CREATE\",\"CreatePkAfterFullLoad\":false,\"StopTaskCachedChangesApplied\":false,\"StopTaskCachedChangesNotApplied\":false,\"ResumeEnabled\":false,\"ResumeMinTableSize\":100000,\"ResumeOnlyClusteredPKTables\":true,\"MaxFullLoadSubTasks\":8,\"TransactionConsistencyTimeout\":600,\"CommitRate\":10000},\"Logging\":{\"EnableLogging\":false}}", 
    source_endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ZW5UAN6P4E77EC7YWHK4RZZ3BE", 
    status: "creating", 
    table_mappings: "file://mappingfile.json", 
    target_endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ASXWXJZLNWNT5HTWCGV2BUJQ7E", 
  }, 
}

Request syntax with placeholder values


resp = client.delete_replication_task({
  replication_task_arn: "String", # required
})

Response structure


resp.replication_task.replication_task_identifier #=> String
resp.replication_task.source_endpoint_arn #=> String
resp.replication_task.target_endpoint_arn #=> String
resp.replication_task.replication_instance_arn #=> String
resp.replication_task.migration_type #=> String, one of "full-load", "cdc", "full-load-and-cdc"
resp.replication_task.table_mappings #=> String
resp.replication_task.replication_task_settings #=> String
resp.replication_task.status #=> String
resp.replication_task.last_failure_message #=> String
resp.replication_task.stop_reason #=> String
resp.replication_task.replication_task_creation_date #=> Time
resp.replication_task.replication_task_start_date #=> Time
resp.replication_task.cdc_start_position #=> String
resp.replication_task.cdc_stop_position #=> String
resp.replication_task.recovery_checkpoint #=> String
resp.replication_task.replication_task_arn #=> String
resp.replication_task.replication_task_stats.full_load_progress_percent #=> Integer
resp.replication_task.replication_task_stats.elapsed_time_millis #=> Integer
resp.replication_task.replication_task_stats.tables_loaded #=> Integer
resp.replication_task.replication_task_stats.tables_loading #=> Integer
resp.replication_task.replication_task_stats.tables_queued #=> Integer
resp.replication_task.replication_task_stats.tables_errored #=> Integer
resp.replication_task.replication_task_stats.fresh_start_date #=> Time
resp.replication_task.replication_task_stats.start_date #=> Time
resp.replication_task.replication_task_stats.stop_date #=> Time
resp.replication_task.replication_task_stats.full_load_start_date #=> Time
resp.replication_task.replication_task_stats.full_load_finish_date #=> Time
resp.replication_task.task_data #=> String
resp.replication_task.target_replication_instance_arn #=> String

Options Hash (options):

  • :replication_task_arn (required, String)

    The Amazon Resource Name (ARN) of the replication task to be deleted.

Returns:

See Also:

#delete_replication_task_assessment_run(options = {}) ⇒ Types::DeleteReplicationTaskAssessmentRunResponse

Deletes the record of a single premigration assessment run.

This operation removes all metadata that AWS DMS maintains about this assessment run. However, the operation leaves untouched all information about this assessment run that is stored in your Amazon S3 bucket.

Examples:

Request syntax with placeholder values


resp = client.delete_replication_task_assessment_run({
  replication_task_assessment_run_arn: "String", # required
})

Response structure


resp.replication_task_assessment_run.replication_task_assessment_run_arn #=> String
resp.replication_task_assessment_run.replication_task_arn #=> String
resp.replication_task_assessment_run.status #=> String
resp.replication_task_assessment_run.replication_task_assessment_run_creation_date #=> Time
resp.replication_task_assessment_run.assessment_progress.individual_assessment_count #=> Integer
resp.replication_task_assessment_run.assessment_progress.individual_assessment_completed_count #=> Integer
resp.replication_task_assessment_run.last_failure_message #=> String
resp.replication_task_assessment_run.service_access_role_arn #=> String
resp.replication_task_assessment_run.result_location_bucket #=> String
resp.replication_task_assessment_run.result_location_folder #=> String
resp.replication_task_assessment_run.result_encryption_mode #=> String
resp.replication_task_assessment_run.result_kms_key_arn #=> String
resp.replication_task_assessment_run.assessment_run_name #=> String

Options Hash (options):

  • :replication_task_assessment_run_arn (required, String)

    Amazon Resource Name (ARN) of the premigration assessment run to be deleted.

Returns:

See Also:

#describe_account_attributes(options = {}) ⇒ Types::DescribeAccountAttributesResponse

Lists all of the AWS DMS attributes for a customer account. These attributes include AWS DMS quotas for the account and a unique account identifier in a particular DMS region. DMS quotas include a list of resource quotas supported by the account, such as the number of replication instances allowed. The description for each resource quota, includes the quota name, current usage toward that quota, and the quota's maximum value. DMS uses the unique account identifier to name each artifact used by DMS in the given region.

This command does not take any parameters.

Examples:

Example: Describe acount attributes


# Lists all of the AWS DMS attributes for a customer account. The attributes include AWS DMS quotas for the account, such as the number of replication instances allowed. The description for a quota includes the quota name, current usage toward that quota, and the quota's maximum value. This operation does not take any parameters.

resp = client.({
})

# resp.to_h outputs the following:
{
  account_quotas: [
    {
      account_quota_name: "ReplicationInstances", 
      max: 20, 
      used: 0, 
    }, 
    {
      account_quota_name: "AllocatedStorage", 
      max: 20, 
      used: 0, 
    }, 
    {
      account_quota_name: "Endpoints", 
      max: 20, 
      used: 0, 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.()

Response structure


resp. #=> Array
resp.[0]. #=> String
resp.[0].used #=> Integer
resp.[0].max #=> Integer
resp. #=> String

Returns:

See Also:

#describe_applicable_individual_assessments(options = {}) ⇒ Types::DescribeApplicableIndividualAssessmentsResponse

Provides a list of individual assessments that you can specify for a new premigration assessment run, given one or more parameters.

If you specify an existing migration task, this operation provides the default individual assessments you can specify for that task. Otherwise, the specified parameters model elements of a possible migration task on which to base a premigration assessment run.

To use these migration task modeling parameters, you must specify an existing replication instance, a source database engine, a target database engine, and a migration type. This combination of parameters potentially limits the default individual assessments available for an assessment run created for a corresponding migration task.

If you specify no parameters, this operation provides a list of all possible individual assessments that you can specify for an assessment run. If you specify any one of the task modeling parameters, you must specify all of them or the operation cannot provide a list of individual assessments. The only parameter that you can specify alone is for an existing migration task. The specified task definition then determines the default list of individual assessments that you can specify in an assessment run for the task.

Examples:

Request syntax with placeholder values


resp = client.describe_applicable_individual_assessments({
  replication_task_arn: "String",
  replication_instance_arn: "String",
  source_engine_name: "String",
  target_engine_name: "String",
  migration_type: "full-load", # accepts full-load, cdc, full-load-and-cdc
  max_records: 1,
  marker: "String",
})

Response structure


resp.individual_assessment_names #=> Array
resp.individual_assessment_names[0] #=> String
resp.marker #=> String

Options Hash (options):

  • :replication_task_arn (String)

    Amazon Resource Name (ARN) of a migration task on which you want to base the default list of individual assessments.

  • :replication_instance_arn (String)

    ARN of a replication instance on which you want to base the default list of individual assessments.

  • :source_engine_name (String)

    Name of a database engine that the specified replication instance supports as a source.

  • :target_engine_name (String)

    Name of a database engine that the specified replication instance supports as a target.

  • :migration_type (String)

    Name of the migration type that each provided individual assessment must support.

  • :max_records (Integer)

    Maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

  • :marker (String)

    Optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_certificates(options = {}) ⇒ Types::DescribeCertificatesResponse

Provides a description of the certificate.

Examples:

Example: Describe certificates


# Provides a description of the certificate.

resp = client.describe_certificates({
  filters: [
    {
      name: "string", 
      values: [
        "string", 
        "string", 
      ], 
    }, 
  ], 
  marker: "", 
  max_records: 123, 
})

# resp.to_h outputs the following:
{
  certificates: [
  ], 
  marker: "", 
}

Request syntax with placeholder values


resp = client.describe_certificates({
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.certificates #=> Array
resp.certificates[0].certificate_identifier #=> String
resp.certificates[0].certificate_creation_date #=> Time
resp.certificates[0].certificate_pem #=> String
resp.certificates[0].certificate_wallet #=> IO
resp.certificates[0].certificate_arn #=> String
resp.certificates[0].certificate_owner #=> String
resp.certificates[0].valid_from_date #=> Time
resp.certificates[0].valid_to_date #=> Time
resp.certificates[0].signing_algorithm #=> String
resp.certificates[0].key_length #=> Integer

Options Hash (options):

  • :filters (Array<Types::Filter>)

    Filters applied to the certificates described in the form of key-value pairs.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 10

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_connections(options = {}) ⇒ Types::DescribeConnectionsResponse

Describes the status of the connections that have been made between the replication instance and an endpoint. Connections are created when you test an endpoint.

Examples:

Example: Describe connections


# Describes the status of the connections that have been made between the replication instance and an endpoint. Connections are created when you test an endpoint.

resp = client.describe_connections({
  filters: [
    {
      name: "string", 
      values: [
        "string", 
        "string", 
      ], 
    }, 
  ], 
  marker: "", 
  max_records: 123, 
})

# resp.to_h outputs the following:
{
  connections: [
    {
      endpoint_arn: "arn:aws:dms:us-east-arn:aws:dms:us-east-1:123456789012:endpoint:ZW5UAN6P4E77EC7YWHK4RZZ3BE", 
      endpoint_identifier: "testsrc1", 
      replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
      replication_instance_identifier: "test", 
      status: "successful", 
    }, 
  ], 
  marker: "", 
}

Request syntax with placeholder values


resp = client.describe_connections({
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.connections #=> Array
resp.connections[0].replication_instance_arn #=> String
resp.connections[0].endpoint_arn #=> String
resp.connections[0].status #=> String
resp.connections[0].last_failure_message #=> String
resp.connections[0].endpoint_identifier #=> String
resp.connections[0].replication_instance_identifier #=> String

Options Hash (options):

  • :filters (Array<Types::Filter>)

    The filters applied to the connection.

    Valid filter names: endpoint-arn | replication-instance-arn

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_endpoint_types(options = {}) ⇒ Types::DescribeEndpointTypesResponse

Returns information about the type of endpoints available.

Examples:

Example: Describe endpoint types


# Returns information about the type of endpoints available.

resp = client.describe_endpoint_types({
  filters: [
    {
      name: "string", 
      values: [
        "string", 
        "string", 
      ], 
    }, 
  ], 
  marker: "", 
  max_records: 123, 
})

# resp.to_h outputs the following:
{
  marker: "", 
  supported_endpoint_types: [
  ], 
}

Request syntax with placeholder values


resp = client.describe_endpoint_types({
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.supported_endpoint_types #=> Array
resp.supported_endpoint_types[0].engine_name #=> String
resp.supported_endpoint_types[0].supports_cdc #=> true/false
resp.supported_endpoint_types[0].endpoint_type #=> String, one of "source", "target"
resp.supported_endpoint_types[0].replication_instance_engine_minimum_version #=> String
resp.supported_endpoint_types[0].engine_display_name #=> String

Options Hash (options):

  • :filters (Array<Types::Filter>)

    Filters applied to the endpoint types.

    Valid filter names: engine-name | endpoint-type

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_endpoints(options = {}) ⇒ Types::DescribeEndpointsResponse

Returns information about the endpoints for your account in the current region.

Examples:

Example: Describe endpoints


# Returns information about the endpoints for your account in the current region.

resp = client.describe_endpoints({
  filters: [
    {
      name: "string", 
      values: [
        "string", 
        "string", 
      ], 
    }, 
  ], 
  marker: "", 
  max_records: 123, 
})

# resp.to_h outputs the following:
{
  endpoints: [
  ], 
  marker: "", 
}

Request syntax with placeholder values


resp = client.describe_endpoints({
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.endpoints #=> Array
resp.endpoints[0].endpoint_identifier #=> String
resp.endpoints[0].endpoint_type #=> String, one of "source", "target"
resp.endpoints[0].engine_name #=> String
resp.endpoints[0].engine_display_name #=> String
resp.endpoints[0].username #=> String
resp.endpoints[0].server_name #=> String
resp.endpoints[0].port #=> Integer
resp.endpoints[0].database_name #=> String
resp.endpoints[0].extra_connection_attributes #=> String
resp.endpoints[0].status #=> String
resp.endpoints[0].kms_key_id #=> String
resp.endpoints[0].endpoint_arn #=> String
resp.endpoints[0].certificate_arn #=> String
resp.endpoints[0].ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.endpoints[0].service_access_role_arn #=> String
resp.endpoints[0].external_table_definition #=> String
resp.endpoints[0].external_id #=> String
resp.endpoints[0].dynamo_db_settings.service_access_role_arn #=> String
resp.endpoints[0].s3_settings.service_access_role_arn #=> String
resp.endpoints[0].s3_settings.external_table_definition #=> String
resp.endpoints[0].s3_settings.csv_row_delimiter #=> String
resp.endpoints[0].s3_settings.csv_delimiter #=> String
resp.endpoints[0].s3_settings.bucket_folder #=> String
resp.endpoints[0].s3_settings.bucket_name #=> String
resp.endpoints[0].s3_settings.compression_type #=> String, one of "none", "gzip"
resp.endpoints[0].s3_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
resp.endpoints[0].s3_settings.server_side_encryption_kms_key_id #=> String
resp.endpoints[0].s3_settings.data_format #=> String, one of "csv", "parquet"
resp.endpoints[0].s3_settings.encoding_type #=> String, one of "plain", "plain-dictionary", "rle-dictionary"
resp.endpoints[0].s3_settings.dict_page_size_limit #=> Integer
resp.endpoints[0].s3_settings.row_group_length #=> Integer
resp.endpoints[0].s3_settings.data_page_size #=> Integer
resp.endpoints[0].s3_settings.parquet_version #=> String, one of "parquet-1-0", "parquet-2-0"
resp.endpoints[0].s3_settings.enable_statistics #=> true/false
resp.endpoints[0].s3_settings.include_op_for_full_load #=> true/false
resp.endpoints[0].s3_settings.cdc_inserts_only #=> true/false
resp.endpoints[0].s3_settings.timestamp_column_name #=> String
resp.endpoints[0].s3_settings.parquet_timestamp_in_millisecond #=> true/false
resp.endpoints[0].s3_settings.cdc_inserts_and_updates #=> true/false
resp.endpoints[0].s3_settings.date_partition_enabled #=> true/false
resp.endpoints[0].s3_settings.date_partition_sequence #=> String, one of "YYYYMMDD", "YYYYMMDDHH", "YYYYMM", "MMYYYYDD", "DDMMYYYY"
resp.endpoints[0].s3_settings.date_partition_delimiter #=> String, one of "SLASH", "UNDERSCORE", "DASH", "NONE"
resp.endpoints[0].dms_transfer_settings.service_access_role_arn #=> String
resp.endpoints[0].dms_transfer_settings.bucket_name #=> String
resp.endpoints[0].mongo_db_settings.username #=> String
resp.endpoints[0].mongo_db_settings.password #=> String
resp.endpoints[0].mongo_db_settings.server_name #=> String
resp.endpoints[0].mongo_db_settings.port #=> Integer
resp.endpoints[0].mongo_db_settings.database_name #=> String
resp.endpoints[0].mongo_db_settings.auth_type #=> String, one of "no", "password"
resp.endpoints[0].mongo_db_settings.auth_mechanism #=> String, one of "default", "mongodb_cr", "scram_sha_1"
resp.endpoints[0].mongo_db_settings.nesting_level #=> String, one of "none", "one"
resp.endpoints[0].mongo_db_settings.extract_doc_id #=> String
resp.endpoints[0].mongo_db_settings.docs_to_investigate #=> String
resp.endpoints[0].mongo_db_settings.auth_source #=> String
resp.endpoints[0].mongo_db_settings.kms_key_id #=> String
resp.endpoints[0].kinesis_settings.stream_arn #=> String
resp.endpoints[0].kinesis_settings.message_format #=> String, one of "json", "json-unformatted"
resp.endpoints[0].kinesis_settings.service_access_role_arn #=> String
resp.endpoints[0].kinesis_settings.include_transaction_details #=> true/false
resp.endpoints[0].kinesis_settings.include_partition_value #=> true/false
resp.endpoints[0].kinesis_settings.partition_include_schema_table #=> true/false
resp.endpoints[0].kinesis_settings.include_table_alter_operations #=> true/false
resp.endpoints[0].kinesis_settings.include_control_details #=> true/false
resp.endpoints[0].kinesis_settings.include_null_and_empty #=> true/false
resp.endpoints[0].kafka_settings.broker #=> String
resp.endpoints[0].kafka_settings.topic #=> String
resp.endpoints[0].kafka_settings.message_format #=> String, one of "json", "json-unformatted"
resp.endpoints[0].kafka_settings.include_transaction_details #=> true/false
resp.endpoints[0].kafka_settings.include_partition_value #=> true/false
resp.endpoints[0].kafka_settings.partition_include_schema_table #=> true/false
resp.endpoints[0].kafka_settings.include_table_alter_operations #=> true/false
resp.endpoints[0].kafka_settings.include_control_details #=> true/false
resp.endpoints[0].kafka_settings.message_max_bytes #=> Integer
resp.endpoints[0].kafka_settings.include_null_and_empty #=> true/false
resp.endpoints[0].elasticsearch_settings.service_access_role_arn #=> String
resp.endpoints[0].elasticsearch_settings.endpoint_uri #=> String
resp.endpoints[0].elasticsearch_settings.full_load_error_percentage #=> Integer
resp.endpoints[0].elasticsearch_settings.error_retry_duration #=> Integer
resp.endpoints[0].neptune_settings.service_access_role_arn #=> String
resp.endpoints[0].neptune_settings.s3_bucket_name #=> String
resp.endpoints[0].neptune_settings.s3_bucket_folder #=> String
resp.endpoints[0].neptune_settings.error_retry_duration #=> Integer
resp.endpoints[0].neptune_settings.max_file_size #=> Integer
resp.endpoints[0].neptune_settings.max_retry_count #=> Integer
resp.endpoints[0].neptune_settings.iam_auth_enabled #=> true/false
resp.endpoints[0].redshift_settings.accept_any_date #=> true/false
resp.endpoints[0].redshift_settings.after_connect_script #=> String
resp.endpoints[0].redshift_settings.bucket_folder #=> String
resp.endpoints[0].redshift_settings.bucket_name #=> String
resp.endpoints[0].redshift_settings.case_sensitive_names #=> true/false
resp.endpoints[0].redshift_settings.comp_update #=> true/false
resp.endpoints[0].redshift_settings.connection_timeout #=> Integer
resp.endpoints[0].redshift_settings.database_name #=> String
resp.endpoints[0].redshift_settings.date_format #=> String
resp.endpoints[0].redshift_settings.empty_as_null #=> true/false
resp.endpoints[0].redshift_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
resp.endpoints[0].redshift_settings.explicit_ids #=> true/false
resp.endpoints[0].redshift_settings.file_transfer_upload_streams #=> Integer
resp.endpoints[0].redshift_settings.load_timeout #=> Integer
resp.endpoints[0].redshift_settings.max_file_size #=> Integer
resp.endpoints[0].redshift_settings.password #=> String
resp.endpoints[0].redshift_settings.port #=> Integer
resp.endpoints[0].redshift_settings.remove_quotes #=> true/false
resp.endpoints[0].redshift_settings.replace_invalid_chars #=> String
resp.endpoints[0].redshift_settings.replace_chars #=> String
resp.endpoints[0].redshift_settings.server_name #=> String
resp.endpoints[0].redshift_settings.service_access_role_arn #=> String
resp.endpoints[0].redshift_settings.server_side_encryption_kms_key_id #=> String
resp.endpoints[0].redshift_settings.time_format #=> String
resp.endpoints[0].redshift_settings.trim_blanks #=> true/false
resp.endpoints[0].redshift_settings.truncate_columns #=> true/false
resp.endpoints[0].redshift_settings.username #=> String
resp.endpoints[0].redshift_settings.write_buffer_size #=> Integer
resp.endpoints[0].postgre_sql_settings.after_connect_script #=> String
resp.endpoints[0].postgre_sql_settings.capture_ddls #=> true/false
resp.endpoints[0].postgre_sql_settings.max_file_size #=> Integer
resp.endpoints[0].postgre_sql_settings.database_name #=> String
resp.endpoints[0].postgre_sql_settings.ddl_artifacts_schema #=> String
resp.endpoints[0].postgre_sql_settings.execute_timeout #=> Integer
resp.endpoints[0].postgre_sql_settings.fail_tasks_on_lob_truncation #=> true/false
resp.endpoints[0].postgre_sql_settings.password #=> String
resp.endpoints[0].postgre_sql_settings.port #=> Integer
resp.endpoints[0].postgre_sql_settings.server_name #=> String
resp.endpoints[0].postgre_sql_settings.username #=> String
resp.endpoints[0].postgre_sql_settings.slot_name #=> String
resp.endpoints[0].my_sql_settings.after_connect_script #=> String
resp.endpoints[0].my_sql_settings.database_name #=> String
resp.endpoints[0].my_sql_settings.events_poll_interval #=> Integer
resp.endpoints[0].my_sql_settings.target_db_type #=> String, one of "specific-database", "multiple-databases"
resp.endpoints[0].my_sql_settings.max_file_size #=> Integer
resp.endpoints[0].my_sql_settings.parallel_load_threads #=> Integer
resp.endpoints[0].my_sql_settings.password #=> String
resp.endpoints[0].my_sql_settings.port #=> Integer
resp.endpoints[0].my_sql_settings.server_name #=> String
resp.endpoints[0].my_sql_settings.server_timezone #=> String
resp.endpoints[0].my_sql_settings.username #=> String
resp.endpoints[0].oracle_settings.add_supplemental_logging #=> true/false
resp.endpoints[0].oracle_settings.archived_log_dest_id #=> Integer
resp.endpoints[0].oracle_settings.additional_archived_log_dest_id #=> Integer
resp.endpoints[0].oracle_settings.allow_select_nested_tables #=> true/false
resp.endpoints[0].oracle_settings.parallel_asm_read_threads #=> Integer
resp.endpoints[0].oracle_settings.read_ahead_blocks #=> Integer
resp.endpoints[0].oracle_settings.access_alternate_directly #=> true/false
resp.endpoints[0].oracle_settings.use_alternate_folder_for_online #=> true/false
resp.endpoints[0].oracle_settings.oracle_path_prefix #=> String
resp.endpoints[0].oracle_settings.use_path_prefix #=> String
resp.endpoints[0].oracle_settings.replace_path_prefix #=> true/false
resp.endpoints[0].oracle_settings.enable_homogenous_tablespace #=> true/false
resp.endpoints[0].oracle_settings.direct_path_no_log #=> true/false
resp.endpoints[0].oracle_settings.archived_logs_only #=> true/false
resp.endpoints[0].oracle_settings.asm_password #=> String
resp.endpoints[0].oracle_settings.asm_server #=> String
resp.endpoints[0].oracle_settings.asm_user #=> String
resp.endpoints[0].oracle_settings.char_length_semantics #=> String, one of "default", "char", "byte"
resp.endpoints[0].oracle_settings.database_name #=> String
resp.endpoints[0].oracle_settings.direct_path_parallel_load #=> true/false
resp.endpoints[0].oracle_settings.fail_tasks_on_lob_truncation #=> true/false
resp.endpoints[0].oracle_settings.number_datatype_scale #=> Integer
resp.endpoints[0].oracle_settings.password #=> String
resp.endpoints[0].oracle_settings.port #=> Integer
resp.endpoints[0].oracle_settings.read_table_space_name #=> true/false
resp.endpoints[0].oracle_settings.retry_interval #=> Integer
resp.endpoints[0].oracle_settings.security_db_encryption #=> String
resp.endpoints[0].oracle_settings.security_db_encryption_name #=> String
resp.endpoints[0].oracle_settings.server_name #=> String
resp.endpoints[0].oracle_settings.username #=> String
resp.endpoints[0].sybase_settings.database_name #=> String
resp.endpoints[0].sybase_settings.password #=> String
resp.endpoints[0].sybase_settings.port #=> Integer
resp.endpoints[0].sybase_settings.server_name #=> String
resp.endpoints[0].sybase_settings.username #=> String
resp.endpoints[0].microsoft_sql_server_settings.port #=> Integer
resp.endpoints[0].microsoft_sql_server_settings.bcp_packet_size #=> Integer
resp.endpoints[0].microsoft_sql_server_settings.database_name #=> String
resp.endpoints[0].microsoft_sql_server_settings.control_tables_file_group #=> String
resp.endpoints[0].microsoft_sql_server_settings.password #=> String
resp.endpoints[0].microsoft_sql_server_settings.read_backup_only #=> true/false
resp.endpoints[0].microsoft_sql_server_settings.safeguard_policy #=> String, one of "rely-on-sql-server-replication-agent", "exclusive-automatic-truncation", "shared-automatic-truncation"
resp.endpoints[0].microsoft_sql_server_settings.server_name #=> String
resp.endpoints[0].microsoft_sql_server_settings.username #=> String
resp.endpoints[0].microsoft_sql_server_settings.use_bcp_full_load #=> true/false
resp.endpoints[0].ibm_db_2_settings.database_name #=> String
resp.endpoints[0].ibm_db_2_settings.password #=> String
resp.endpoints[0].ibm_db_2_settings.port #=> Integer
resp.endpoints[0].ibm_db_2_settings.server_name #=> String
resp.endpoints[0].ibm_db_2_settings.set_data_capture_changes #=> true/false
resp.endpoints[0].ibm_db_2_settings.current_lsn #=> String
resp.endpoints[0].ibm_db_2_settings.max_k_bytes_per_read #=> Integer
resp.endpoints[0].ibm_db_2_settings.username #=> String
resp.endpoints[0].doc_db_settings.username #=> String
resp.endpoints[0].doc_db_settings.password #=> String
resp.endpoints[0].doc_db_settings.server_name #=> String
resp.endpoints[0].doc_db_settings.port #=> Integer
resp.endpoints[0].doc_db_settings.database_name #=> String
resp.endpoints[0].doc_db_settings.nesting_level #=> String, one of "none", "one"
resp.endpoints[0].doc_db_settings.extract_doc_id #=> true/false
resp.endpoints[0].doc_db_settings.docs_to_investigate #=> Integer
resp.endpoints[0].doc_db_settings.kms_key_id #=> String

Options Hash (options):

  • :filters (Array<Types::Filter>)

    Filters applied to the endpoints.

    Valid filter names: endpoint-arn | endpoint-type | endpoint-id | engine-name

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_event_categories(options = {}) ⇒ Types::DescribeEventCategoriesResponse

Lists categories for all event source types, or, if specified, for a specified source type. You can see a list of the event categories and source types in Working with Events and Notifications in the AWS Database Migration Service User Guide.

Examples:

Request syntax with placeholder values


resp = client.describe_event_categories({
  source_type: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
})

Response structure


resp.event_category_group_list #=> Array
resp.event_category_group_list[0].source_type #=> String
resp.event_category_group_list[0].event_categories #=> Array
resp.event_category_group_list[0].event_categories[0] #=> String

Options Hash (options):

  • :source_type (String)

    The type of AWS DMS resource that generates events.

    Valid values: replication-instance | replication-task

  • :filters (Array<Types::Filter>)

    Filters applied to the event categories.

Returns:

See Also:

#describe_event_subscriptions(options = {}) ⇒ Types::DescribeEventSubscriptionsResponse

Lists all the event subscriptions for a customer account. The description of a subscription includes SubscriptionName, SNSTopicARN, CustomerID, SourceType, SourceID, CreationTime, and Status.

If you specify SubscriptionName, this action lists the description for that subscription.

Examples:

Request syntax with placeholder values


resp = client.describe_event_subscriptions({
  subscription_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.event_subscriptions_list #=> Array
resp.event_subscriptions_list[0].customer_aws_id #=> String
resp.event_subscriptions_list[0].cust_subscription_id #=> String
resp.event_subscriptions_list[0].sns_topic_arn #=> String
resp.event_subscriptions_list[0].status #=> String
resp.event_subscriptions_list[0].subscription_creation_time #=> String
resp.event_subscriptions_list[0].source_type #=> String
resp.event_subscriptions_list[0].source_ids_list #=> Array
resp.event_subscriptions_list[0].source_ids_list[0] #=> String
resp.event_subscriptions_list[0].event_categories_list #=> Array
resp.event_subscriptions_list[0].event_categories_list[0] #=> String
resp.event_subscriptions_list[0].enabled #=> true/false

Options Hash (options):

  • :subscription_name (String)

    The name of the AWS DMS event subscription to be described.

  • :filters (Array<Types::Filter>)

    Filters applied to event subscriptions.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_events(options = {}) ⇒ Types::DescribeEventsResponse

Lists events for a given source identifier and source type. You can also specify a start and end time. For more information on AWS DMS events, see Working with Events and Notifications in the AWS Database Migration User Guide.

Examples:

Request syntax with placeholder values


resp = client.describe_events({
  source_identifier: "String",
  source_type: "replication-instance", # accepts replication-instance
  start_time: Time.now,
  end_time: Time.now,
  duration: 1,
  event_categories: ["String"],
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.events #=> Array
resp.events[0].source_identifier #=> String
resp.events[0].source_type #=> String, one of "replication-instance"
resp.events[0].message #=> String
resp.events[0].event_categories #=> Array
resp.events[0].event_categories[0] #=> String
resp.events[0].date #=> Time

Options Hash (options):

  • :source_identifier (String)

    The identifier of an event source.

  • :source_type (String)

    The type of AWS DMS resource that generates events.

    Valid values: replication-instance | replication-task

  • :start_time (Time)

    The start time for the events to be listed.

  • :end_time (Time)

    The end time for the events to be listed.

  • :duration (Integer)

    The duration of the events to be listed.

  • :event_categories (Array<String>)

    A list of event categories for the source type that you\'ve chosen.

  • :filters (Array<Types::Filter>)

    Filters applied to events.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_orderable_replication_instances(options = {}) ⇒ Types::DescribeOrderableReplicationInstancesResponse

Returns information about the replication instance types that can be created in the specified region.

Examples:

Example: Describe orderable replication instances


# Returns information about the replication instance types that can be created in the specified region.

resp = client.describe_orderable_replication_instances({
  marker: "", 
  max_records: 123, 
})

# resp.to_h outputs the following:
{
  marker: "", 
  orderable_replication_instances: [
  ], 
}

Request syntax with placeholder values


resp = client.describe_orderable_replication_instances({
  max_records: 1,
  marker: "String",
})

Response structure


resp.orderable_replication_instances #=> Array
resp.orderable_replication_instances[0].engine_version #=> String
resp.orderable_replication_instances[0].replication_instance_class #=> String
resp.orderable_replication_instances[0].storage_type #=> String
resp.orderable_replication_instances[0].min_allocated_storage #=> Integer
resp.orderable_replication_instances[0].max_allocated_storage #=> Integer
resp.orderable_replication_instances[0].default_allocated_storage #=> Integer
resp.orderable_replication_instances[0].included_allocated_storage #=> Integer
resp.orderable_replication_instances[0].availability_zones #=> Array
resp.orderable_replication_instances[0].availability_zones[0] #=> String
resp.orderable_replication_instances[0].release_status #=> String, one of "beta"
resp.marker #=> String

Options Hash (options):

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_pending_maintenance_actions(options = {}) ⇒ Types::DescribePendingMaintenanceActionsResponse

For internal use only

Examples:

Request syntax with placeholder values


resp = client.describe_pending_maintenance_actions({
  replication_instance_arn: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
})

Response structure


resp.pending_maintenance_actions #=> Array
resp.pending_maintenance_actions[0].resource_identifier #=> String
resp.pending_maintenance_actions[0].pending_maintenance_action_details #=> Array
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].action #=> String
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].auto_applied_after_date #=> Time
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].forced_apply_date #=> Time
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].opt_in_status #=> String
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].current_apply_date #=> Time
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].description #=> String
resp.marker #=> String

Options Hash (options):

  • :replication_instance_arn (String)

    The Amazon Resource Name (ARN) of the replication instance.

  • :filters (Array<Types::Filter>)
  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

Returns:

See Also:

#describe_refresh_schemas_status(options = {}) ⇒ Types::DescribeRefreshSchemasStatusResponse

Returns the status of the RefreshSchemas operation.

Examples:

Example: Describe refresh schema status


# Returns the status of the refresh-schemas operation.

resp = client.describe_refresh_schemas_status({
  endpoint_arn: "", 
})

# resp.to_h outputs the following:
{
  refresh_schemas_status: {
  }, 
}

Request syntax with placeholder values


resp = client.describe_refresh_schemas_status({
  endpoint_arn: "String", # required
})

Response structure


resp.refresh_schemas_status.endpoint_arn #=> String
resp.refresh_schemas_status.replication_instance_arn #=> String
resp.refresh_schemas_status.status #=> String, one of "successful", "failed", "refreshing"
resp.refresh_schemas_status.last_refresh_date #=> Time
resp.refresh_schemas_status.last_failure_message #=> String

Options Hash (options):

  • :endpoint_arn (required, String)

    The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

Returns:

See Also:

#describe_replication_instance_task_logs(options = {}) ⇒ Types::DescribeReplicationInstanceTaskLogsResponse

Returns information about the task logs for the specified task.

Examples:

Request syntax with placeholder values


resp = client.describe_replication_instance_task_logs({
  replication_instance_arn: "String", # required
  max_records: 1,
  marker: "String",
})

Response structure


resp.replication_instance_arn #=> String
resp.replication_instance_task_logs #=> Array
resp.replication_instance_task_logs[0].replication_task_name #=> String
resp.replication_instance_task_logs[0].replication_task_arn #=> String
resp.replication_instance_task_logs[0].replication_instance_task_log_size #=> Integer
resp.marker #=> String

Options Hash (options):

  • :replication_instance_arn (required, String)

    The Amazon Resource Name (ARN) of the replication instance.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_replication_instances(options = {}) ⇒ Types::DescribeReplicationInstancesResponse

Returns information about replication instances for your account in the current region.

Examples:

Example: Describe replication instances


# Returns the status of the refresh-schemas operation.

resp = client.describe_replication_instances({
  filters: [
    {
      name: "string", 
      values: [
        "string", 
        "string", 
      ], 
    }, 
  ], 
  marker: "", 
  max_records: 123, 
})

# resp.to_h outputs the following:
{
  marker: "", 
  replication_instances: [
  ], 
}

Request syntax with placeholder values


resp = client.describe_replication_instances({
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.replication_instances #=> Array
resp.replication_instances[0].replication_instance_identifier #=> String
resp.replication_instances[0].replication_instance_class #=> String
resp.replication_instances[0].replication_instance_status #=> String
resp.replication_instances[0].allocated_storage #=> Integer
resp.replication_instances[0].instance_create_time #=> Time
resp.replication_instances[0].vpc_security_groups #=> Array
resp.replication_instances[0].vpc_security_groups[0].vpc_security_group_id #=> String
resp.replication_instances[0].vpc_security_groups[0].status #=> String
resp.replication_instances[0].availability_zone #=> String
resp.replication_instances[0].replication_subnet_group.replication_subnet_group_identifier #=> String
resp.replication_instances[0].replication_subnet_group.replication_subnet_group_description #=> String
resp.replication_instances[0].replication_subnet_group.vpc_id #=> String
resp.replication_instances[0].replication_subnet_group.subnet_group_status #=> String
resp.replication_instances[0].replication_subnet_group.subnets #=> Array
resp.replication_instances[0].replication_subnet_group.subnets[0].subnet_identifier #=> String
resp.replication_instances[0].replication_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.replication_instances[0].replication_subnet_group.subnets[0].subnet_status #=> String
resp.replication_instances[0].preferred_maintenance_window #=> String
resp.replication_instances[0].pending_modified_values.replication_instance_class #=> String
resp.replication_instances[0].pending_modified_values.allocated_storage #=> Integer
resp.replication_instances[0].pending_modified_values.multi_az #=> true/false
resp.replication_instances[0].pending_modified_values.engine_version #=> String
resp.replication_instances[0].multi_az #=> true/false
resp.replication_instances[0].engine_version #=> String
resp.replication_instances[0].auto_minor_version_upgrade #=> true/false
resp.replication_instances[0].kms_key_id #=> String
resp.replication_instances[0].replication_instance_arn #=> String
resp.replication_instances[0].replication_instance_public_ip_address #=> String
resp.replication_instances[0].replication_instance_private_ip_address #=> String
resp.replication_instances[0].replication_instance_public_ip_addresses #=> Array
resp.replication_instances[0].replication_instance_public_ip_addresses[0] #=> String
resp.replication_instances[0].replication_instance_private_ip_addresses #=> Array
resp.replication_instances[0].replication_instance_private_ip_addresses[0] #=> String
resp.replication_instances[0].publicly_accessible #=> true/false
resp.replication_instances[0].secondary_availability_zone #=> String
resp.replication_instances[0].free_until #=> Time
resp.replication_instances[0].dns_name_servers #=> String

Options Hash (options):

  • :filters (Array<Types::Filter>)

    Filters applied to replication instances.

    Valid filter names: replication-instance-arn | replication-instance-id | replication-instance-class | engine-version

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_replication_subnet_groups(options = {}) ⇒ Types::DescribeReplicationSubnetGroupsResponse

Returns information about the replication subnet groups.

Examples:

Example: Describe replication subnet groups


# Returns information about the replication subnet groups.

resp = client.describe_replication_subnet_groups({
  filters: [
    {
      name: "string", 
      values: [
        "string", 
        "string", 
      ], 
    }, 
  ], 
  marker: "", 
  max_records: 123, 
})

# resp.to_h outputs the following:
{
  marker: "", 
  replication_subnet_groups: [
  ], 
}

Request syntax with placeholder values


resp = client.describe_replication_subnet_groups({
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.replication_subnet_groups #=> Array
resp.replication_subnet_groups[0].replication_subnet_group_identifier #=> String
resp.replication_subnet_groups[0].replication_subnet_group_description #=> String
resp.replication_subnet_groups[0].vpc_id #=> String
resp.replication_subnet_groups[0].subnet_group_status #=> String
resp.replication_subnet_groups[0].subnets #=> Array
resp.replication_subnet_groups[0].subnets[0].subnet_identifier #=> String
resp.replication_subnet_groups[0].subnets[0].subnet_availability_zone.name #=> String
resp.replication_subnet_groups[0].subnets[0].subnet_status #=> String

Options Hash (options):

  • :filters (Array<Types::Filter>)

    Filters applied to replication subnet groups.

    Valid filter names: replication-subnet-group-id

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_replication_task_assessment_results(options = {}) ⇒ Types::DescribeReplicationTaskAssessmentResultsResponse

Returns the task assessment results from Amazon S3. This action always returns the latest results.

Examples:

Request syntax with placeholder values


resp = client.describe_replication_task_assessment_results({
  replication_task_arn: "String",
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.bucket_name #=> String
resp.replication_task_assessment_results #=> Array
resp.replication_task_assessment_results[0].replication_task_identifier #=> String
resp.replication_task_assessment_results[0].replication_task_arn #=> String
resp.replication_task_assessment_results[0].replication_task_last_assessment_date #=> Time
resp.replication_task_assessment_results[0].assessment_status #=> String
resp.replication_task_assessment_results[0].assessment_results_file #=> String
resp.replication_task_assessment_results[0].assessment_results #=> String
resp.replication_task_assessment_results[0].s3_object_url #=> String

Options Hash (options):

  • :replication_task_arn (String)

    The Amazon Resource Name (ARN) string that uniquely identifies the task. When this input parameter is specified, the API returns only one result and ignore the values of the MaxRecords and Marker parameters.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_replication_task_assessment_runs(options = {}) ⇒ Types::DescribeReplicationTaskAssessmentRunsResponse

Returns a paginated list of premigration assessment runs based on filter settings.

These filter settings can specify a combination of premigration assessment runs, migration tasks, replication instances, and assessment run status values.

This operation doesn't return information about individual assessments. For this information, see the DescribeReplicationTaskIndividualAssessments operation.

Examples:

Request syntax with placeholder values


resp = client.describe_replication_task_assessment_runs({
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.replication_task_assessment_runs #=> Array
resp.replication_task_assessment_runs[0].replication_task_assessment_run_arn #=> String
resp.replication_task_assessment_runs[0].replication_task_arn #=> String
resp.replication_task_assessment_runs[0].status #=> String
resp.replication_task_assessment_runs[0].replication_task_assessment_run_creation_date #=> Time
resp.replication_task_assessment_runs[0].assessment_progress.individual_assessment_count #=> Integer
resp.replication_task_assessment_runs[0].assessment_progress.individual_assessment_completed_count #=> Integer
resp.replication_task_assessment_runs[0].last_failure_message #=> String
resp.replication_task_assessment_runs[0].service_access_role_arn #=> String
resp.replication_task_assessment_runs[0].result_location_bucket #=> String
resp.replication_task_assessment_runs[0].result_location_folder #=> String
resp.replication_task_assessment_runs[0].result_encryption_mode #=> String
resp.replication_task_assessment_runs[0].result_kms_key_arn #=> String
resp.replication_task_assessment_runs[0].assessment_run_name #=> String

Options Hash (options):

  • :filters (Array<Types::Filter>)

    Filters applied to the premigration assessment runs described in the form of key-value pairs.

    Valid filter names: replication-task-assessment-run-arn, replication-task-arn, replication-instance-arn, status

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_replication_task_individual_assessments(options = {}) ⇒ Types::DescribeReplicationTaskIndividualAssessmentsResponse

Returns a paginated list of individual assessments based on filter settings.

These filter settings can specify a combination of premigration assessment runs, migration tasks, and assessment status values.

Examples:

Request syntax with placeholder values


resp = client.describe_replication_task_individual_assessments({
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.replication_task_individual_assessments #=> Array
resp.replication_task_individual_assessments[0].replication_task_individual_assessment_arn #=> String
resp.replication_task_individual_assessments[0].replication_task_assessment_run_arn #=> String
resp.replication_task_individual_assessments[0].individual_assessment_name #=> String
resp.replication_task_individual_assessments[0].status #=> String
resp.replication_task_individual_assessments[0].replication_task_individual_assessment_start_date #=> Time

Options Hash (options):

  • :filters (Array<Types::Filter>)

    Filters applied to the individual assessments described in the form of key-value pairs.

    Valid filter names: replication-task-assessment-run-arn, replication-task-arn, status

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_replication_tasks(options = {}) ⇒ Types::DescribeReplicationTasksResponse

Returns information about replication tasks for your account in the current region.

Examples:

Example: Describe replication tasks


# Returns information about replication tasks for your account in the current region.

resp = client.describe_replication_tasks({
  filters: [
    {
      name: "string", 
      values: [
        "string", 
        "string", 
      ], 
    }, 
  ], 
  marker: "", 
  max_records: 123, 
})

# resp.to_h outputs the following:
{
  marker: "", 
  replication_tasks: [
  ], 
}

Request syntax with placeholder values


resp = client.describe_replication_tasks({
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
  without_settings: false,
})

Response structure


resp.marker #=> String
resp.replication_tasks #=> Array
resp.replication_tasks[0].replication_task_identifier #=> String
resp.replication_tasks[0].source_endpoint_arn #=> String
resp.replication_tasks[0].target_endpoint_arn #=> String
resp.replication_tasks[0].replication_instance_arn #=> String
resp.replication_tasks[0].migration_type #=> String, one of "full-load", "cdc", "full-load-and-cdc"
resp.replication_tasks[0].table_mappings #=> String
resp.replication_tasks[0].replication_task_settings #=> String
resp.replication_tasks[0].status #=> String
resp.replication_tasks[0].last_failure_message #=> String
resp.replication_tasks[0].stop_reason #=> String
resp.replication_tasks[0].replication_task_creation_date #=> Time
resp.replication_tasks[0].replication_task_start_date #=> Time
resp.replication_tasks[0].cdc_start_position #=> String
resp.replication_tasks[0].cdc_stop_position #=> String
resp.replication_tasks[0].recovery_checkpoint #=> String
resp.replication_tasks[0].replication_task_arn #=> String
resp.replication_tasks[0].replication_task_stats.full_load_progress_percent #=> Integer
resp.replication_tasks[0].replication_task_stats.elapsed_time_millis #=> Integer
resp.replication_tasks[0].replication_task_stats.tables_loaded #=> Integer
resp.replication_tasks[0].replication_task_stats.tables_loading #=> Integer
resp.replication_tasks[0].replication_task_stats.tables_queued #=> Integer
resp.replication_tasks[0].replication_task_stats.tables_errored #=> Integer
resp.replication_tasks[0].replication_task_stats.fresh_start_date #=> Time
resp.replication_tasks[0].replication_task_stats.start_date #=> Time
resp.replication_tasks[0].replication_task_stats.stop_date #=> Time
resp.replication_tasks[0].replication_task_stats.full_load_start_date #=> Time
resp.replication_tasks[0].replication_task_stats.full_load_finish_date #=> Time
resp.replication_tasks[0].task_data #=> String
resp.replication_tasks[0].target_replication_instance_arn #=> String

Options Hash (options):

  • :filters (Array<Types::Filter>)

    Filters applied to replication tasks.

    Valid filter names: replication-task-arn | replication-task-id | migration-type | endpoint-arn | replication-instance-arn

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

  • :without_settings (Boolean)

    An option to set to avoid returning information about settings. Use this to reduce overhead when setting information is too large. To use this option, choose true; otherwise, choose false (the default).

Returns:

See Also:

#describe_schemas(options = {}) ⇒ Types::DescribeSchemasResponse

Returns information about the schema for the specified endpoint.

Examples:

Example: Describe schemas


# Returns information about the schema for the specified endpoint.

resp = client.describe_schemas({
  endpoint_arn: "", 
  marker: "", 
  max_records: 123, 
})

# resp.to_h outputs the following:
{
  marker: "", 
  schemas: [
  ], 
}

Request syntax with placeholder values


resp = client.describe_schemas({
  endpoint_arn: "String", # required
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.schemas #=> Array
resp.schemas[0] #=> String

Options Hash (options):

  • :endpoint_arn (required, String)

    The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Returns:

See Also:

#describe_table_statistics(options = {}) ⇒ Types::DescribeTableStatisticsResponse

Returns table statistics on the database migration task, including table name, rows inserted, rows updated, and rows deleted.

Note that the "last updated" column the DMS console only indicates the time that AWS DMS last updated the table statistics record for a table. It does not indicate the time of the last update to the table.

Examples:

Example: Describe table statistics


# Returns table statistics on the database migration task, including table name, rows inserted, rows updated, and rows deleted.

resp = client.describe_table_statistics({
  marker: "", 
  max_records: 123, 
  replication_task_arn: "", 
})

# resp.to_h outputs the following:
{
  marker: "", 
  replication_task_arn: "", 
  table_statistics: [
  ], 
}

Request syntax with placeholder values


resp = client.describe_table_statistics({
  replication_task_arn: "String", # required
  max_records: 1,
  marker: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
})

Response structure


resp.replication_task_arn #=> String
resp.table_statistics #=> Array
resp.table_statistics[0].schema_name #=> String
resp.table_statistics[0].table_name #=> String
resp.table_statistics[0].inserts #=> Integer
resp.table_statistics[0].deletes #=> Integer
resp.table_statistics[0].updates #=> Integer
resp.table_statistics[0].ddls #=> Integer
resp.table_statistics[0].full_load_rows #=> Integer
resp.table_statistics[0].full_load_condtnl_chk_failed_rows #=> Integer
resp.table_statistics[0].full_load_error_rows #=> Integer
resp.table_statistics[0].full_load_start_time #=> Time
resp.table_statistics[0].full_load_end_time #=> Time
resp.table_statistics[0].full_load_reloaded #=> true/false
resp.table_statistics[0].last_update_time #=> Time
resp.table_statistics[0].table_state #=> String
resp.table_statistics[0].validation_pending_records #=> Integer
resp.table_statistics[0].validation_failed_records #=> Integer
resp.table_statistics[0].validation_suspended_records #=> Integer
resp.table_statistics[0].validation_state #=> String
resp.table_statistics[0].validation_state_details #=> String
resp.marker #=> String

Options Hash (options):

  • :replication_task_arn (required, String)

    The Amazon Resource Name (ARN) of the replication task.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 500.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

  • :filters (Array<Types::Filter>)

    Filters applied to table statistics.

    Valid filter names: schema-name | table-name | table-state

    A combination of filters creates an AND condition where each record matches all specified filters.

Returns:

See Also:

#import_certificate(options = {}) ⇒ Types::ImportCertificateResponse

Uploads the specified certificate.

Examples:

Example: Import certificate


# Uploads the specified certificate.

resp = client.import_certificate({
  certificate_identifier: "", 
  certificate_pem: "", 
})

# resp.to_h outputs the following:
{
  certificate: {
  }, 
}

Request syntax with placeholder values


resp = client.import_certificate({
  certificate_identifier: "String", # required
  certificate_pem: "String",
  certificate_wallet: "data",
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.certificate.certificate_identifier #=> String
resp.certificate.certificate_creation_date #=> Time
resp.certificate.certificate_pem #=> String
resp.certificate.certificate_wallet #=> IO
resp.certificate.certificate_arn #=> String
resp.certificate.certificate_owner #=> String
resp.certificate.valid_from_date #=> Time
resp.certificate.valid_to_date #=> Time
resp.certificate.signing_algorithm #=> String
resp.certificate.key_length #=> Integer

Options Hash (options):

  • :certificate_identifier (required, String)

    A customer-assigned name for the certificate. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can\'t end with a hyphen or contain two consecutive hyphens.

  • :certificate_pem (String)

    The contents of a .pem file, which contains an X.509 certificate.

  • :certificate_wallet (IO, String)

    The location of an imported Oracle Wallet certificate for use with SSL.

  • :tags (Array<Types::Tag>)

    The tags associated with the certificate.

Returns:

See Also:

#list_tags_for_resource(options = {}) ⇒ Types::ListTagsForResourceResponse

Lists all metadata tags attached to an AWS DMS resource, including replication instance, endpoint, security group, and migration task. For more information, see Tag data type description.

Examples:

Example: List tags for resource


# Lists all tags for an AWS DMS resource.

resp = client.list_tags_for_resource({
  resource_arn: "", 
})

# resp.to_h outputs the following:
{
  tag_list: [
  ], 
}

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "String", # required
})

Response structure


resp.tag_list #=> Array
resp.tag_list[0].key #=> String
resp.tag_list[0].value #=> String

Options Hash (options):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) string that uniquely identifies the AWS DMS resource.

Returns:

See Also:

#modify_endpoint(options = {}) ⇒ Types::ModifyEndpointResponse

Modifies the specified endpoint.

Examples:

Example: Modify endpoint


# Modifies the specified endpoint.

resp = client.modify_endpoint({
  certificate_arn: "", 
  database_name: "", 
  endpoint_arn: "", 
  endpoint_identifier: "", 
  endpoint_type: "source", 
  engine_name: "", 
  extra_connection_attributes: "", 
  password: "", 
  port: 123, 
  server_name: "", 
  ssl_mode: "require", 
  username: "", 
})

# resp.to_h outputs the following:
{
  endpoint: {
  }, 
}

Request syntax with placeholder values


resp = client.modify_endpoint({
  endpoint_arn: "String", # required
  endpoint_identifier: "String",
  endpoint_type: "source", # accepts source, target
  engine_name: "String",
  username: "String",
  password: "SecretString",
  server_name: "String",
  port: 1,
  database_name: "String",
  extra_connection_attributes: "String",
  certificate_arn: "String",
  ssl_mode: "none", # accepts none, require, verify-ca, verify-full
  service_access_role_arn: "String",
  external_table_definition: "String",
  dynamo_db_settings: {
    service_access_role_arn: "String", # required
  },
  s3_settings: {
    service_access_role_arn: "String",
    external_table_definition: "String",
    csv_row_delimiter: "String",
    csv_delimiter: "String",
    bucket_folder: "String",
    bucket_name: "String",
    compression_type: "none", # accepts none, gzip
    encryption_mode: "sse-s3", # accepts sse-s3, sse-kms
    server_side_encryption_kms_key_id: "String",
    data_format: "csv", # accepts csv, parquet
    encoding_type: "plain", # accepts plain, plain-dictionary, rle-dictionary
    dict_page_size_limit: 1,
    row_group_length: 1,
    data_page_size: 1,
    parquet_version: "parquet-1-0", # accepts parquet-1-0, parquet-2-0
    enable_statistics: false,
    include_op_for_full_load: false,
    cdc_inserts_only: false,
    timestamp_column_name: "String",
    parquet_timestamp_in_millisecond: false,
    cdc_inserts_and_updates: false,
    date_partition_enabled: false,
    date_partition_sequence: "YYYYMMDD", # accepts YYYYMMDD, YYYYMMDDHH, YYYYMM, MMYYYYDD, DDMMYYYY
    date_partition_delimiter: "SLASH", # accepts SLASH, UNDERSCORE, DASH, NONE
  },
  dms_transfer_settings: {
    service_access_role_arn: "String",
    bucket_name: "String",
  },
  mongo_db_settings: {
    username: "String",
    password: "SecretString",
    server_name: "String",
    port: 1,
    database_name: "String",
    auth_type: "no", # accepts no, password
    auth_mechanism: "default", # accepts default, mongodb_cr, scram_sha_1
    nesting_level: "none", # accepts none, one
    extract_doc_id: "String",
    docs_to_investigate: "String",
    auth_source: "String",
    kms_key_id: "String",
  },
  kinesis_settings: {
    stream_arn: "String",
    message_format: "json", # accepts json, json-unformatted
    service_access_role_arn: "String",
    include_transaction_details: false,
    include_partition_value: false,
    partition_include_schema_table: false,
    include_table_alter_operations: false,
    include_control_details: false,
    include_null_and_empty: false,
  },
  kafka_settings: {
    broker: "String",
    topic: "String",
    message_format: "json", # accepts json, json-unformatted
    include_transaction_details: false,
    include_partition_value: false,
    partition_include_schema_table: false,
    include_table_alter_operations: false,
    include_control_details: false,
    message_max_bytes: 1,
    include_null_and_empty: false,
  },
  elasticsearch_settings: {
    service_access_role_arn: "String", # required
    endpoint_uri: "String", # required
    full_load_error_percentage: 1,
    error_retry_duration: 1,
  },
  neptune_settings: {
    service_access_role_arn: "String",
    s3_bucket_name: "String", # required
    s3_bucket_folder: "String", # required
    error_retry_duration: 1,
    max_file_size: 1,
    max_retry_count: 1,
    iam_auth_enabled: false,
  },
  redshift_settings: {
    accept_any_date: false,
    after_connect_script: "String",
    bucket_folder: "String",
    bucket_name: "String",
    case_sensitive_names: false,
    comp_update: false,
    connection_timeout: 1,
    database_name: "String",
    date_format: "String",
    empty_as_null: false,
    encryption_mode: "sse-s3", # accepts sse-s3, sse-kms
    explicit_ids: false,
    file_transfer_upload_streams: 1,
    load_timeout: 1,
    max_file_size: 1,
    password: "SecretString",
    port: 1,
    remove_quotes: false,
    replace_invalid_chars: "String",
    replace_chars: "String",
    server_name: "String",
    service_access_role_arn: "String",
    server_side_encryption_kms_key_id: "String",
    time_format: "String",
    trim_blanks: false,
    truncate_columns: false,
    username: "String",
    write_buffer_size: 1,
  },
  postgre_sql_settings: {
    after_connect_script: "String",
    capture_ddls: false,
    max_file_size: 1,
    database_name: "String",
    ddl_artifacts_schema: "String",
    execute_timeout: 1,
    fail_tasks_on_lob_truncation: false,
    password: "SecretString",
    port: 1,
    server_name: "String",
    username: "String",
    slot_name: "String",
  },
  my_sql_settings: {
    after_connect_script: "String",
    database_name: "String",
    events_poll_interval: 1,
    target_db_type: "specific-database", # accepts specific-database, multiple-databases
    max_file_size: 1,
    parallel_load_threads: 1,
    password: "SecretString",
    port: 1,
    server_name: "String",
    server_timezone: "String",
    username: "String",
  },
  oracle_settings: {
    add_supplemental_logging: false,
    archived_log_dest_id: 1,
    additional_archived_log_dest_id: 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",
    username: "String",
  },
  sybase_settings: {
    database_name: "String",
    password: "SecretString",
    port: 1,
    server_name: "String",
    username: "String",
  },
  microsoft_sql_server_settings: {
    port: 1,
    bcp_packet_size: 1,
    database_name: "String",
    control_tables_file_group: "String",
    password: "SecretString",
    read_backup_only: false,
    safeguard_policy: "rely-on-sql-server-replication-agent", # accepts rely-on-sql-server-replication-agent, exclusive-automatic-truncation, shared-automatic-truncation
    server_name: "String",
    username: "String",
    use_bcp_full_load: false,
  },
  ibm_db_2_settings: {
    database_name: "String",
    password: "SecretString",
    port: 1,
    server_name: "String",
    set_data_capture_changes: false,
    current_lsn: "String",
    max_k_bytes_per_read: 1,
    username: "String",
  },
  doc_db_settings: {
    username: "String",
    password: "SecretString",
    server_name: "String",
    port: 1,
    database_name: "String",
    nesting_level: "none", # accepts none, one
    extract_doc_id: false,
    docs_to_investigate: 1,
    kms_key_id: "String",
  },
})

Response structure


resp.endpoint.endpoint_identifier #=> String
resp.endpoint.endpoint_type #=> String, one of "source", "target"
resp.endpoint.engine_name #=> String
resp.endpoint.engine_display_name #=> String
resp.endpoint.username #=> String
resp.endpoint.server_name #=> String
resp.endpoint.port #=> Integer
resp.endpoint.database_name #=> String
resp.endpoint.extra_connection_attributes #=> String
resp.endpoint.status #=> String
resp.endpoint.kms_key_id #=> String
resp.endpoint.endpoint_arn #=> String
resp.endpoint.certificate_arn #=> String
resp.endpoint.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.endpoint.service_access_role_arn #=> String
resp.endpoint.external_table_definition #=> String
resp.endpoint.external_id #=> String
resp.endpoint.dynamo_db_settings.service_access_role_arn #=> String
resp.endpoint.s3_settings.service_access_role_arn #=> String
resp.endpoint.s3_settings.external_table_definition #=> String
resp.endpoint.s3_settings.csv_row_delimiter #=> String
resp.endpoint.s3_settings.csv_delimiter #=> String
resp.endpoint.s3_settings.bucket_folder #=> String
resp.endpoint.s3_settings.bucket_name #=> String
resp.endpoint.s3_settings.compression_type #=> String, one of "none", "gzip"
resp.endpoint.s3_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
resp.endpoint.s3_settings.server_side_encryption_kms_key_id #=> String
resp.endpoint.s3_settings.data_format #=> String, one of "csv", "parquet"
resp.endpoint.s3_settings.encoding_type #=> String, one of "plain", "plain-dictionary", "rle-dictionary"
resp.endpoint.s3_settings.dict_page_size_limit #=> Integer
resp.endpoint.s3_settings.row_group_length #=> Integer
resp.endpoint.s3_settings.data_page_size #=> Integer
resp.endpoint.s3_settings.parquet_version #=> String, one of "parquet-1-0", "parquet-2-0"
resp.endpoint.s3_settings.enable_statistics #=> true/false
resp.endpoint.s3_settings.include_op_for_full_load #=> true/false
resp.endpoint.s3_settings.cdc_inserts_only #=> true/false
resp.endpoint.s3_settings.timestamp_column_name #=> String
resp.endpoint.s3_settings.parquet_timestamp_in_millisecond #=> true/false
resp.endpoint.s3_settings.cdc_inserts_and_updates #=> true/false
resp.endpoint.s3_settings.date_partition_enabled #=> true/false
resp.endpoint.s3_settings.date_partition_sequence #=> String, one of "YYYYMMDD", "YYYYMMDDHH", "YYYYMM", "MMYYYYDD", "DDMMYYYY"
resp.endpoint.s3_settings.date_partition_delimiter #=> String, one of "SLASH", "UNDERSCORE", "DASH", "NONE"
resp.endpoint.dms_transfer_settings.service_access_role_arn #=> String
resp.endpoint.dms_transfer_settings.bucket_name #=> String
resp.endpoint.mongo_db_settings.username #=> String
resp.endpoint.mongo_db_settings.password #=> String
resp.endpoint.mongo_db_settings.server_name #=> String
resp.endpoint.mongo_db_settings.port #=> Integer
resp.endpoint.mongo_db_settings.database_name #=> String
resp.endpoint.mongo_db_settings.auth_type #=> String, one of "no", "password"
resp.endpoint.mongo_db_settings.auth_mechanism #=> String, one of "default", "mongodb_cr", "scram_sha_1"
resp.endpoint.mongo_db_settings.nesting_level #=> String, one of "none", "one"
resp.endpoint.mongo_db_settings.extract_doc_id #=> String
resp.endpoint.mongo_db_settings.docs_to_investigate #=> String
resp.endpoint.mongo_db_settings.auth_source #=> String
resp.endpoint.mongo_db_settings.kms_key_id #=> String
resp.endpoint.kinesis_settings.stream_arn #=> String
resp.endpoint.kinesis_settings.message_format #=> String, one of "json", "json-unformatted"
resp.endpoint.kinesis_settings.service_access_role_arn #=> String
resp.endpoint.kinesis_settings.include_transaction_details #=> true/false
resp.endpoint.kinesis_settings.include_partition_value #=> true/false
resp.endpoint.kinesis_settings.partition_include_schema_table #=> true/false
resp.endpoint.kinesis_settings.include_table_alter_operations #=> true/false
resp.endpoint.kinesis_settings.include_control_details #=> true/false
resp.endpoint.kinesis_settings.include_null_and_empty #=> true/false
resp.endpoint.kafka_settings.broker #=> String
resp.endpoint.kafka_settings.topic #=> String
resp.endpoint.kafka_settings.message_format #=> String, one of "json", "json-unformatted"
resp.endpoint.kafka_settings.include_transaction_details #=> true/false
resp.endpoint.kafka_settings.include_partition_value #=> true/false
resp.endpoint.kafka_settings.partition_include_schema_table #=> true/false
resp.endpoint.kafka_settings.include_table_alter_operations #=> true/false
resp.endpoint.kafka_settings.include_control_details #=> true/false
resp.endpoint.kafka_settings.message_max_bytes #=> Integer
resp.endpoint.kafka_settings.include_null_and_empty #=> true/false
resp.endpoint.elasticsearch_settings.service_access_role_arn #=> String
resp.endpoint.elasticsearch_settings.endpoint_uri #=> String
resp.endpoint.elasticsearch_settings.full_load_error_percentage #=> Integer
resp.endpoint.elasticsearch_settings.error_retry_duration #=> Integer
resp.endpoint.neptune_settings.service_access_role_arn #=> String
resp.endpoint.neptune_settings.s3_bucket_name #=> String
resp.endpoint.neptune_settings.s3_bucket_folder #=> String
resp.endpoint.neptune_settings.error_retry_duration #=> Integer
resp.endpoint.neptune_settings.max_file_size #=> Integer
resp.endpoint.neptune_settings.max_retry_count #=> Integer
resp.endpoint.neptune_settings.iam_auth_enabled #=> true/false
resp.endpoint.redshift_settings.accept_any_date #=> true/false
resp.endpoint.redshift_settings.after_connect_script #=> String
resp.endpoint.redshift_settings.bucket_folder #=> String
resp.endpoint.redshift_settings.bucket_name #=> String
resp.endpoint.redshift_settings.case_sensitive_names #=> true/false
resp.endpoint.redshift_settings.comp_update #=> true/false
resp.endpoint.redshift_settings.connection_timeout #=> Integer
resp.endpoint.redshift_settings.database_name #=> String
resp.endpoint.redshift_settings.date_format #=> String
resp.endpoint.redshift_settings.empty_as_null #=> true/false
resp.endpoint.redshift_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
resp.endpoint.redshift_settings.explicit_ids #=> true/false
resp.endpoint.redshift_settings.file_transfer_upload_streams #=> Integer
resp.endpoint.redshift_settings.load_timeout #=> Integer
resp.endpoint.redshift_settings.max_file_size #=> Integer
resp.endpoint.redshift_settings.password #=> String
resp.endpoint.redshift_settings.port #=> Integer
resp.endpoint.redshift_settings.remove_quotes #=> true/false
resp.endpoint.redshift_settings.replace_invalid_chars #=> String
resp.endpoint.redshift_settings.replace_chars #=> String
resp.endpoint.redshift_settings.server_name #=> String
resp.endpoint.redshift_settings.service_access_role_arn #=> String
resp.endpoint.redshift_settings.server_side_encryption_kms_key_id #=> String
resp.endpoint.redshift_settings.time_format #=> String
resp.endpoint.redshift_settings.trim_blanks #=> true/false
resp.endpoint.redshift_settings.truncate_columns #=> true/false
resp.endpoint.redshift_settings.username #=> String
resp.endpoint.redshift_settings.write_buffer_size #=> Integer
resp.endpoint.postgre_sql_settings.after_connect_script #=> String
resp.endpoint.postgre_sql_settings.capture_ddls #=> true/false
resp.endpoint.postgre_sql_settings.max_file_size #=> Integer
resp.endpoint.postgre_sql_settings.database_name #=> String
resp.endpoint.postgre_sql_settings.ddl_artifacts_schema #=> String
resp.endpoint.postgre_sql_settings.execute_timeout #=> Integer
resp.endpoint.postgre_sql_settings.fail_tasks_on_lob_truncation #=> true/false
resp.endpoint.postgre_sql_settings.password #=> String
resp.endpoint.postgre_sql_settings.port #=> Integer
resp.endpoint.postgre_sql_settings.server_name #=> String
resp.endpoint.postgre_sql_settings.username #=> String
resp.endpoint.postgre_sql_settings.slot_name #=> String
resp.endpoint.my_sql_settings.after_connect_script #=> String
resp.endpoint.my_sql_settings.database_name #=> String
resp.endpoint.my_sql_settings.events_poll_interval #=> Integer
resp.endpoint.my_sql_settings.target_db_type #=> String, one of "specific-database", "multiple-databases"
resp.endpoint.my_sql_settings.max_file_size #=> Integer
resp.endpoint.my_sql_settings.parallel_load_threads #=> Integer
resp.endpoint.my_sql_settings.password #=> String
resp.endpoint.my_sql_settings.port #=> Integer
resp.endpoint.my_sql_settings.server_name #=> String
resp.endpoint.my_sql_settings.server_timezone #=> String
resp.endpoint.my_sql_settings.username #=> String
resp.endpoint.oracle_settings.add_supplemental_logging #=> true/false
resp.endpoint.oracle_settings.archived_log_dest_id #=> Integer
resp.endpoint.oracle_settings.additional_archived_log_dest_id #=> Integer
resp.endpoint.oracle_settings.allow_select_nested_tables #=> true/false
resp.endpoint.oracle_settings.parallel_asm_read_threads #=> Integer
resp.endpoint.oracle_settings.read_ahead_blocks #=> Integer
resp.endpoint.oracle_settings.access_alternate_directly #=> true/false
resp.endpoint.oracle_settings.use_alternate_folder_for_online #=> true/false
resp.endpoint.oracle_settings.oracle_path_prefix #=> String
resp.endpoint.oracle_settings.use_path_prefix #=> String
resp.endpoint.oracle_settings.replace_path_prefix #=> true/false
resp.endpoint.oracle_settings.enable_homogenous_tablespace #=> true/false
resp.endpoint.oracle_settings.direct_path_no_log #=> true/false
resp.endpoint.oracle_settings.archived_logs_only #=> true/false
resp.endpoint.oracle_settings.asm_password #=> String
resp.endpoint.oracle_settings.asm_server #=> String
resp.endpoint.oracle_settings.asm_user #=> String
resp.endpoint.oracle_settings.char_length_semantics #=> String, one of "default", "char", "byte"
resp.endpoint.oracle_settings.database_name #=> String
resp.endpoint.oracle_settings.direct_path_parallel_load #=> true/false
resp.endpoint.oracle_settings.fail_tasks_on_lob_truncation #=> true/false
resp.endpoint.oracle_settings.number_datatype_scale #=> Integer
resp.endpoint.oracle_settings.password #=> String
resp.endpoint.oracle_settings.port #=> Integer
resp.endpoint.oracle_settings.read_table_space_name #=> true/false
resp.endpoint.oracle_settings.retry_interval #=> Integer
resp.endpoint.oracle_settings.security_db_encryption #=> String
resp.endpoint.oracle_settings.security_db_encryption_name #=> String
resp.endpoint.oracle_settings.server_name #=> String
resp.endpoint.oracle_settings.username #=> String
resp.endpoint.sybase_settings.database_name #=> String
resp.endpoint.sybase_settings.password #=> String
resp.endpoint.sybase_settings.port #=> Integer
resp.endpoint.sybase_settings.server_name #=> String
resp.endpoint.sybase_settings.username #=> String
resp.endpoint.microsoft_sql_server_settings.port #=> Integer
resp.endpoint.microsoft_sql_server_settings.bcp_packet_size #=> Integer
resp.endpoint.microsoft_sql_server_settings.database_name #=> String
resp.endpoint.microsoft_sql_server_settings.control_tables_file_group #=> String
resp.endpoint.microsoft_sql_server_settings.password #=> String
resp.endpoint.microsoft_sql_server_settings.read_backup_only #=> true/false
resp.endpoint.microsoft_sql_server_settings.safeguard_policy #=> String, one of "rely-on-sql-server-replication-agent", "exclusive-automatic-truncation", "shared-automatic-truncation"
resp.endpoint.microsoft_sql_server_settings.server_name #=> String
resp.endpoint.microsoft_sql_server_settings.username #=> String
resp.endpoint.microsoft_sql_server_settings.use_bcp_full_load #=> true/false
resp.endpoint.ibm_db_2_settings.database_name #=> String
resp.endpoint.ibm_db_2_settings.password #=> String
resp.endpoint.ibm_db_2_settings.port #=> Integer
resp.endpoint.ibm_db_2_settings.server_name #=> String
resp.endpoint.ibm_db_2_settings.set_data_capture_changes #=> true/false
resp.endpoint.ibm_db_2_settings.current_lsn #=> String
resp.endpoint.ibm_db_2_settings.max_k_bytes_per_read #=> Integer
resp.endpoint.ibm_db_2_settings.username #=> String
resp.endpoint.doc_db_settings.username #=> String
resp.endpoint.doc_db_settings.password #=> String
resp.endpoint.doc_db_settings.server_name #=> String
resp.endpoint.doc_db_settings.port #=> Integer
resp.endpoint.doc_db_settings.database_name #=> String
resp.endpoint.doc_db_settings.nesting_level #=> String, one of "none", "one"
resp.endpoint.doc_db_settings.extract_doc_id #=> true/false
resp.endpoint.doc_db_settings.docs_to_investigate #=> Integer
resp.endpoint.doc_db_settings.kms_key_id #=> String

Options Hash (options):

Returns:

See Also:

#modify_event_subscription(options = {}) ⇒ Types::ModifyEventSubscriptionResponse

Modifies an existing AWS DMS event notification subscription.

Examples:

Request syntax with placeholder values


resp = client.modify_event_subscription({
  subscription_name: "String", # required
  sns_topic_arn: "String",
  source_type: "String",
  event_categories: ["String"],
  enabled: false,
})

Response structure


resp.event_subscription.customer_aws_id #=> String
resp.event_subscription.cust_subscription_id #=> String
resp.event_subscription.sns_topic_arn #=> String
resp.event_subscription.status #=> String
resp.event_subscription.subscription_creation_time #=> String
resp.event_subscription.source_type #=> String
resp.event_subscription.source_ids_list #=> Array
resp.event_subscription.source_ids_list[0] #=> String
resp.event_subscription.event_categories_list #=> Array
resp.event_subscription.event_categories_list[0] #=> String
resp.event_subscription.enabled #=> true/false

Options Hash (options):

  • :subscription_name (required, String)

    The name of the AWS DMS event notification subscription to be modified.

  • :sns_topic_arn (String)

    The Amazon Resource Name (ARN) of the Amazon SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

  • :source_type (String)

    The type of AWS DMS resource that generates the events you want to subscribe to.

    Valid values: replication-instance | replication-task

  • :event_categories (Array<String>)

    A list of event categories for a source type that you want to subscribe to. Use the DescribeEventCategories action to see a list of event categories.

  • :enabled (Boolean)

    A Boolean value; set to true to activate the subscription.

Returns:

See Also:

#modify_replication_instance(options = {}) ⇒ Types::ModifyReplicationInstanceResponse

Modifies the replication instance to apply new settings. You can change one or more parameters by specifying these parameters and the new values in the request.

Some settings are applied during the maintenance window.

Examples:

Example: Modify replication instance


# Modifies the replication instance to apply new settings. You can change one or more parameters by specifying these parameters and the new values in the request. Some settings are applied during the maintenance window.

resp = client.modify_replication_instance({
  allocated_storage: 123, 
  allow_major_version_upgrade: true, 
  apply_immediately: true, 
  auto_minor_version_upgrade: true, 
  engine_version: "1.5.0", 
  multi_az: true, 
  preferred_maintenance_window: "sun:06:00-sun:14:00", 
  replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
  replication_instance_class: "dms.t2.micro", 
  replication_instance_identifier: "test-rep-1", 
  vpc_security_group_ids: [
  ], 
})

# resp.to_h outputs the following:
{
  replication_instance: {
    allocated_storage: 5, 
    auto_minor_version_upgrade: true, 
    engine_version: "1.5.0", 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/4c1731d6-5435-ed4d-be13-d53411a7cfbd", 
    pending_modified_values: {
    }, 
    preferred_maintenance_window: "sun:06:00-sun:14:00", 
    publicly_accessible: true, 
    replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
    replication_instance_class: "dms.t2.micro", 
    replication_instance_identifier: "test-rep-1", 
    replication_instance_status: "available", 
    replication_subnet_group: {
      replication_subnet_group_description: "default", 
      replication_subnet_group_identifier: "default", 
      subnet_group_status: "Complete", 
      subnets: [
        {
          subnet_availability_zone: {
            name: "us-east-1d", 
          }, 
          subnet_identifier: "subnet-f6dd91af", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1b", 
          }, 
          subnet_identifier: "subnet-3605751d", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1c", 
          }, 
          subnet_identifier: "subnet-c2daefb5", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1e", 
          }, 
          subnet_identifier: "subnet-85e90cb8", 
          subnet_status: "Active", 
        }, 
      ], 
      vpc_id: "vpc-6741a603", 
    }, 
  }, 
}

Request syntax with placeholder values


resp = client.modify_replication_instance({
  replication_instance_arn: "String", # required
  allocated_storage: 1,
  apply_immediately: false,
  replication_instance_class: "String",
  vpc_security_group_ids: ["String"],
  preferred_maintenance_window: "String",
  multi_az: false,
  engine_version: "String",
  allow_major_version_upgrade: false,
  auto_minor_version_upgrade: false,
  replication_instance_identifier: "String",
})

Response structure


resp.replication_instance.replication_instance_identifier #=> String
resp.replication_instance.replication_instance_class #=> String
resp.replication_instance.replication_instance_status #=> String
resp.replication_instance.allocated_storage #=> Integer
resp.replication_instance.instance_create_time #=> Time
resp.replication_instance.vpc_security_groups #=> Array
resp.replication_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.replication_instance.vpc_security_groups[0].status #=> String
resp.replication_instance.availability_zone #=> String
resp.replication_instance.replication_subnet_group.replication_subnet_group_identifier #=> String
resp.replication_instance.replication_subnet_group.replication_subnet_group_description #=> String
resp.replication_instance.replication_subnet_group.vpc_id #=> String
resp.replication_instance.replication_subnet_group.subnet_group_status #=> String
resp.replication_instance.replication_subnet_group.subnets #=> Array
resp.replication_instance.replication_subnet_group.subnets[0].subnet_identifier #=> String
resp.replication_instance.replication_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.replication_instance.replication_subnet_group.subnets[0].subnet_status #=> String
resp.replication_instance.preferred_maintenance_window #=> String
resp.replication_instance.pending_modified_values.replication_instance_class #=> String
resp.replication_instance.pending_modified_values.allocated_storage #=> Integer
resp.replication_instance.pending_modified_values.multi_az #=> true/false
resp.replication_instance.pending_modified_values.engine_version #=> String
resp.replication_instance.multi_az #=> true/false
resp.replication_instance.engine_version #=> String
resp.replication_instance.auto_minor_version_upgrade #=> true/false
resp.replication_instance.kms_key_id #=> String
resp.replication_instance.replication_instance_arn #=> String
resp.replication_instance.replication_instance_public_ip_address #=> String
resp.replication_instance.replication_instance_private_ip_address #=> String
resp.replication_instance.replication_instance_public_ip_addresses #=> Array
resp.replication_instance.replication_instance_public_ip_addresses[0] #=> String
resp.replication_instance.replication_instance_private_ip_addresses #=> Array
resp.replication_instance.replication_instance_private_ip_addresses[0] #=> String
resp.replication_instance.publicly_accessible #=> true/false
resp.replication_instance.secondary_availability_zone #=> String
resp.replication_instance.free_until #=> Time
resp.replication_instance.dns_name_servers #=> String

Options Hash (options):

  • :replication_instance_arn (required, String)

    The Amazon Resource Name (ARN) of the replication instance.

  • :allocated_storage (Integer)

    The amount of storage (in gigabytes) to be allocated for the replication instance.

  • :apply_immediately (Boolean)

    Indicates whether the changes should be applied immediately or during the next maintenance window.

  • :replication_instance_class (String)

    The compute and memory capacity of the replication instance as defined for the specified replication instance class. For example to specify the instance class dms.c4.large, set this parameter to "dms.c4.large".

    For more information on the settings and capacities for the available replication instance classes, see Selecting the right AWS DMS replication instance for your migration.

  • :vpc_security_group_ids (Array<String>)

    Specifies the VPC security group to be used with the replication instance. The VPC security group must work with the VPC containing the replication instance.

  • :preferred_maintenance_window (String)

    The weekly time range (in UTC) during which system maintenance can occur, which might result in an outage. Changing this parameter does not result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If moving this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

    Default: Uses existing setting

    Format: ddd:hh24:mi-ddd:hh24:mi

    Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

    Constraints: Must be at least 30 minutes

  • :multi_az (Boolean)

    Specifies whether the replication instance is a Multi-AZ deployment. You can\'t set the AvailabilityZone parameter if the Multi-AZ parameter is set to true.

  • :engine_version (String)

    The engine version number of the replication instance.

    When modifying a major engine version of an instance, also set AllowMajorVersionUpgrade to true.

  • :allow_major_version_upgrade (Boolean)

    Indicates that major version upgrades are allowed. Changing this parameter does not result in an outage, and the change is asynchronously applied as soon as possible.

    This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the replication instance\'s current version.

  • :auto_minor_version_upgrade (Boolean)

    A value that indicates that minor version upgrades are applied automatically to the replication instance during the maintenance window. Changing this parameter doesn\'t result in an outage, except in the case dsecribed following. The change is asynchronously applied as soon as possible.

    An outage does result if these factors apply:

    • This parameter is set to true during the maintenance window.

    • A newer minor version is available.

    • AWS DMS has enabled automatic patching for the given engine version.

  • :replication_instance_identifier (String)

    The replication instance identifier. This parameter is stored as a lowercase string.

Returns:

See Also:

#modify_replication_subnet_group(options = {}) ⇒ Types::ModifyReplicationSubnetGroupResponse

Modifies the settings for the specified replication subnet group.

Examples:

Example: Modify replication subnet group


# Modifies the settings for the specified replication subnet group.

resp = client.modify_replication_subnet_group({
  replication_subnet_group_description: "", 
  replication_subnet_group_identifier: "", 
  subnet_ids: [
  ], 
})

# resp.to_h outputs the following:
{
  replication_subnet_group: {
  }, 
}

Request syntax with placeholder values


resp = client.modify_replication_subnet_group({
  replication_subnet_group_identifier: "String", # required
  replication_subnet_group_description: "String",
  subnet_ids: ["String"], # required
})

Response structure


resp.replication_subnet_group.replication_subnet_group_identifier #=> String
resp.replication_subnet_group.replication_subnet_group_description #=> String
resp.replication_subnet_group.vpc_id #=> String
resp.replication_subnet_group.subnet_group_status #=> String
resp.replication_subnet_group.subnets #=> Array
resp.replication_subnet_group.subnets[0].subnet_identifier #=> String
resp.replication_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.replication_subnet_group.subnets[0].subnet_status #=> String

Options Hash (options):

  • :replication_subnet_group_identifier (required, String)

    The name of the replication instance subnet group.

  • :replication_subnet_group_description (String)

    A description for the replication instance subnet group.

  • :subnet_ids (required, Array<String>)

    A list of subnet IDs.

Returns:

See Also:

#modify_replication_task(options = {}) ⇒ Types::ModifyReplicationTaskResponse

Modifies the specified replication task.

You can't modify the task endpoints. The task must be stopped before you can modify it.

For more information about AWS DMS tasks, see Working with Migration Tasks in the AWS Database Migration Service User Guide.

Examples:

Request syntax with placeholder values


resp = client.modify_replication_task({
  replication_task_arn: "String", # required
  replication_task_identifier: "String",
  migration_type: "full-load", # accepts full-load, cdc, full-load-and-cdc
  table_mappings: "String",
  replication_task_settings: "String",
  cdc_start_time: Time.now,
  cdc_start_position: "String",
  cdc_stop_position: "String",
  task_data: "String",
})

Response structure


resp.replication_task.replication_task_identifier #=> String
resp.replication_task.source_endpoint_arn #=> String
resp.replication_task.target_endpoint_arn #=> String
resp.replication_task.replication_instance_arn #=> String
resp.replication_task.migration_type #=> String, one of "full-load", "cdc", "full-load-and-cdc"
resp.replication_task.table_mappings #=> String
resp.replication_task.replication_task_settings #=> String
resp.replication_task.status #=> String
resp.replication_task.last_failure_message #=> String
resp.replication_task.stop_reason #=> String
resp.replication_task.replication_task_creation_date #=> Time
resp.replication_task.replication_task_start_date #=> Time
resp.replication_task.cdc_start_position #=> String
resp.replication_task.cdc_stop_position #=> String
resp.replication_task.recovery_checkpoint #=> String
resp.replication_task.replication_task_arn #=> String
resp.replication_task.replication_task_stats.full_load_progress_percent #=> Integer
resp.replication_task.replication_task_stats.elapsed_time_millis #=> Integer
resp.replication_task.replication_task_stats.tables_loaded #=> Integer
resp.replication_task.replication_task_stats.tables_loading #=> Integer
resp.replication_task.replication_task_stats.tables_queued #=> Integer
resp.replication_task.replication_task_stats.tables_errored #=> Integer
resp.replication_task.replication_task_stats.fresh_start_date #=> Time
resp.replication_task.replication_task_stats.start_date #=> Time
resp.replication_task.replication_task_stats.stop_date #=> Time
resp.replication_task.replication_task_stats.full_load_start_date #=> Time
resp.replication_task.replication_task_stats.full_load_finish_date #=> Time
resp.replication_task.task_data #=> String
resp.replication_task.target_replication_instance_arn #=> String

Options Hash (options):

  • :replication_task_arn (required, String)

    The Amazon Resource Name (ARN) of the replication task.

  • :replication_task_identifier (String)

    The replication task identifier.

    Constraints:

    • Must contain 1-255 alphanumeric characters or hyphens.

    • First character must be a letter.

    • Cannot end with a hyphen or contain two consecutive hyphens.

  • :migration_type (String)

    The migration type. Valid values: full-load | cdc | full-load-and-cdc

  • :table_mappings (String)

    When using the AWS CLI or boto3, provide the path of the JSON file that contains the table mappings. Precede the path with file://. When working with the DMS API, provide the JSON as the parameter value, for example: --table-mappings file://mappingfile.json

  • :replication_task_settings (String)

    JSON file that contains settings for the task, such as task metadata settings.

  • :cdc_start_time (Time)

    Indicates the start time for a change data capture (CDC) operation. Use either CdcStartTime or CdcStartPosition to specify when you want a CDC operation to start. Specifying both values results in an error.

    Timestamp Example: --cdc-start-time “2018-03-08T12:12:12”

  • :cdc_start_position (String)

    Indicates when you want a change data capture (CDC) operation to start. Use either CdcStartPosition or CdcStartTime to specify when you want a CDC operation to start. Specifying both values results in an error.

    The value can be in date, checkpoint, or LSN/SCN format.

    Date Example: --cdc-start-position “2018-03-08T12:12:12”

    Checkpoint Example: --cdc-start-position \"checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93\"

    LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”

    When you use this task setting with a source PostgreSQL database, a logical replication slot should already be created and associated with the source endpoint. You can verify this by setting the slotName extra connection attribute to the name of this logical replication slot. For more information, see Extra Connection Attributes When Using PostgreSQL as a Source for AWS DMS.

  • :cdc_stop_position (String)

    Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

    Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

    Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

  • :task_data (String)

    Supplemental information that the task requires to migrate the data for certain source and target endpoints. For more information, see Specifying Supplemental Data for Task Settings in the AWS Database Migration Service User Guide.

Returns:

See Also:

#move_replication_task(options = {}) ⇒ Types::MoveReplicationTaskResponse

Moves a replication task from its current replication instance to a different target replication instance using the specified parameters. The target replication instance must be created with the same or later AWS DMS version as the current replication instance.

Examples:

Request syntax with placeholder values


resp = client.move_replication_task({
  replication_task_arn: "String", # required
  target_replication_instance_arn: "String", # required
})

Response structure


resp.replication_task.replication_task_identifier #=> String
resp.replication_task.source_endpoint_arn #=> String
resp.replication_task.target_endpoint_arn #=> String
resp.replication_task.replication_instance_arn #=> String
resp.replication_task.migration_type #=> String, one of "full-load", "cdc", "full-load-and-cdc"
resp.replication_task.table_mappings #=> String
resp.replication_task.replication_task_settings #=> String
resp.replication_task.status #=> String
resp.replication_task.last_failure_message #=> String
resp.replication_task.stop_reason #=> String
resp.replication_task.replication_task_creation_date #=> Time
resp.replication_task.replication_task_start_date #=> Time
resp.replication_task.cdc_start_position #=> String
resp.replication_task.cdc_stop_position #=> String
resp.replication_task.recovery_checkpoint #=> String
resp.replication_task.replication_task_arn #=> String
resp.replication_task.replication_task_stats.full_load_progress_percent #=> Integer
resp.replication_task.replication_task_stats.elapsed_time_millis #=> Integer
resp.replication_task.replication_task_stats.tables_loaded #=> Integer
resp.replication_task.replication_task_stats.tables_loading #=> Integer
resp.replication_task.replication_task_stats.tables_queued #=> Integer
resp.replication_task.replication_task_stats.tables_errored #=> Integer
resp.replication_task.replication_task_stats.fresh_start_date #=> Time
resp.replication_task.replication_task_stats.start_date #=> Time
resp.replication_task.replication_task_stats.stop_date #=> Time
resp.replication_task.replication_task_stats.full_load_start_date #=> Time
resp.replication_task.replication_task_stats.full_load_finish_date #=> Time
resp.replication_task.task_data #=> String
resp.replication_task.target_replication_instance_arn #=> String

Options Hash (options):

  • :replication_task_arn (required, String)

    The Amazon Resource Name (ARN) of the task that you want to move.

  • :target_replication_instance_arn (required, String)

    The ARN of the replication instance where you want to move the task to.

Returns:

See Also:

#reboot_replication_instance(options = {}) ⇒ Types::RebootReplicationInstanceResponse

Reboots a replication instance. Rebooting results in a momentary outage, until the replication instance becomes available again.

Examples:

Request syntax with placeholder values


resp = client.reboot_replication_instance({
  replication_instance_arn: "String", # required
  force_failover: false,
})

Response structure


resp.replication_instance.replication_instance_identifier #=> String
resp.replication_instance.replication_instance_class #=> String
resp.replication_instance.replication_instance_status #=> String
resp.replication_instance.allocated_storage #=> Integer
resp.replication_instance.instance_create_time #=> Time
resp.replication_instance.vpc_security_groups #=> Array
resp.replication_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.replication_instance.vpc_security_groups[0].status #=> String
resp.replication_instance.availability_zone #=> String
resp.replication_instance.replication_subnet_group.replication_subnet_group_identifier #=> String
resp.replication_instance.replication_subnet_group.replication_subnet_group_description #=> String
resp.replication_instance.replication_subnet_group.vpc_id #=> String
resp.replication_instance.replication_subnet_group.subnet_group_status #=> String
resp.replication_instance.replication_subnet_group.subnets #=> Array
resp.replication_instance.replication_subnet_group.subnets[0].subnet_identifier #=> String
resp.replication_instance.replication_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.replication_instance.replication_subnet_group.subnets[0].subnet_status #=> String
resp.replication_instance.preferred_maintenance_window #=> String
resp.replication_instance.pending_modified_values.replication_instance_class #=> String
resp.replication_instance.pending_modified_values.allocated_storage #=> Integer
resp.replication_instance.pending_modified_values.multi_az #=> true/false
resp.replication_instance.pending_modified_values.engine_version #=> String
resp.replication_instance.multi_az #=> true/false
resp.replication_instance.engine_version #=> String
resp.replication_instance.auto_minor_version_upgrade #=> true/false
resp.replication_instance.kms_key_id #=> String
resp.replication_instance.replication_instance_arn #=> String
resp.replication_instance.replication_instance_public_ip_address #=> String
resp.replication_instance.replication_instance_private_ip_address #=> String
resp.replication_instance.replication_instance_public_ip_addresses #=> Array
resp.replication_instance.replication_instance_public_ip_addresses[0] #=> String
resp.replication_instance.replication_instance_private_ip_addresses #=> Array
resp.replication_instance.replication_instance_private_ip_addresses[0] #=> String
resp.replication_instance.publicly_accessible #=> true/false
resp.replication_instance.secondary_availability_zone #=> String
resp.replication_instance.free_until #=> Time
resp.replication_instance.dns_name_servers #=> String

Options Hash (options):

  • :replication_instance_arn (required, String)

    The Amazon Resource Name (ARN) of the replication instance.

  • :force_failover (Boolean)

    If this parameter is true, the reboot is conducted through a Multi-AZ failover. (If the instance isn\'t configured for Multi-AZ, then you can\'t specify true.)

Returns:

See Also:

#refresh_schemas(options = {}) ⇒ Types::RefreshSchemasResponse

Populates the schema for the specified endpoint. This is an asynchronous operation and can take several minutes. You can check the status of this operation by calling the DescribeRefreshSchemasStatus operation.

Examples:

Example: Refresh schema


# Populates the schema for the specified endpoint. This is an asynchronous operation and can take several minutes. You can check the status of this operation by calling the describe-refresh-schemas-status operation.

resp = client.refresh_schemas({
  endpoint_arn: "", 
  replication_instance_arn: "", 
})

# resp.to_h outputs the following:
{
  refresh_schemas_status: {
  }, 
}

Request syntax with placeholder values


resp = client.refresh_schemas({
  endpoint_arn: "String", # required
  replication_instance_arn: "String", # required
})

Response structure


resp.refresh_schemas_status.endpoint_arn #=> String
resp.refresh_schemas_status.replication_instance_arn #=> String
resp.refresh_schemas_status.status #=> String, one of "successful", "failed", "refreshing"
resp.refresh_schemas_status.last_refresh_date #=> Time
resp.refresh_schemas_status.last_failure_message #=> String

Options Hash (options):

  • :endpoint_arn (required, String)

    The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

  • :replication_instance_arn (required, String)

    The Amazon Resource Name (ARN) of the replication instance.

Returns:

See Also:

#reload_tables(options = {}) ⇒ Types::ReloadTablesResponse

Reloads the target database table with the source data.

Examples:

Request syntax with placeholder values


resp = client.reload_tables({
  replication_task_arn: "String", # required
  tables_to_reload: [ # required
    {
      schema_name: "String", # required
      table_name: "String", # required
    },
  ],
  reload_option: "data-reload", # accepts data-reload, validate-only
})

Response structure


resp.replication_task_arn #=> String

Options Hash (options):

  • :replication_task_arn (required, String)

    The Amazon Resource Name (ARN) of the replication task.

  • :tables_to_reload (required, Array<Types::TableToReload>)

    The name and schema of the table to be reloaded.

  • :reload_option (String)

    Options for reload. Specify data-reload to reload the data and re-validate it if validation is enabled. Specify validate-only to re-validate the table. This option applies only when validation is enabled for the task.

    Valid values: data-reload, validate-only

    Default value is data-reload.

Returns:

See Also:

#remove_tags_from_resource(options = {}) ⇒ Struct

Removes metadata tags from an AWS DMS resource, including replication instance, endpoint, security group, and migration task. For more information, see Tag data type description.

Examples:

Example: Remove tags from resource


# Removes metadata tags from an AWS DMS resource.

resp = client.remove_tags_from_resource({
  resource_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ASXWXJZLNWNT5HTWCGV2BUJQ7E", 
  tag_keys: [
  ], 
})

# resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.remove_tags_from_resource({
  resource_arn: "String", # required
  tag_keys: ["String"], # required
})

Options Hash (options):

  • :resource_arn (required, String)

    An AWS DMS resource from which you want to remove tag(s). The value for this parameter is an Amazon Resource Name (ARN).

  • :tag_keys (required, Array<String>)

    The tag key (name) of the tag to be removed.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#start_replication_task(options = {}) ⇒ Types::StartReplicationTaskResponse

Starts the replication task.

For more information about AWS DMS tasks, see Working with Migration Tasks in the AWS Database Migration Service User Guide.

Examples:

Example: Start replication task


# Starts the replication task.

resp = client.start_replication_task({
  cdc_start_time: Time.parse("2016-12-14T13:33:20Z"), 
  replication_task_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
  start_replication_task_type: "start-replication", 
})

# resp.to_h outputs the following:
{
  replication_task: {
    migration_type: "full-load", 
    replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
    replication_task_arn: "arn:aws:dms:us-east-1:123456789012:task:OEAMB3NXSTZ6LFYZFEPPBBXPYM", 
    replication_task_creation_date: Time.parse("2016-12-14T18:25:43Z"), 
    replication_task_identifier: "task1", 
    replication_task_settings: "{\"TargetMetadata\":{\"TargetSchema\":\"\",\"SupportLobs\":true,\"FullLobMode\":true,\"LobChunkSize\":64,\"LimitedSizeLobMode\":false,\"LobMaxSize\":0},\"FullLoadSettings\":{\"FullLoadEnabled\":true,\"ApplyChangesEnabled\":false,\"TargetTablePrepMode\":\"DROP_AND_CREATE\",\"CreatePkAfterFullLoad\":false,\"StopTaskCachedChangesApplied\":false,\"StopTaskCachedChangesNotApplied\":false,\"ResumeEnabled\":false,\"ResumeMinTableSize\":100000,\"ResumeOnlyClusteredPKTables\":true,\"MaxFullLoadSubTasks\":8,\"TransactionConsistencyTimeout\":600,\"CommitRate\":10000},\"Logging\":{\"EnableLogging\":false}}", 
    source_endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ZW5UAN6P4E77EC7YWHK4RZZ3BE", 
    status: "creating", 
    table_mappings: "file://mappingfile.json", 
    target_endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ASXWXJZLNWNT5HTWCGV2BUJQ7E", 
  }, 
}

Request syntax with placeholder values


resp = client.start_replication_task({
  replication_task_arn: "String", # required
  start_replication_task_type: "start-replication", # required, accepts start-replication, resume-processing, reload-target
  cdc_start_time: Time.now,
  cdc_start_position: "String",
  cdc_stop_position: "String",
})

Response structure


resp.replication_task.replication_task_identifier #=> String
resp.replication_task.source_endpoint_arn #=> String
resp.replication_task.target_endpoint_arn #=> String
resp.replication_task.replication_instance_arn #=> String
resp.replication_task.migration_type #=> String, one of "full-load", "cdc", "full-load-and-cdc"
resp.replication_task.table_mappings #=> String
resp.replication_task.replication_task_settings #=> String
resp.replication_task.status #=> String
resp.replication_task.last_failure_message #=> String
resp.replication_task.stop_reason #=> String
resp.replication_task.replication_task_creation_date #=> Time
resp.replication_task.replication_task_start_date #=> Time
resp.replication_task.cdc_start_position #=> String
resp.replication_task.cdc_stop_position #=> String
resp.replication_task.recovery_checkpoint #=> String
resp.replication_task.replication_task_arn #=> String
resp.replication_task.replication_task_stats.full_load_progress_percent #=> Integer
resp.replication_task.replication_task_stats.elapsed_time_millis #=> Integer
resp.replication_task.replication_task_stats.tables_loaded #=> Integer
resp.replication_task.replication_task_stats.tables_loading #=> Integer
resp.replication_task.replication_task_stats.tables_queued #=> Integer
resp.replication_task.replication_task_stats.tables_errored #=> Integer
resp.replication_task.replication_task_stats.fresh_start_date #=> Time
resp.replication_task.replication_task_stats.start_date #=> Time
resp.replication_task.replication_task_stats.stop_date #=> Time
resp.replication_task.replication_task_stats.full_load_start_date #=> Time
resp.replication_task.replication_task_stats.full_load_finish_date #=> Time
resp.replication_task.task_data #=> String
resp.replication_task.target_replication_instance_arn #=> String

Options Hash (options):

  • :replication_task_arn (required, String)

    The Amazon Resource Name (ARN) of the replication task to be started.

  • :start_replication_task_type (required, String)

    A type of replication task.

  • :cdc_start_time (Time)

    Indicates the start time for a change data capture (CDC) operation. Use either CdcStartTime or CdcStartPosition to specify when you want a CDC operation to start. Specifying both values results in an error.

    Timestamp Example: --cdc-start-time “2018-03-08T12:12:12”

  • :cdc_start_position (String)

    Indicates when you want a change data capture (CDC) operation to start. Use either CdcStartPosition or CdcStartTime to specify when you want a CDC operation to start. Specifying both values results in an error.

    The value can be in date, checkpoint, or LSN/SCN format.

    Date Example: --cdc-start-position “2018-03-08T12:12:12”

    Checkpoint Example: --cdc-start-position \"checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93\"

    LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”

    When you use this task setting with a source PostgreSQL database, a logical replication slot should already be created and associated with the source endpoint. You can verify this by setting the slotName extra connection attribute to the name of this logical replication slot. For more information, see Extra Connection Attributes When Using PostgreSQL as a Source for AWS DMS.

  • :cdc_stop_position (String)

    Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.

    Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”

    Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “

Returns:

See Also:

#start_replication_task_assessment(options = {}) ⇒ Types::StartReplicationTaskAssessmentResponse

Starts the replication task assessment for unsupported data types in the source database.

Examples:

Request syntax with placeholder values


resp = client.start_replication_task_assessment({
  replication_task_arn: "String", # required
})

Response structure


resp.replication_task.replication_task_identifier #=> String
resp.replication_task.source_endpoint_arn #=> String
resp.replication_task.target_endpoint_arn #=> String
resp.replication_task.replication_instance_arn #=> String
resp.replication_task.migration_type #=> String, one of "full-load", "cdc", "full-load-and-cdc"
resp.replication_task.table_mappings #=> String
resp.replication_task.replication_task_settings #=> String
resp.replication_task.status #=> String
resp.replication_task.last_failure_message #=> String
resp.replication_task.stop_reason #=> String
resp.replication_task.replication_task_creation_date #=> Time
resp.replication_task.replication_task_start_date #=> Time
resp.replication_task.cdc_start_position #=> String
resp.replication_task.cdc_stop_position #=> String
resp.replication_task.recovery_checkpoint #=> String
resp.replication_task.replication_task_arn #=> String
resp.replication_task.replication_task_stats.full_load_progress_percent #=> Integer
resp.replication_task.replication_task_stats.elapsed_time_millis #=> Integer
resp.replication_task.replication_task_stats.tables_loaded #=> Integer
resp.replication_task.replication_task_stats.tables_loading #=> Integer
resp.replication_task.replication_task_stats.tables_queued #=> Integer
resp.replication_task.replication_task_stats.tables_errored #=> Integer
resp.replication_task.replication_task_stats.fresh_start_date #=> Time
resp.replication_task.replication_task_stats.start_date #=> Time
resp.replication_task.replication_task_stats.stop_date #=> Time
resp.replication_task.replication_task_stats.full_load_start_date #=> Time
resp.replication_task.replication_task_stats.full_load_finish_date #=> Time
resp.replication_task.task_data #=> String
resp.replication_task.target_replication_instance_arn #=> String

Options Hash (options):

  • :replication_task_arn (required, String)

    The Amazon Resource Name (ARN) of the replication task.

Returns:

See Also:

#start_replication_task_assessment_run(options = {}) ⇒ Types::StartReplicationTaskAssessmentRunResponse

Starts a new premigration assessment run for one or more individual assessments of a migration task.

The assessments that you can specify depend on the source and target database engine and the migration type defined for the given task. To run this operation, your migration task must already be created. After you run this operation, you can review the status of each individual assessment. You can also run the migration task manually after the assessment run and its individual assessments complete.

Examples:

Request syntax with placeholder values


resp = client.start_replication_task_assessment_run({
  replication_task_arn: "String", # required
  service_access_role_arn: "String", # required
  result_location_bucket: "String", # required
  result_location_folder: "String",
  result_encryption_mode: "String",
  result_kms_key_arn: "String",
  assessment_run_name: "String", # required
  include_only: ["String"],
  exclude: ["String"],
})

Response structure


resp.replication_task_assessment_run.replication_task_assessment_run_arn #=> String
resp.replication_task_assessment_run.replication_task_arn #=> String
resp.replication_task_assessment_run.status #=> String
resp.replication_task_assessment_run.replication_task_assessment_run_creation_date #=> Time
resp.replication_task_assessment_run.assessment_progress.individual_assessment_count #=> Integer
resp.replication_task_assessment_run.assessment_progress.individual_assessment_completed_count #=> Integer
resp.replication_task_assessment_run.last_failure_message #=> String
resp.replication_task_assessment_run.service_access_role_arn #=> String
resp.replication_task_assessment_run.result_location_bucket #=> String
resp.replication_task_assessment_run.result_location_folder #=> String
resp.replication_task_assessment_run.result_encryption_mode #=> String
resp.replication_task_assessment_run.result_kms_key_arn #=> String
resp.replication_task_assessment_run.assessment_run_name #=> String

Options Hash (options):

  • :replication_task_arn (required, String)

    Amazon Resource Name (ARN) of the migration task associated with the premigration assessment run that you want to start.

  • :service_access_role_arn (required, String)

    ARN of a service role needed to start the assessment run.

  • :result_location_bucket (required, String)

    Amazon S3 bucket where you want AWS DMS to store the results of this assessment run.

  • :result_location_folder (String)

    Folder within an Amazon S3 bucket where you want AWS DMS to store the results of this assessment run.

  • :result_encryption_mode (String)

    Encryption mode that you can specify to encrypt the results of this assessment run. If you don\'t specify this request parameter, AWS DMS stores the assessment run results without encryption. You can specify one of the options following:

    • "SSE_S3" – The server-side encryption provided as a default by Amazon S3.

    • "SSE_KMS" – AWS Key Management Service (AWS KMS) encryption. This encryption can use either a custom KMS encryption key that you specify or the default KMS encryption key that DMS provides.

  • :result_kms_key_arn (String)

    ARN of a custom KMS encryption key that you specify when you set ResultEncryptionMode to "SSE_KMS\".

  • :assessment_run_name (required, String)

    Unique name to identify the assessment run.

  • :include_only (Array<String>)

    Space-separated list of names for specific individual assessments that you want to include. These names come from the default list of individual assessments that AWS DMS supports for the associated migration task. This task is specified by ReplicationTaskArn.

    You can\'t set a value for IncludeOnly if you also set a value for Exclude in the API operation.

    To identify the names of the default individual assessments that AWS DMS supports for the associated migration task, run the DescribeApplicableIndividualAssessments operation using its own ReplicationTaskArn request parameter.

  • :exclude (Array<String>)

    Space-separated list of names for specific individual assessments that you want to exclude. These names come from the default list of individual assessments that AWS DMS supports for the associated migration task. This task is specified by ReplicationTaskArn.

    You can\'t set a value for Exclude if you also set a value for IncludeOnly in the API operation.

    To identify the names of the default individual assessments that AWS DMS supports for the associated migration task, run the DescribeApplicableIndividualAssessments operation using its own ReplicationTaskArn request parameter.

Returns:

See Also:

#stop_replication_task(options = {}) ⇒ Types::StopReplicationTaskResponse

Stops the replication task.

Examples:

Example: Stop replication task


# Stops the replication task.

resp = client.stop_replication_task({
  replication_task_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ASXWXJZLNWNT5HTWCGV2BUJQ7E", 
})

# resp.to_h outputs the following:
{
  replication_task: {
    migration_type: "full-load", 
    replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
    replication_task_arn: "arn:aws:dms:us-east-1:123456789012:task:OEAMB3NXSTZ6LFYZFEPPBBXPYM", 
    replication_task_creation_date: Time.parse("2016-12-14T18:25:43Z"), 
    replication_task_identifier: "task1", 
    replication_task_settings: "{\"TargetMetadata\":{\"TargetSchema\":\"\",\"SupportLobs\":true,\"FullLobMode\":true,\"LobChunkSize\":64,\"LimitedSizeLobMode\":false,\"LobMaxSize\":0},\"FullLoadSettings\":{\"FullLoadEnabled\":true,\"ApplyChangesEnabled\":false,\"TargetTablePrepMode\":\"DROP_AND_CREATE\",\"CreatePkAfterFullLoad\":false,\"StopTaskCachedChangesApplied\":false,\"StopTaskCachedChangesNotApplied\":false,\"ResumeEnabled\":false,\"ResumeMinTableSize\":100000,\"ResumeOnlyClusteredPKTables\":true,\"MaxFullLoadSubTasks\":8,\"TransactionConsistencyTimeout\":600,\"CommitRate\":10000},\"Logging\":{\"EnableLogging\":false}}", 
    source_endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ZW5UAN6P4E77EC7YWHK4RZZ3BE", 
    status: "creating", 
    table_mappings: "file://mappingfile.json", 
    target_endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:ASXWXJZLNWNT5HTWCGV2BUJQ7E", 
  }, 
}

Request syntax with placeholder values


resp = client.stop_replication_task({
  replication_task_arn: "String", # required
})

Response structure


resp.replication_task.replication_task_identifier #=> String
resp.replication_task.source_endpoint_arn #=> String
resp.replication_task.target_endpoint_arn #=> String
resp.replication_task.replication_instance_arn #=> String
resp.replication_task.migration_type #=> String, one of "full-load", "cdc", "full-load-and-cdc"
resp.replication_task.table_mappings #=> String
resp.replication_task.replication_task_settings #=> String
resp.replication_task.status #=> String
resp.replication_task.last_failure_message #=> String
resp.replication_task.stop_reason #=> String
resp.replication_task.replication_task_creation_date #=> Time
resp.replication_task.replication_task_start_date #=> Time
resp.replication_task.cdc_start_position #=> String
resp.replication_task.cdc_stop_position #=> String
resp.replication_task.recovery_checkpoint #=> String
resp.replication_task.replication_task_arn #=> String
resp.replication_task.replication_task_stats.full_load_progress_percent #=> Integer
resp.replication_task.replication_task_stats.elapsed_time_millis #=> Integer
resp.replication_task.replication_task_stats.tables_loaded #=> Integer
resp.replication_task.replication_task_stats.tables_loading #=> Integer
resp.replication_task.replication_task_stats.tables_queued #=> Integer
resp.replication_task.replication_task_stats.tables_errored #=> Integer
resp.replication_task.replication_task_stats.fresh_start_date #=> Time
resp.replication_task.replication_task_stats.start_date #=> Time
resp.replication_task.replication_task_stats.stop_date #=> Time
resp.replication_task.replication_task_stats.full_load_start_date #=> Time
resp.replication_task.replication_task_stats.full_load_finish_date #=> Time
resp.replication_task.task_data #=> String
resp.replication_task.target_replication_instance_arn #=> String

Options Hash (options):

  • :replication_task_arn (required, String)

    The Amazon Resource Name(ARN) of the replication task to be stopped.

Returns:

See Also:

#test_connection(options = {}) ⇒ Types::TestConnectionResponse

Tests the connection between the replication instance and the endpoint.

Examples:

Example: Test conection


# Tests the connection between the replication instance and the endpoint.

resp = client.test_connection({
  endpoint_arn: "arn:aws:dms:us-east-1:123456789012:endpoint:RAAR3R22XSH46S3PWLC3NJAWKM", 
  replication_instance_arn: "arn:aws:dms:us-east-1:123456789012:rep:6UTDJGBOUS3VI3SUWA66XFJCJQ", 
})

# resp.to_h outputs the following:
{
  connection: {
  }, 
}

Request syntax with placeholder values


resp = client.test_connection({
  replication_instance_arn: "String", # required
  endpoint_arn: "String", # required
})

Response structure


resp.connection.replication_instance_arn #=> String
resp.connection.endpoint_arn #=> String
resp.connection.status #=> String
resp.connection.last_failure_message #=> String
resp.connection.endpoint_identifier #=> String
resp.connection.replication_instance_identifier #=> String

Options Hash (options):

  • :replication_instance_arn (required, String)

    The Amazon Resource Name (ARN) of the replication instance.

  • :endpoint_arn (required, String)

    The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

Returns:

See Also:

#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean

Waiters polls an API operation until a resource enters a desired state.

Basic Usage

Waiters will poll until they are succesful, they fail by entering a terminal state, or until a maximum number of attempts are made.

# polls in a loop, sleeping between attempts client.waiter_until(waiter_name, params)

Configuration

You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You configure waiters by passing a block to #wait_until:

# poll for ~25 seconds
client.wait_until(...) do |w|
  w.max_attempts = 5
  w.delay = 5
end

Callbacks

You can be notified before each polling attempt and before each delay. If you throw :success or :failure from these callbacks, it will terminate the waiter.

started_at = Time.now
client.wait_until(...) do |w|

  # disable max attempts
  w.max_attempts = nil

  # poll for 1 hour, instead of a number of attempts
  w.before_wait do |attempts, response|
    throw :failure if Time.now - started_at > 3600
  end

end

Handling Errors

When a waiter is successful, it returns true. When a waiter fails, it raises an error. All errors raised extend from Waiters::Errors::WaiterFailed.

begin
  client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
  # resource did not enter the desired state in time
end

Parameters:

  • waiter_name (Symbol)

    The name of the waiter. See #waiter_names for a full list of supported waiters.

  • params (Hash) (defaults to: {})

    Additional request parameters. See the #waiter_names for a list of supported waiters and what request they call. The called request determines the list of accepted parameters.

Yield Parameters:

Returns:

  • (Boolean)

    Returns true if the waiter was successful.

Raises:

  • (Errors::FailureStateError)

    Raised when the waiter terminates because the waiter has entered a state that it will not transition out of, preventing success.

  • (Errors::TooManyAttemptsError)

    Raised when the configured maximum number of attempts have been made, and the waiter is not yet successful.

  • (Errors::UnexpectedError)

    Raised when an error is encounted while polling for a resource that is not expected.

  • (Errors::NoSuchWaiterError)

    Raised when you request to wait for an unknown state.

#waiter_namesArray<Symbol>

Returns the list of supported waiters. The following table lists the supported waiters and the client method they call:

Waiter NameClient MethodDefault Delay:Default Max Attempts:
:endpoint_deleted#describe_endpoints560
:replication_instance_available#describe_replication_instances6060
:replication_instance_deleted#describe_replication_instances1560
:replication_task_deleted#describe_replication_tasks1560
:replication_task_ready#describe_replication_tasks1560
:replication_task_running#describe_replication_tasks1560
:replication_task_stopped#describe_replication_tasks1560
:test_connection_succeeds#describe_connections560

Returns:

  • (Array<Symbol>)

    the list of supported waiters.