Class: Aws::DatabaseMigrationService::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb

Overview

An API client for DatabaseMigrationService. To construct a client, you need to configure a :region and :credentials.

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

For details on configuring region and credentials see the developer guide.

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

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

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

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials. This can be an instance of any one of the following classes:

    • Aws::Credentials - Used for configuring static, non-refreshing credentials.

    • Aws::InstanceProfileCredentials - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • Aws::SharedCredentials - Used for loading credentials from a shared file, such as ~/.aws/config.

    • Aws::AssumeRoleCredentials - Used when you need to assume a role.

    When :credentials are not configured directly, the following locations will be searched for credentials:

    • Aws.config[:credentials]
    • The :access_key_id, :secret_access_key, and :session_token options.
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
    • ~/.aws/credentials
    • ~/.aws/config
    • EC2 IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of Aws::InstanceProfileCredentails to enable retries and extended timeouts.
  • :region (required, String)

    The AWS region to connect to. The configured :region is used to determine the service :endpoint. When not passed, a default :region is searched for in the following locations:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :active_endpoint_cache (Boolean) — default: false

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

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in adaptive retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a RetryCapacityNotAvailableError and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When true, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in standard and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :endpoint (String)

    The client endpoint is normally constructed from the :region option. You should only configure an :endpoint when connecting to test or custom endpoints. This should be a valid HTTP(S) URI.

  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    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.

  • :endpoint_discovery (Boolean) — default: false

    When set to true, endpoint discovery will be enabled for operations when available.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the :logger at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in standard and adaptive retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the legacy retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the legacy retry mode.

    @see https://www.awsarchitectureblog.com/2015/03/backoff.html

  • :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, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the legacy retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • legacy - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • standard - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • adaptive - An experimental retry mode that includes all the functionality of standard mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :secret_access_key (String)
  • :session_token (String)
  • :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.

  • :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.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like 'http://proxy.com:123'.

  • :http_open_timeout (Float) — default: 15

    The number of seconds to wait when opening a HTTP session before raising a Timeout::Error.

  • :http_read_timeout (Integer) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has "Expect" header set to "100-continue". Defaults to nil which disables this behaviour. This value can safely be set per request on the session.

  • :http_wire_trace (Boolean) — default: false

    When true, HTTP debug output will be sent to the :logger.

  • :ssl_verify_peer (Boolean) — default: true

    When true, SSL peer certificates are verified when establishing a connection.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.



319
320
321
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 319

def initialize(*args)
  super
end

Instance Method Details

#add_tags_to_resource(params = {}) ⇒ 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.

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",
    },
  ],
})

Parameters:

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

    ({})

Options Hash (params):

  • :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:



380
381
382
383
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 380

def add_tags_to_resource(params = {}, options = {})
  req = build_request(:add_tags_to_resource, params)
  req.send_request(options)
end

#apply_pending_maintenance_action(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



436
437
438
439
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 436

def apply_pending_maintenance_action(params = {}, options = {})
  req = build_request(:apply_pending_maintenance_action, params)
  req.send_request(options)
end

#create_endpoint(params = {}) ⇒ 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,
  },
  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,
  },
  kafka_settings: {
    broker: "String",
    topic: "String",
  },
  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",
    connection_timeout: 1,
    database_name: "String",
    date_format: "String",
    empty_as_null: false,
    encryption_mode: "sse-s3", # accepts sse-s3, sse-kms
    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,
  },
})

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 #=> Boolean
resp.endpoint.s3_settings.include_op_for_full_load #=> Boolean
resp.endpoint.s3_settings.cdc_inserts_only #=> Boolean
resp.endpoint.s3_settings.timestamp_column_name #=> String
resp.endpoint.s3_settings.parquet_timestamp_in_millisecond #=> Boolean
resp.endpoint.s3_settings.cdc_inserts_and_updates #=> Boolean
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 #=> Boolean
resp.endpoint.kinesis_settings.include_partition_value #=> Boolean
resp.endpoint.kinesis_settings.partition_include_schema_table #=> Boolean
resp.endpoint.kinesis_settings.include_table_alter_operations #=> Boolean
resp.endpoint.kinesis_settings.include_control_details #=> Boolean
resp.endpoint.kafka_settings.broker #=> String
resp.endpoint.kafka_settings.topic #=> String
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 #=> Boolean
resp.endpoint.redshift_settings.accept_any_date #=> Boolean
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.connection_timeout #=> Integer
resp.endpoint.redshift_settings.database_name #=> String
resp.endpoint.redshift_settings.date_format #=> String
resp.endpoint.redshift_settings.empty_as_null #=> Boolean
resp.endpoint.redshift_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
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 #=> Boolean
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 #=> Boolean
resp.endpoint.redshift_settings.truncate_columns #=> Boolean
resp.endpoint.redshift_settings.username #=> String
resp.endpoint.redshift_settings.write_buffer_size #=> Integer

Parameters:

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

    ({})

Options Hash (params):

  • :endpoint_identifier (required, String)

    The database endpoint identifier. 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.

  • :endpoint_type (required, String)

    The type of endpoint. Valid values are source and target.

  • :engine_name (required, String)

    The type of engine for the endpoint. Valid values, depending on the EndpointType value, include "mysql", "oracle", "postgres", "mariadb", "aurora", "aurora-postgresql", "redshift", "s3", "db2", "azuredb", "sybase", "dynamodb", "mongodb", "kinesis", "kafka", "elasticsearch", "documentdb", "sqlserver", and "neptune".

  • :username (String)

    The user name to be used to log in to the endpoint database.

  • :password (String)

    The password to be used to log in to the endpoint database.

  • :server_name (String)

    The name of the server where the endpoint database resides.

  • :port (Integer)

    The port used by the endpoint database.

  • :database_name (String)

    The name of the endpoint database.

  • :extra_connection_attributes (String)

    Additional attributes associated with the connection. Each attribute is specified as a name-value pair associated by an equal sign (=). Multiple attributes are separated by a semicolon (;) with no additional white space. For information on the attributes available for connecting your source or target endpoint, see Working with AWS DMS Endpoints in the AWS Database Migration Service User Guide.

  • :kms_key_id (String)

    An AWS KMS key identifier that is used to encrypt the connection parameters for the endpoint.

    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.

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

    One or more tags to be assigned to the endpoint.

  • :certificate_arn (String)

    The Amazon Resource Name (ARN) for the certificate.

  • :ssl_mode (String)

    The Secure Sockets Layer (SSL) mode to use for the SSL connection. The default is none

  • :service_access_role_arn (String)

    The Amazon Resource Name (ARN) for the service access role that you want to use to create the endpoint.

  • :external_table_definition (String)

    The external table definition.

  • :dynamo_db_settings (Types::DynamoDbSettings)

    Settings in JSON format for the target Amazon DynamoDB endpoint. For information about other available settings, see Using Object Mapping to Migrate Data to DynamoDB in the AWS Database Migration Service User Guide.

  • :s3_settings (Types::S3Settings)

    Settings in JSON format for the target Amazon S3 endpoint. For more information about the available settings, see Extra Connection Attributes When Using Amazon S3 as a Target for AWS DMS in the AWS Database Migration Service User Guide.

  • :dms_transfer_settings (Types::DmsTransferSettings)

    The settings in JSON format for the DMS transfer type of source endpoint.

    Possible settings include the following:

    • ServiceAccessRoleArn - The IAM role that has permission to access the Amazon S3 bucket.

    • BucketName - The name of the S3 bucket to use.

    • CompressionType - An optional parameter to use GZIP to compress the target files. To use GZIP, set this value to NONE (the default). To keep the files uncompressed, don't use this value.

    Shorthand syntax for these settings is as follows: ServiceAccessRoleArn=string,BucketName=string,CompressionType=string

    JSON syntax for these settings is as follows: \{ "ServiceAccessRoleArn": "string", "BucketName": "string", "CompressionType": "none"|"gzip" \}

  • :mongo_db_settings (Types::MongoDbSettings)

    Settings in JSON format for the source MongoDB endpoint. For more information about the available settings, see Using MongoDB as a Target for AWS Database Migration Service in the AWS Database Migration Service User Guide.

  • :kinesis_settings (Types::KinesisSettings)

    Settings in JSON format for the target endpoint for Amazon Kinesis Data Streams. For more information about the available settings, see Using Amazon Kinesis Data Streams as a Target for AWS Database Migration Service in the AWS Database Migration Service User Guide.

  • :kafka_settings (Types::KafkaSettings)

    Settings in JSON format for the target Apache Kafka endpoint. For more information about the available settings, see Using Apache Kafka as a Target for AWS Database Migration Service in the AWS Database Migration Service User Guide.

  • :elasticsearch_settings (Types::ElasticsearchSettings)

    Settings in JSON format for the target Elasticsearch endpoint. For more information about the available settings, see Extra Connection Attributes When Using Elasticsearch as a Target for AWS DMS in the AWS Database Migration Service User Guide.

  • :neptune_settings (Types::NeptuneSettings)

    Settings in JSON format for the target Amazon Neptune endpoint. For more information about the available settings, see Specifying Endpoint Settings for Amazon Neptune as a Target in the AWS Database Migration Service User Guide.

  • :redshift_settings (Types::RedshiftSettings)

    Provides information that defines an Amazon Redshift endpoint.

Returns:

See Also:



886
887
888
889
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 886

def create_endpoint(params = {}, options = {})
  req = build_request(:create_endpoint, params)
  req.send_request(options)
end

#create_event_subscription(params = {}) ⇒ 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 #=> Boolean

Parameters:

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

    ({})

Options Hash (params):

  • :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:



996
997
998
999
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 996

def create_event_subscription(params = {}, options = {})
  req = build_request(:create_event_subscription, params)
  req.send_request(options)
end

#create_replication_instance(params = {}) ⇒ 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",
})

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 #=> Boolean
resp.replication_instance.pending_modified_values.engine_version #=> String
resp.replication_instance.multi_az #=> Boolean
resp.replication_instance.engine_version #=> String
resp.replication_instance.auto_minor_version_upgrade #=> Boolean
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 #=> Boolean
resp.replication_instance.secondary_availability_zone #=> String
resp.replication_instance.free_until #=> Time
resp.replication_instance.dns_name_servers #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :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.

  • :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"

Returns:

See Also:



1268
1269
1270
1271
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 1268

def create_replication_instance(params = {}, options = {})
  req = build_request(:create_replication_instance, params)
  req.send_request(options)
end

#create_replication_subnet_group(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



1353
1354
1355
1356
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 1353

def create_replication_subnet_group(params = {}, options = {})
  req = build_request(:create_replication_subnet_group, params)
  req.send_request(options)
end

#create_replication_task(params = {}) ⇒ 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",
})

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

Parameters:

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

    ({})

Options Hash (params):

  • :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, DateTime, Date, Integer, String)

    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:3018-02-09T12:12:12”

    Commit time example: --cdc-stop-position “commit_time: 3018-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.

Returns:

See Also:



1561
1562
1563
1564
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 1561

def create_replication_task(params = {}, options = {})
  req = build_request(:create_replication_task, params)
  req.send_request(options)
end

#delete_certificate(params = {}) ⇒ 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 #=> String
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

Parameters:

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

    ({})

Options Hash (params):

  • :certificate_arn (required, String)

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

Returns:

See Also:



1613
1614
1615
1616
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 1613

def delete_certificate(params = {}, options = {})
  req = build_request(:delete_certificate, params)
  req.send_request(options)
end

#delete_connection(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



1667
1668
1669
1670
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 1667

def delete_connection(params = {}, options = {})
  req = build_request(:delete_connection, params)
  req.send_request(options)
end

#delete_endpoint(params = {}) ⇒ 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 #=> Boolean
resp.endpoint.s3_settings.include_op_for_full_load #=> Boolean
resp.endpoint.s3_settings.cdc_inserts_only #=> Boolean
resp.endpoint.s3_settings.timestamp_column_name #=> String
resp.endpoint.s3_settings.parquet_timestamp_in_millisecond #=> Boolean
resp.endpoint.s3_settings.cdc_inserts_and_updates #=> Boolean
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 #=> Boolean
resp.endpoint.kinesis_settings.include_partition_value #=> Boolean
resp.endpoint.kinesis_settings.partition_include_schema_table #=> Boolean
resp.endpoint.kinesis_settings.include_table_alter_operations #=> Boolean
resp.endpoint.kinesis_settings.include_control_details #=> Boolean
resp.endpoint.kafka_settings.broker #=> String
resp.endpoint.kafka_settings.topic #=> String
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 #=> Boolean
resp.endpoint.redshift_settings.accept_any_date #=> Boolean
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.connection_timeout #=> Integer
resp.endpoint.redshift_settings.database_name #=> String
resp.endpoint.redshift_settings.date_format #=> String
resp.endpoint.redshift_settings.empty_as_null #=> Boolean
resp.endpoint.redshift_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
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 #=> Boolean
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 #=> Boolean
resp.endpoint.redshift_settings.truncate_columns #=> Boolean
resp.endpoint.redshift_settings.username #=> String
resp.endpoint.redshift_settings.write_buffer_size #=> Integer

Parameters:

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

    ({})

Options Hash (params):

  • :endpoint_arn (required, String)

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

Returns:

See Also:



1824
1825
1826
1827
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 1824

def delete_endpoint(params = {}, options = {})
  req = build_request(:delete_endpoint, params)
  req.send_request(options)
end

#delete_event_subscription(params = {}) ⇒ 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 #=> Boolean

Parameters:

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

    ({})

Options Hash (params):

  • :subscription_name (required, String)

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

Returns:

See Also:



1862
1863
1864
1865
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 1862

def delete_event_subscription(params = {}, options = {})
  req = build_request(:delete_event_subscription, params)
  req.send_request(options)
end

#delete_replication_instance(params = {}) ⇒ 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 #=> Boolean
resp.replication_instance.pending_modified_values.engine_version #=> String
resp.replication_instance.multi_az #=> Boolean
resp.replication_instance.engine_version #=> String
resp.replication_instance.auto_minor_version_upgrade #=> Boolean
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 #=> Boolean
resp.replication_instance.secondary_availability_zone #=> String
resp.replication_instance.free_until #=> Time
resp.replication_instance.dns_name_servers #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :replication_instance_arn (required, String)

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

Returns:

See Also:



1996
1997
1998
1999
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 1996

def delete_replication_instance(params = {}, options = {})
  req = build_request(:delete_replication_instance, params)
  req.send_request(options)
end

#delete_replication_subnet_group(params = {}) ⇒ 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
})

Parameters:

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

    ({})

Options Hash (params):

  • :replication_subnet_group_identifier (required, String)

    The subnet group name of the replication instance.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2031
2032
2033
2034
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2031

def delete_replication_subnet_group(params = {}, options = {})
  req = build_request(:delete_replication_subnet_group, params)
  req.send_request(options)
end

#delete_replication_task(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :replication_task_arn (required, String)

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

Returns:

See Also:



2111
2112
2113
2114
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2111

def delete_replication_task(params = {}, options = {})
  req = build_request(:delete_replication_task, params)
  req.send_request(options)
end

#describe_account_attributes(params = {}) ⇒ 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, 
    }, 
  ], 
}

Response structure


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

Parameters:

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

    ({})

Returns:

See Also:



2175
2176
2177
2178
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2175

def (params = {}, options = {})
  req = build_request(:describe_account_attributes, params)
  req.send_request(options)
end

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

Provides a description of the certificate.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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 #=> String
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

Parameters:

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

    ({})

Options Hash (params):

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

    Filters applied to the certificate 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:



2264
2265
2266
2267
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2264

def describe_certificates(params = {}, options = {})
  req = build_request(:describe_certificates, params)
  req.send_request(options)
end

#describe_connections(params = {}) ⇒ 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.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

The following waiters are defined for this operation (see #wait_until for detailed usage):

  • test_connection_succeeds

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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



2367
2368
2369
2370
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2367

def describe_connections(params = {}, options = {})
  req = build_request(:describe_connections, params)
  req.send_request(options)
end

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

Returns information about the type of endpoints available.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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 #=> Boolean
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

Parameters:

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

    ({})

Options Hash (params):

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

    Filters applied to the describe action.

    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:



2454
2455
2456
2457
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2454

def describe_endpoint_types(params = {}, options = {})
  req = build_request(:describe_endpoint_types, params)
  req.send_request(options)
end

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

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

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

The following waiters are defined for this operation (see #wait_until for detailed usage):

  • endpoint_deleted

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 #=> Boolean
resp.endpoints[0].s3_settings.include_op_for_full_load #=> Boolean
resp.endpoints[0].s3_settings.cdc_inserts_only #=> Boolean
resp.endpoints[0].s3_settings.timestamp_column_name #=> String
resp.endpoints[0].s3_settings.parquet_timestamp_in_millisecond #=> Boolean
resp.endpoints[0].s3_settings.cdc_inserts_and_updates #=> Boolean
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 #=> Boolean
resp.endpoints[0].kinesis_settings.include_partition_value #=> Boolean
resp.endpoints[0].kinesis_settings.partition_include_schema_table #=> Boolean
resp.endpoints[0].kinesis_settings.include_table_alter_operations #=> Boolean
resp.endpoints[0].kinesis_settings.include_control_details #=> Boolean
resp.endpoints[0].kafka_settings.broker #=> String
resp.endpoints[0].kafka_settings.topic #=> String
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 #=> Boolean
resp.endpoints[0].redshift_settings.accept_any_date #=> Boolean
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.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 #=> Boolean
resp.endpoints[0].redshift_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
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 #=> Boolean
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 #=> Boolean
resp.endpoints[0].redshift_settings.truncate_columns #=> Boolean
resp.endpoints[0].redshift_settings.username #=> String
resp.endpoints[0].redshift_settings.write_buffer_size #=> Integer

Parameters:

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

    ({})

Options Hash (params):

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

    Filters applied to the describe action.

    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:



2642
2643
2644
2645
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2642

def describe_endpoints(params = {}, options = {})
  req = build_request(:describe_endpoints, params)
  req.send_request(options)
end

#describe_event_categories(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :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 action.

Returns:

See Also:



2691
2692
2693
2694
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2691

def describe_event_categories(params = {}, options = {})
  req = build_request(:describe_event_categories, params)
  req.send_request(options)
end

#describe_event_subscriptions(params = {}) ⇒ 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.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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 #=> Boolean

Parameters:

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

    ({})

Options Hash (params):

  • :subscription_name (String)

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

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

    Filters applied to the action.

  • :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:



2766
2767
2768
2769
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2766

def describe_event_subscriptions(params = {}, options = {})
  req = build_request(:describe_event_subscriptions, params)
  req.send_request(options)
end

#describe_events(params = {}) ⇒ 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.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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

Parameters:

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

    ({})

Options Hash (params):

  • :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, DateTime, Date, Integer, String)

    The start time for the events to be listed.

  • :end_time (Time, DateTime, Date, Integer, String)

    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 the action.

  • :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:



2859
2860
2861
2862
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2859

def describe_events(params = {}, options = {})
  req = build_request(:describe_events, params)
  req.send_request(options)
end

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

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

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



2932
2933
2934
2935
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2932

def describe_orderable_replication_instances(params = {}, options = {})
  req = build_request(:describe_orderable_replication_instances, params)
  req.send_request(options)
end

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

For internal use only

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



2997
2998
2999
3000
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 2997

def describe_pending_maintenance_actions(params = {}, options = {})
  req = build_request(:describe_pending_maintenance_actions, params)
  req.send_request(options)
end

#describe_refresh_schemas_status(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :endpoint_arn (required, String)

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

Returns:

See Also:



3045
3046
3047
3048
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 3045

def describe_refresh_schemas_status(params = {}, options = {})
  req = build_request(:describe_refresh_schemas_status, params)
  req.send_request(options)
end

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

Returns information about the task logs for the specified task.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



3099
3100
3101
3102
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 3099

def describe_replication_instance_task_logs(params = {}, options = {})
  req = build_request(:describe_replication_instance_task_logs, params)
  req.send_request(options)
end

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

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

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

The following waiters are defined for this operation (see #wait_until for detailed usage):

  • replication_instance_available
  • replication_instance_deleted

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 #=> Boolean
resp.replication_instances[0].pending_modified_values.engine_version #=> String
resp.replication_instances[0].multi_az #=> Boolean
resp.replication_instances[0].engine_version #=> String
resp.replication_instances[0].auto_minor_version_upgrade #=> Boolean
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 #=> Boolean
resp.replication_instances[0].secondary_availability_zone #=> String
resp.replication_instances[0].free_until #=> Time
resp.replication_instances[0].dns_name_servers #=> String

Parameters:

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

    ({})

Options Hash (params):

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

    Filters applied to the describe action.

    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:



3227
3228
3229
3230
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 3227

def describe_replication_instances(params = {}, options = {})
  req = build_request(:describe_replication_instances, params)
  req.send_request(options)
end

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

Returns information about the replication subnet groups.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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

Parameters:

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

    ({})

Options Hash (params):

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

    Filters applied to the describe action.

    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:



3317
3318
3319
3320
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 3317

def describe_replication_subnet_groups(params = {}, options = {})
  req = build_request(:describe_replication_subnet_groups, params)
  req.send_request(options)
end

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

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

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



3379
3380
3381
3382
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 3379

def describe_replication_task_assessment_results(params = {}, options = {})
  req = build_request(:describe_replication_task_assessment_results, params)
  req.send_request(options)
end

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

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

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

The following waiters are defined for this operation (see #wait_until for detailed usage):

  • replication_task_deleted
  • replication_task_ready
  • replication_task_running
  • replication_task_stopped

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

Parameters:

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

    ({})

Options Hash (params):

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

    Filters applied to the describe action.

    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:



3505
3506
3507
3508
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 3505

def describe_replication_tasks(params = {}, options = {})
  req = build_request(:describe_replication_tasks, params)
  req.send_request(options)
end

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

Returns information about the schema for the specified endpoint.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



3574
3575
3576
3577
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 3574

def describe_schemas(params = {}, options = {})
  req = build_request(:describe_schemas, params)
  req.send_request(options)
end

#describe_table_statistics(params = {}) ⇒ 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.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

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 #=> Boolean
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

Parameters:

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

    ({})

Options Hash (params):

  • :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 the describe table statistics action.

    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:



3683
3684
3685
3686
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 3683

def describe_table_statistics(params = {}, options = {})
  req = build_request(:describe_table_statistics, params)
  req.send_request(options)
end

#import_certificate(params = {}) ⇒ 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 #=> String
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

Parameters:

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

    ({})

Options Hash (params):

  • :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 (String, IO)

    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:



3757
3758
3759
3760
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 3757

def import_certificate(params = {}, options = {})
  req = build_request(:import_certificate, params)
  req.send_request(options)
end

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

Lists all tags for an AWS DMS resource.

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

Parameters:

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

    ({})

Options Hash (params):

  • :resource_arn (required, String)

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

Returns:

See Also:



3803
3804
3805
3806
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 3803

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#modify_endpoint(params = {}) ⇒ 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,
  },
  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,
  },
  kafka_settings: {
    broker: "String",
    topic: "String",
  },
  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",
    connection_timeout: 1,
    database_name: "String",
    date_format: "String",
    empty_as_null: false,
    encryption_mode: "sse-s3", # accepts sse-s3, sse-kms
    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,
  },
})

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 #=> Boolean
resp.endpoint.s3_settings.include_op_for_full_load #=> Boolean
resp.endpoint.s3_settings.cdc_inserts_only #=> Boolean
resp.endpoint.s3_settings.timestamp_column_name #=> String
resp.endpoint.s3_settings.parquet_timestamp_in_millisecond #=> Boolean
resp.endpoint.s3_settings.cdc_inserts_and_updates #=> Boolean
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 #=> Boolean
resp.endpoint.kinesis_settings.include_partition_value #=> Boolean
resp.endpoint.kinesis_settings.partition_include_schema_table #=> Boolean
resp.endpoint.kinesis_settings.include_table_alter_operations #=> Boolean
resp.endpoint.kinesis_settings.include_control_details #=> Boolean
resp.endpoint.kafka_settings.broker #=> String
resp.endpoint.kafka_settings.topic #=> String
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 #=> Boolean
resp.endpoint.redshift_settings.accept_any_date #=> Boolean
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.connection_timeout #=> Integer
resp.endpoint.redshift_settings.database_name #=> String
resp.endpoint.redshift_settings.date_format #=> String
resp.endpoint.redshift_settings.empty_as_null #=> Boolean
resp.endpoint.redshift_settings.encryption_mode #=> String, one of "sse-s3", "sse-kms"
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 #=> Boolean
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 #=> Boolean
resp.endpoint.redshift_settings.truncate_columns #=> Boolean
resp.endpoint.redshift_settings.username #=> String
resp.endpoint.redshift_settings.write_buffer_size #=> Integer

Parameters:

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

    ({})

Options Hash (params):

  • :endpoint_arn (required, String)

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

  • :endpoint_identifier (String)

    The database endpoint identifier. 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.

  • :endpoint_type (String)

    The type of endpoint. Valid values are source and target.

  • :engine_name (String)

    The type of engine for the endpoint. Valid values, depending on the EndpointType, include "mysql", "oracle", "postgres", "mariadb", "aurora", "aurora-postgresql", "redshift", "s3", "db2", "azuredb", "sybase", "dynamodb", "mongodb", "kinesis", "kafka", "elasticsearch", "documentdb", "sqlserver", and "neptune".

  • :username (String)

    The user name to be used to login to the endpoint database.

  • :password (String)

    The password to be used to login to the endpoint database.

  • :server_name (String)

    The name of the server where the endpoint database resides.

  • :port (Integer)

    The port used by the endpoint database.

  • :database_name (String)

    The name of the endpoint database.

  • :extra_connection_attributes (String)

    Additional attributes associated with the connection. To reset this parameter, pass the empty string ("") as an argument.

  • :certificate_arn (String)

    The Amazon Resource Name (ARN) of the certificate used for SSL connection.

  • :ssl_mode (String)

    The SSL mode used to connect to the endpoint. The default value is none.

  • :service_access_role_arn (String)

    The Amazon Resource Name (ARN) for the service access role you want to use to modify the endpoint.

  • :external_table_definition (String)

    The external table definition.

  • :dynamo_db_settings (Types::DynamoDbSettings)

    Settings in JSON format for the target Amazon DynamoDB endpoint. For information about other available settings, see Using Object Mapping to Migrate Data to DynamoDB in the AWS Database Migration Service User Guide.

  • :s3_settings (Types::S3Settings)

    Settings in JSON format for the target Amazon S3 endpoint. For more information about the available settings, see Extra Connection Attributes When Using Amazon S3 as a Target for AWS DMS in the AWS Database Migration Service User Guide.

  • :dms_transfer_settings (Types::DmsTransferSettings)

    The settings in JSON format for the DMS transfer type of source endpoint.

    Attributes include the following:

    • serviceAccessRoleArn - The AWS Identity and Access Management (IAM) role that has permission to access the Amazon S3 bucket.

    • BucketName - The name of the S3 bucket to use.

    • compressionType - An optional parameter to use GZIP to compress the target files. Either set this parameter to NONE (the default) or don't use it to leave the files uncompressed.

    Shorthand syntax for these settings is as follows: ServiceAccessRoleArn=string ,BucketName=string,CompressionType=string

    JSON syntax for these settings is as follows: \{ "ServiceAccessRoleArn": "string", "BucketName": "string", "CompressionType": "none"|"gzip" \}

  • :mongo_db_settings (Types::MongoDbSettings)

    Settings in JSON format for the source MongoDB endpoint. For more information about the available settings, see the configuration properties section in Using MongoDB as a Target for AWS Database Migration Service in the AWS Database Migration Service User Guide.

  • :kinesis_settings (Types::KinesisSettings)

    Settings in JSON format for the target endpoint for Amazon Kinesis Data Streams. For more information about the available settings, see Using Amazon Kinesis Data Streams as a Target for AWS Database Migration Service in the AWS Database Migration Service User Guide.

  • :kafka_settings (Types::KafkaSettings)

    Settings in JSON format for the target Apache Kafka endpoint. For more information about the available settings, see Using Apache Kafka as a Target for AWS Database Migration Service in the AWS Database Migration Service User Guide.

  • :elasticsearch_settings (Types::ElasticsearchSettings)

    Settings in JSON format for the target Elasticsearch endpoint. For more information about the available settings, see Extra Connection Attributes When Using Elasticsearch as a Target for AWS DMS in the AWS Database Migration Service User Guide.

  • :neptune_settings (Types::NeptuneSettings)

    Settings in JSON format for the target Amazon Neptune endpoint. For more information about the available settings, see Specifying Endpoint Settings for Amazon Neptune as a Target in the AWS Database Migration Service User Guide.

  • :redshift_settings (Types::RedshiftSettings)

    Provides information that defines an Amazon Redshift endpoint.

Returns:

See Also:



4217
4218
4219
4220
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 4217

def modify_endpoint(params = {}, options = {})
  req = build_request(:modify_endpoint, params)
  req.send_request(options)
end

#modify_event_subscription(params = {}) ⇒ 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 #=> Boolean

Parameters:

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

    ({})

Options Hash (params):

  • :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:



4279
4280
4281
4282
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 4279

def modify_event_subscription(params = {}, options = {})
  req = build_request(:modify_event_subscription, params)
  req.send_request(options)
end

#modify_replication_instance(params = {}) ⇒ 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 #=> Boolean
resp.replication_instance.pending_modified_values.engine_version #=> String
resp.replication_instance.multi_az #=> Boolean
resp.replication_instance.engine_version #=> String
resp.replication_instance.auto_minor_version_upgrade #=> Boolean
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 #=> Boolean
resp.replication_instance.secondary_availability_zone #=> String
resp.replication_instance.free_until #=> Time
resp.replication_instance.dns_name_servers #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :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.

  • :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:



4512
4513
4514
4515
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 4512

def modify_replication_instance(params = {}, options = {})
  req = build_request(:modify_replication_instance, params)
  req.send_request(options)
end

#modify_replication_subnet_group(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



4573
4574
4575
4576
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 4573

def modify_replication_subnet_group(params = {}, options = {})
  req = build_request(:modify_replication_subnet_group, params)
  req.send_request(options)
end

#modify_replication_task(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :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, DateTime, Date, Integer, String)

    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:3018-02-09T12:12:12”

    Commit time example: --cdc-stop-position “commit_time: 3018-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:



4726
4727
4728
4729
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 4726

def modify_replication_task(params = {}, options = {})
  req = build_request(:modify_replication_task, params)
  req.send_request(options)
end

#reboot_replication_instance(params = {}) ⇒ 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 #=> Boolean
resp.replication_instance.pending_modified_values.engine_version #=> String
resp.replication_instance.multi_az #=> Boolean
resp.replication_instance.engine_version #=> String
resp.replication_instance.auto_minor_version_upgrade #=> Boolean
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 #=> Boolean
resp.replication_instance.secondary_availability_zone #=> String
resp.replication_instance.free_until #=> Time
resp.replication_instance.dns_name_servers #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :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:



4797
4798
4799
4800
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 4797

def reboot_replication_instance(params = {}, options = {})
  req = build_request(:reboot_replication_instance, params)
  req.send_request(options)
end

#refresh_schemas(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



4854
4855
4856
4857
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 4854

def refresh_schemas(params = {}, options = {})
  req = build_request(:refresh_schemas, params)
  req.send_request(options)
end

#reload_tables(params = {}) ⇒ 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",
      table_name: "String",
    },
  ],
  reload_option: "data-reload", # accepts data-reload, validate-only
})

Response structure


resp.replication_task_arn #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :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:



4902
4903
4904
4905
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 4902

def reload_tables(params = {}, options = {})
  req = build_request(:reload_tables, params)
  req.send_request(options)
end

#remove_tags_from_resource(params = {}) ⇒ Struct

Removes metadata tags from a DMS resource.

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
})

Parameters:

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

    ({})

Options Hash (params):

  • :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:



4944
4945
4946
4947
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 4944

def remove_tags_from_resource(params = {}, options = {})
  req = build_request(:remove_tags_from_resource, params)
  req.send_request(options)
end

#start_replication_task(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :replication_task_arn (required, String)

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

  • :start_replication_task_type (required, String)

    The type of replication task.

  • :cdc_start_time (Time, DateTime, Date, Integer, String)

    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:3018-02-09T12:12:12”

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

Returns:

See Also:



5085
5086
5087
5088
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 5085

def start_replication_task(params = {}, options = {})
  req = build_request(:start_replication_task, params)
  req.send_request(options)
end

#start_replication_task_assessment(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :replication_task_arn (required, String)

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

Returns:

See Also:



5141
5142
5143
5144
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 5141

def start_replication_task_assessment(params = {}, options = {})
  req = build_request(:start_replication_task_assessment, params)
  req.send_request(options)
end

#stop_replication_task(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :replication_task_arn (required, String)

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

Returns:

See Also:



5221
5222
5223
5224
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 5221

def stop_replication_task(params = {}, options = {})
  req = build_request(:stop_replication_task, params)
  req.send_request(options)
end

#test_connection(params = {}) ⇒ 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

Parameters:

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

    ({})

Options Hash (params):

  • :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:



5276
5277
5278
5279
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 5276

def test_connection(params = {}, options = {})
  req = build_request(:test_connection, params)
  req.send_request(options)
end

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

Polls an API operation until a resource enters a desired state.

Basic Usage

A waiter will call an API operation until:

  • It is successful
  • It enters a terminal state
  • It makes the maximum number of attempts

In between attempts, the waiter will sleep.

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

Configuration

You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You can pass configuration as the final arguments hash.

# poll for ~25 seconds
client.wait_until(waiter_name, params, {
  max_attempts: 5,
  delay: 5,
})

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(waiter_name, params, {

  # disable max attempts
  max_attempts: nil,

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

Handling Errors

When a waiter is unsuccessful, it will raise an error. All of the failure errors extend from Waiters::Errors::WaiterFailed.

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

Valid Waiters

The following table lists the valid waiter names, the operations they call, and the default :delay and :max_attempts values.

waiter_name params :delay :max_attempts
endpoint_deleted #describe_endpoints 5 60
replication_instance_available #describe_replication_instances 60 60
replication_instance_deleted #describe_replication_instances 15 60
replication_task_deleted #describe_replication_tasks 15 60
replication_task_ready #describe_replication_tasks 15 60
replication_task_running #describe_replication_tasks 15 60
replication_task_stopped #describe_replication_tasks 15 60
test_connection_succeeds #describe_connections 5 60

Parameters:

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

    ({})

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

    ({})

Options Hash (options):

  • :max_attempts (Integer)
  • :delay (Integer)
  • :before_attempt (Proc)
  • :before_wait (Proc)

Yields:

  • (w.waiter)

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.



5393
5394
5395
5396
5397
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb', line 5393

def wait_until(waiter_name, params = {}, options = {})
  w = waiter(waiter_name, options)
  yield(w.waiter) if block_given? # deprecated
  w.wait(params)
end