Class: Aws::DatabaseMigrationService::Client

Inherits:
Seahorse::Client::Base
  • Object
show all
Includes:
ClientStubs
Defined in:
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](/sdk-for-ruby/v3/developer-guide/setup-config.html).

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

Class Attribute Summary collapse

API Operations collapse

Class Method Summary collapse

Instance Method Summary collapse

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::SharedCredentials` - Used for loading static credentials from a shared file, such as `~/.aws/config`.

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

    • ‘Aws::AssumeRoleWebIdentityCredentials` - Used when you need to assume a role after providing credentials via the web.

    • ‘Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an access token generated from `aws login`.

    • ‘Aws::ProcessCredentials` - Used for loading credentials from a process that outputs to stdout.

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

    • ‘Aws::ECSCredentials` - Used for loading credentials from instances running in ECS.

    • ‘Aws::CognitoIdentityCredentials` - Used for loading credentials from the Cognito Identity service.

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

    • Aws.config`

    • The ‘:access_key_id`, `:secret_access_key`, and `:session_token` options.

    • ENV, ENV

    • ‘~/.aws/credentials`

    • ‘~/.aws/config`

    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of ‘Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV to true.

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

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

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

    See Aws::DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

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

  • :disable_request_compression (Boolean) — default: false

    When set to ‘true’ the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the ‘:endpoint` option directly. This is normally constructed from the `:region` option. Configuring `:endpoint` is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :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.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

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

  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

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

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

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

  • :token_provider (Aws::TokenProvider)

    A Bearer Token Provider. This can be an instance of any one of the following classes:

    • ‘Aws::StaticTokenProvider` - Used for configuring static, non-refreshing tokens.

    • ‘Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an access token generated from `aws login`.

    When ‘:token_provider` is not configured directly, the `Aws::TokenProviderChain` will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to ‘true`, dualstack enabled endpoints (with `.aws` TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to ‘true`, fips compatible endpoints will be used if available. When a `fips` region is used, the region is normalized and this config is set to `true`.

  • :validate_params (Boolean) — default: true

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

  • :endpoint_provider (Aws::DatabaseMigrationService::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to ‘#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::DatabaseMigrationService::EndpointParameters`

  • :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_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_open_timeout (Float) — default: 15

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

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like ‘proxy.com:123’.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. 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`.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a ‘content-length`).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When ‘true`, response errors are raised.

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

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

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



420
421
422
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 420

def initialize(*args)
  super
end

Class Attribute Details

.identifierObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



12024
12025
12026
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 12024

def identifier
  @identifier
end

Class Method Details

.errors_moduleObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



12027
12028
12029
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 12027

def errors_module
  Errors
end

Instance Method Details

#add_tags_to_resource(params = {}) ⇒ Struct

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

[1]: docs.aws.amazon.com/dms/latest/APIReference/API_Tag.html

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

Parameters:

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

    ({})

Options Hash (params):

  • :resource_arn (required, String)

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

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



486
487
488
489
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 486

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 DMS resource that the pending maintenance action applies to.

  • :apply_action (required, String)

    The pending maintenance action to apply to this resource.

    Valid values: ‘os-upgrade`, `system-update`, `db-upgrade`

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



544
545
546
547
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 544

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

#batch_start_recommendations(params = {}) ⇒ Types::BatchStartRecommendationsResponse

Starts the analysis of up to 20 source databases to recommend target engines for each source database. This is a batch version of [StartRecommendations].

The result of analysis of each source database is reported individually in the response. Because the batch request can result in a combination of successful and unsuccessful actions, you should check for batch errors even when the call returns an HTTP status code of ‘200`.

[1]: docs.aws.amazon.com/dms/latest/APIReference/API_StartRecommendations.html

Examples:

Request syntax with placeholder values


resp = client.batch_start_recommendations({
  data: [
    {
      database_id: "String", # required
      settings: { # required
        instance_sizing_type: "String", # required
        workload_type: "String", # required
      },
    },
  ],
})

Response structure


resp.error_entries #=> Array
resp.error_entries[0].database_id #=> String
resp.error_entries[0].message #=> String
resp.error_entries[0].code #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :data (Array<Types::StartRecommendationsRequestEntry>)

    Provides information about source databases to analyze. After this analysis, Fleet Advisor recommends target engines for each source database.

Returns:

See Also:



597
598
599
600
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 597

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

#build_request(operation_name, params = {}) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Parameters:

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


11875
11876
11877
11878
11879
11880
11881
11882
11883
11884
11885
11886
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 11875

def build_request(operation_name, params = {})
  handlers = @handlers.for(operation_name)
  context = Seahorse::Client::RequestContext.new(
    operation_name: operation_name,
    operation: config.api.operation(operation_name),
    client: self,
    params: params,
    config: config)
  context[:gem_name] = 'aws-sdk-databasemigrationservice'
  context[:gem_version] = '1.95.0'
  Seahorse::Client::Request.new(handlers, context)
end

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

Cancels a single premigration assessment run.

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

Examples:

Request syntax with placeholder values


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

Response structure


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

Parameters:

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

    ({})

Options Hash (params):

  • :replication_task_assessment_run_arn (required, String)

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

Returns:

See Also:



642
643
644
645
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 642

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

#create_data_provider(params = {}) ⇒ Types::CreateDataProviderResponse

Creates a data provider using the provided settings. A data provider stores a data store type and location information about your database.

Examples:

Example: Create Data Provider


# Creates the data provider with the specified parameters.

resp = client.create_data_provider({
  data_provider_name: "sqlServer-dev", 
  description: "description", 
  engine: "sqlserver", 
  settings: {
    microsoft_sql_server_settings: {
      database_name: "DatabaseName", 
      port: 11112, 
      server_name: "ServerName2", 
      ssl_mode: "none", 
    }, 
  }, 
  tags: [
    {
      key: "access", 
      value: "authorizedusers", 
    }, 
  ], 
})

resp.to_h outputs the following:
{
  data_provider: {
    data_provider_arn: "arn:aws:dms:us-east-1:012345678901:data-provider:my-target-dataprovider", 
    data_provider_creation_time: Time.parse("2023-05-12T10:50:41.988561Z"), 
    data_provider_name: "my-target-dataprovider", 
    engine: "postgres", 
    settings: {
      postgre_sql_settings: {
        database_name: "target", 
        port: 5432, 
        server_name: "postrgesql.a1b2c3d4e5f6.us-east-1.rds.amazonaws.com", 
        ssl_mode: "none", 
      }, 
    }, 
  }, 
}

Request syntax with placeholder values


resp = client.create_data_provider({
  data_provider_name: "String",
  description: "String",
  engine: "String", # required
  settings: { # required
    redshift_settings: {
      server_name: "String",
      port: 1,
      database_name: "String",
    },
    postgre_sql_settings: {
      server_name: "String",
      port: 1,
      database_name: "String",
      ssl_mode: "none", # accepts none, require, verify-ca, verify-full
      certificate_arn: "String",
    },
    my_sql_settings: {
      server_name: "String",
      port: 1,
      ssl_mode: "none", # accepts none, require, verify-ca, verify-full
      certificate_arn: "String",
    },
    oracle_settings: {
      server_name: "String",
      port: 1,
      database_name: "String",
      ssl_mode: "none", # accepts none, require, verify-ca, verify-full
      certificate_arn: "String",
      asm_server: "String",
      secrets_manager_oracle_asm_secret_id: "String",
      secrets_manager_oracle_asm_access_role_arn: "String",
      secrets_manager_security_db_encryption_secret_id: "String",
      secrets_manager_security_db_encryption_access_role_arn: "String",
    },
    microsoft_sql_server_settings: {
      server_name: "String",
      port: 1,
      database_name: "String",
      ssl_mode: "none", # accepts none, require, verify-ca, verify-full
      certificate_arn: "String",
    },
    doc_db_settings: {
      server_name: "String",
      port: 1,
      database_name: "String",
      ssl_mode: "none", # accepts none, require, verify-ca, verify-full
      certificate_arn: "String",
    },
    maria_db_settings: {
      server_name: "String",
      port: 1,
      ssl_mode: "none", # accepts none, require, verify-ca, verify-full
      certificate_arn: "String",
    },
    mongo_db_settings: {
      server_name: "String",
      port: 1,
      database_name: "String",
      ssl_mode: "none", # accepts none, require, verify-ca, verify-full
      certificate_arn: "String",
      auth_type: "no", # accepts no, password
      auth_source: "String",
      auth_mechanism: "default", # accepts default, mongodb_cr, scram_sha_1
    },
  },
  tags: [
    {
      key: "String",
      value: "String",
      resource_arn: "String",
    },
  ],
})

Response structure


resp.data_provider.data_provider_name #=> String
resp.data_provider.data_provider_arn #=> String
resp.data_provider.data_provider_creation_time #=> Time
resp.data_provider.description #=> String
resp.data_provider.engine #=> String
resp.data_provider.settings.redshift_settings.server_name #=> String
resp.data_provider.settings.redshift_settings.port #=> Integer
resp.data_provider.settings.redshift_settings.database_name #=> String
resp.data_provider.settings.postgre_sql_settings.server_name #=> String
resp.data_provider.settings.postgre_sql_settings.port #=> Integer
resp.data_provider.settings.postgre_sql_settings.database_name #=> String
resp.data_provider.settings.postgre_sql_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.postgre_sql_settings.certificate_arn #=> String
resp.data_provider.settings.my_sql_settings.server_name #=> String
resp.data_provider.settings.my_sql_settings.port #=> Integer
resp.data_provider.settings.my_sql_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.my_sql_settings.certificate_arn #=> String
resp.data_provider.settings.oracle_settings.server_name #=> String
resp.data_provider.settings.oracle_settings.port #=> Integer
resp.data_provider.settings.oracle_settings.database_name #=> String
resp.data_provider.settings.oracle_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.oracle_settings.certificate_arn #=> String
resp.data_provider.settings.oracle_settings.asm_server #=> String
resp.data_provider.settings.oracle_settings.secrets_manager_oracle_asm_secret_id #=> String
resp.data_provider.settings.oracle_settings.secrets_manager_oracle_asm_access_role_arn #=> String
resp.data_provider.settings.oracle_settings.secrets_manager_security_db_encryption_secret_id #=> String
resp.data_provider.settings.oracle_settings.secrets_manager_security_db_encryption_access_role_arn #=> String
resp.data_provider.settings.microsoft_sql_server_settings.server_name #=> String
resp.data_provider.settings.microsoft_sql_server_settings.port #=> Integer
resp.data_provider.settings.microsoft_sql_server_settings.database_name #=> String
resp.data_provider.settings.microsoft_sql_server_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.microsoft_sql_server_settings.certificate_arn #=> String
resp.data_provider.settings.doc_db_settings.server_name #=> String
resp.data_provider.settings.doc_db_settings.port #=> Integer
resp.data_provider.settings.doc_db_settings.database_name #=> String
resp.data_provider.settings.doc_db_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.doc_db_settings.certificate_arn #=> String
resp.data_provider.settings.maria_db_settings.server_name #=> String
resp.data_provider.settings.maria_db_settings.port #=> Integer
resp.data_provider.settings.maria_db_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.maria_db_settings.certificate_arn #=> String
resp.data_provider.settings.mongo_db_settings.server_name #=> String
resp.data_provider.settings.mongo_db_settings.port #=> Integer
resp.data_provider.settings.mongo_db_settings.database_name #=> String
resp.data_provider.settings.mongo_db_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.mongo_db_settings.certificate_arn #=> String
resp.data_provider.settings.mongo_db_settings.auth_type #=> String, one of "no", "password"
resp.data_provider.settings.mongo_db_settings.auth_source #=> String
resp.data_provider.settings.mongo_db_settings.auth_mechanism #=> String, one of "default", "mongodb_cr", "scram_sha_1"

Parameters:

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

    ({})

Options Hash (params):

  • :data_provider_name (String)

    A user-friendly name for the data provider.

  • :description (String)

    A user-friendly description of the data provider.

  • :engine (required, String)

    The type of database engine for the data provider. Valid values include ‘“aurora”`, `“aurora-postgresql”`, `“mysql”`, `“oracle”`, `“postgres”`, `“sqlserver”`, `redshift`, `mariadb`, `mongodb`, and `docdb`. A value of `“aurora”` represents Amazon Aurora MySQL-Compatible Edition.

  • :settings (required, Types::DataProviderSettings)

    The settings in JSON format for a data provider.

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

    One or more tags to be assigned to the data provider.

Returns:

See Also:



849
850
851
852
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 849

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

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

Creates an endpoint using the provided settings.

<note markdown=“1”> For a MySQL source or target endpoint, don’t explicitly specify the database using the ‘DatabaseName` request parameter on the `CreateEndpoint` API call. Specifying `DatabaseName` when you create a MySQL endpoint replicates all the task tables to this single database. For MySQL endpoints, you specify the database only when you specify the schema in the table-mapping rules of the DMS task.

</note>

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",
      resource_arn: "String",
    },
  ],
  certificate_arn: "String",
  ssl_mode: "none", # accepts none, require, verify-ca, verify-full
  service_access_role_arn: "String",
  external_table_definition: "String",
  dynamo_db_settings: {
    service_access_role_arn: "String", # required
  },
  s3_settings: {
    service_access_role_arn: "String",
    external_table_definition: "String",
    csv_row_delimiter: "String",
    csv_delimiter: "String",
    bucket_folder: "String",
    bucket_name: "String",
    compression_type: "none", # accepts none, gzip
    encryption_mode: "sse-s3", # accepts sse-s3, sse-kms
    server_side_encryption_kms_key_id: "String",
    data_format: "csv", # accepts csv, parquet
    encoding_type: "plain", # accepts plain, plain-dictionary, rle-dictionary
    dict_page_size_limit: 1,
    row_group_length: 1,
    data_page_size: 1,
    parquet_version: "parquet-1-0", # accepts parquet-1-0, parquet-2-0
    enable_statistics: false,
    include_op_for_full_load: false,
    cdc_inserts_only: false,
    timestamp_column_name: "String",
    parquet_timestamp_in_millisecond: false,
    cdc_inserts_and_updates: false,
    date_partition_enabled: false,
    date_partition_sequence: "YYYYMMDD", # accepts YYYYMMDD, YYYYMMDDHH, YYYYMM, MMYYYYDD, DDMMYYYY
    date_partition_delimiter: "SLASH", # accepts SLASH, UNDERSCORE, DASH, NONE
    use_csv_no_sup_value: false,
    csv_no_sup_value: "String",
    preserve_transactions: false,
    cdc_path: "String",
    use_task_start_time_for_full_load_timestamp: false,
    canned_acl_for_objects: "none", # accepts none, private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
    add_column_name: false,
    cdc_max_batch_interval: 1,
    cdc_min_file_size: 1,
    csv_null_value: "String",
    ignore_header_rows: 1,
    max_file_size: 1,
    rfc_4180: false,
    date_partition_timezone: "String",
    add_trailing_padding_character: false,
    expected_bucket_owner: "String",
    glue_catalog_generation: 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",
    secrets_manager_access_role_arn: "String",
    secrets_manager_secret_id: "String",
    use_update_look_up: false,
    replicate_shard_collections: false,
  },
  kinesis_settings: {
    stream_arn: "String",
    message_format: "json", # accepts json, json-unformatted
    service_access_role_arn: "String",
    include_transaction_details: false,
    include_partition_value: false,
    partition_include_schema_table: false,
    include_table_alter_operations: false,
    include_control_details: false,
    include_null_and_empty: false,
    no_hex_prefix: false,
  },
  kafka_settings: {
    broker: "String",
    topic: "String",
    message_format: "json", # accepts json, json-unformatted
    include_transaction_details: false,
    include_partition_value: false,
    partition_include_schema_table: false,
    include_table_alter_operations: false,
    include_control_details: false,
    message_max_bytes: 1,
    include_null_and_empty: false,
    security_protocol: "plaintext", # accepts plaintext, ssl-authentication, ssl-encryption, sasl-ssl
    ssl_client_certificate_arn: "String",
    ssl_client_key_arn: "String",
    ssl_client_key_password: "SecretString",
    ssl_ca_certificate_arn: "String",
    sasl_username: "String",
    sasl_password: "SecretString",
    no_hex_prefix: false,
    sasl_mechanism: "scram-sha-512", # accepts scram-sha-512, plain
    ssl_endpoint_identification_algorithm: "none", # accepts none, https
  },
  elasticsearch_settings: {
    service_access_role_arn: "String", # required
    endpoint_uri: "String", # required
    full_load_error_percentage: 1,
    error_retry_duration: 1,
    use_new_mapping_type: false,
  },
  neptune_settings: {
    service_access_role_arn: "String",
    s3_bucket_name: "String", # required
    s3_bucket_folder: "String", # required
    error_retry_duration: 1,
    max_file_size: 1,
    max_retry_count: 1,
    iam_auth_enabled: false,
  },
  redshift_settings: {
    accept_any_date: false,
    after_connect_script: "String",
    bucket_folder: "String",
    bucket_name: "String",
    case_sensitive_names: false,
    comp_update: false,
    connection_timeout: 1,
    database_name: "String",
    date_format: "String",
    empty_as_null: false,
    encryption_mode: "sse-s3", # accepts sse-s3, sse-kms
    explicit_ids: false,
    file_transfer_upload_streams: 1,
    load_timeout: 1,
    max_file_size: 1,
    password: "SecretString",
    port: 1,
    remove_quotes: false,
    replace_invalid_chars: "String",
    replace_chars: "String",
    server_name: "String",
    service_access_role_arn: "String",
    server_side_encryption_kms_key_id: "String",
    time_format: "String",
    trim_blanks: false,
    truncate_columns: false,
    username: "String",
    write_buffer_size: 1,
    secrets_manager_access_role_arn: "String",
    secrets_manager_secret_id: "String",
    map_boolean_as_boolean: false,
  },
  postgre_sql_settings: {
    after_connect_script: "String",
    capture_ddls: false,
    max_file_size: 1,
    database_name: "String",
    ddl_artifacts_schema: "String",
    execute_timeout: 1,
    fail_tasks_on_lob_truncation: false,
    heartbeat_enable: false,
    heartbeat_schema: "String",
    heartbeat_frequency: 1,
    password: "SecretString",
    port: 1,
    server_name: "String",
    username: "String",
    slot_name: "String",
    plugin_name: "no-preference", # accepts no-preference, test-decoding, pglogical
    secrets_manager_access_role_arn: "String",
    secrets_manager_secret_id: "String",
    trim_space_in_char: false,
    map_boolean_as_boolean: false,
    map_jsonb_as_clob: false,
    map_long_varchar_as: "wstring", # accepts wstring, clob, nclob
    database_mode: "default", # accepts default, babelfish
    babelfish_database_name: "String",
  },
  my_sql_settings: {
    after_connect_script: "String",
    clean_source_metadata_on_mismatch: false,
    database_name: "String",
    events_poll_interval: 1,
    target_db_type: "specific-database", # accepts specific-database, multiple-databases
    max_file_size: 1,
    parallel_load_threads: 1,
    password: "SecretString",
    port: 1,
    server_name: "String",
    server_timezone: "String",
    username: "String",
    secrets_manager_access_role_arn: "String",
    secrets_manager_secret_id: "String",
    execute_timeout: 1,
  },
  oracle_settings: {
    add_supplemental_logging: false,
    archived_log_dest_id: 1,
    additional_archived_log_dest_id: 1,
    extra_archived_log_dest_ids: [1],
    allow_select_nested_tables: false,
    parallel_asm_read_threads: 1,
    read_ahead_blocks: 1,
    access_alternate_directly: false,
    use_alternate_folder_for_online: false,
    oracle_path_prefix: "String",
    use_path_prefix: "String",
    replace_path_prefix: false,
    enable_homogenous_tablespace: false,
    direct_path_no_log: false,
    archived_logs_only: false,
    asm_password: "SecretString",
    asm_server: "String",
    asm_user: "String",
    char_length_semantics: "default", # accepts default, char, byte
    database_name: "String",
    direct_path_parallel_load: false,
    fail_tasks_on_lob_truncation: false,
    number_datatype_scale: 1,
    password: "SecretString",
    port: 1,
    read_table_space_name: false,
    retry_interval: 1,
    security_db_encryption: "SecretString",
    security_db_encryption_name: "String",
    server_name: "String",
    spatial_data_option_to_geo_json_function_name: "String",
    standby_delay_time: 1,
    username: "String",
    use_b_file: false,
    use_direct_path_full_load: false,
    use_logminer_reader: false,
    secrets_manager_access_role_arn: "String",
    secrets_manager_secret_id: "String",
    secrets_manager_oracle_asm_access_role_arn: "String",
    secrets_manager_oracle_asm_secret_id: "String",
    trim_space_in_char: false,
    convert_timestamp_with_zone_to_utc: false,
    open_transaction_window: 1,
  },
  sybase_settings: {
    database_name: "String",
    password: "SecretString",
    port: 1,
    server_name: "String",
    username: "String",
    secrets_manager_access_role_arn: "String",
    secrets_manager_secret_id: "String",
  },
  microsoft_sql_server_settings: {
    port: 1,
    bcp_packet_size: 1,
    database_name: "String",
    control_tables_file_group: "String",
    password: "SecretString",
    query_single_always_on_node: false,
    read_backup_only: false,
    safeguard_policy: "rely-on-sql-server-replication-agent", # accepts rely-on-sql-server-replication-agent, exclusive-automatic-truncation, shared-automatic-truncation
    server_name: "String",
    username: "String",
    use_bcp_full_load: false,
    use_third_party_backup_device: false,
    secrets_manager_access_role_arn: "String",
    secrets_manager_secret_id: "String",
    trim_space_in_char: false,
    tlog_access_mode: "BackupOnly", # accepts BackupOnly, PreferBackup, PreferTlog, TlogOnly
    force_lob_lookup: false,
  },
  ibm_db_2_settings: {
    database_name: "String",
    password: "SecretString",
    port: 1,
    server_name: "String",
    set_data_capture_changes: false,
    current_lsn: "String",
    max_k_bytes_per_read: 1,
    username: "String",
    secrets_manager_access_role_arn: "String",
    secrets_manager_secret_id: "String",
    load_timeout: 1,
    write_buffer_size: 1,
    max_file_size: 1,
    keep_csv_files: false,
  },
  resource_identifier: "String",
  doc_db_settings: {
    username: "String",
    password: "SecretString",
    server_name: "String",
    port: 1,
    database_name: "String",
    nesting_level: "none", # accepts none, one
    extract_doc_id: false,
    docs_to_investigate: 1,
    kms_key_id: "String",
    secrets_manager_access_role_arn: "String",
    secrets_manager_secret_id: "String",
    use_update_look_up: false,
    replicate_shard_collections: false,
  },
  redis_settings: {
    server_name: "String", # required
    port: 1, # required
    ssl_security_protocol: "plaintext", # accepts plaintext, ssl-encryption
    auth_type: "none", # accepts none, auth-role, auth-token
    auth_user_name: "String",
    auth_password: "SecretString",
    ssl_ca_certificate_arn: "String",
  },
  gcp_my_sql_settings: {
    after_connect_script: "String",
    clean_source_metadata_on_mismatch: false,
    database_name: "String",
    events_poll_interval: 1,
    target_db_type: "specific-database", # accepts specific-database, multiple-databases
    max_file_size: 1,
    parallel_load_threads: 1,
    password: "SecretString",
    port: 1,
    server_name: "String",
    server_timezone: "String",
    username: "String",
    secrets_manager_access_role_arn: "String",
    secrets_manager_secret_id: "String",
  },
  timestream_settings: {
    database_name: "String", # required
    memory_duration: 1, # required
    magnetic_duration: 1, # required
    cdc_inserts_and_updates: false,
    enable_magnetic_store_writes: false,
  },
})

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.s3_settings.date_partition_enabled #=> Boolean
resp.endpoint.s3_settings.date_partition_sequence #=> String, one of "YYYYMMDD", "YYYYMMDDHH", "YYYYMM", "MMYYYYDD", "DDMMYYYY"
resp.endpoint.s3_settings.date_partition_delimiter #=> String, one of "SLASH", "UNDERSCORE", "DASH", "NONE"
resp.endpoint.s3_settings.use_csv_no_sup_value #=> Boolean
resp.endpoint.s3_settings.csv_no_sup_value #=> String
resp.endpoint.s3_settings.preserve_transactions #=> Boolean
resp.endpoint.s3_settings.cdc_path #=> String
resp.endpoint.s3_settings.use_task_start_time_for_full_load_timestamp #=> Boolean
resp.endpoint.s3_settings.canned_acl_for_objects #=> String, one of "none", "private", "public-read", "public-read-write", "authenticated-read", "aws-exec-read", "bucket-owner-read", "bucket-owner-full-control"
resp.endpoint.s3_settings.add_column_name #=> Boolean
resp.endpoint.s3_settings.cdc_max_batch_interval #=> Integer
resp.endpoint.s3_settings.cdc_min_file_size #=> Integer
resp.endpoint.s3_settings.csv_null_value #=> String
resp.endpoint.s3_settings.ignore_header_rows #=> Integer
resp.endpoint.s3_settings.max_file_size #=> Integer
resp.endpoint.s3_settings.rfc_4180 #=> Boolean
resp.endpoint.s3_settings.date_partition_timezone #=> String
resp.endpoint.s3_settings.add_trailing_padding_character #=> Boolean
resp.endpoint.s3_settings.expected_bucket_owner #=> String
resp.endpoint.s3_settings.glue_catalog_generation #=> 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.mongo_db_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.mongo_db_settings.secrets_manager_secret_id #=> String
resp.endpoint.mongo_db_settings.use_update_look_up #=> Boolean
resp.endpoint.mongo_db_settings.replicate_shard_collections #=> Boolean
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.kinesis_settings.include_null_and_empty #=> Boolean
resp.endpoint.kinesis_settings.no_hex_prefix #=> Boolean
resp.endpoint.kafka_settings.broker #=> String
resp.endpoint.kafka_settings.topic #=> String
resp.endpoint.kafka_settings.message_format #=> String, one of "json", "json-unformatted"
resp.endpoint.kafka_settings.include_transaction_details #=> Boolean
resp.endpoint.kafka_settings.include_partition_value #=> Boolean
resp.endpoint.kafka_settings.partition_include_schema_table #=> Boolean
resp.endpoint.kafka_settings.include_table_alter_operations #=> Boolean
resp.endpoint.kafka_settings.include_control_details #=> Boolean
resp.endpoint.kafka_settings.message_max_bytes #=> Integer
resp.endpoint.kafka_settings.include_null_and_empty #=> Boolean
resp.endpoint.kafka_settings.security_protocol #=> String, one of "plaintext", "ssl-authentication", "ssl-encryption", "sasl-ssl"
resp.endpoint.kafka_settings.ssl_client_certificate_arn #=> String
resp.endpoint.kafka_settings.ssl_client_key_arn #=> String
resp.endpoint.kafka_settings.ssl_client_key_password #=> String
resp.endpoint.kafka_settings.ssl_ca_certificate_arn #=> String
resp.endpoint.kafka_settings.sasl_username #=> String
resp.endpoint.kafka_settings.sasl_password #=> String
resp.endpoint.kafka_settings.no_hex_prefix #=> Boolean
resp.endpoint.kafka_settings.sasl_mechanism #=> String, one of "scram-sha-512", "plain"
resp.endpoint.kafka_settings.ssl_endpoint_identification_algorithm #=> String, one of "none", "https"
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.elasticsearch_settings.use_new_mapping_type #=> Boolean
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.case_sensitive_names #=> Boolean
resp.endpoint.redshift_settings.comp_update #=> Boolean
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.explicit_ids #=> Boolean
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
resp.endpoint.redshift_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.redshift_settings.secrets_manager_secret_id #=> String
resp.endpoint.redshift_settings.map_boolean_as_boolean #=> Boolean
resp.endpoint.postgre_sql_settings.after_connect_script #=> String
resp.endpoint.postgre_sql_settings.capture_ddls #=> Boolean
resp.endpoint.postgre_sql_settings.max_file_size #=> Integer
resp.endpoint.postgre_sql_settings.database_name #=> String
resp.endpoint.postgre_sql_settings.ddl_artifacts_schema #=> String
resp.endpoint.postgre_sql_settings.execute_timeout #=> Integer
resp.endpoint.postgre_sql_settings.fail_tasks_on_lob_truncation #=> Boolean
resp.endpoint.postgre_sql_settings.heartbeat_enable #=> Boolean
resp.endpoint.postgre_sql_settings.heartbeat_schema #=> String
resp.endpoint.postgre_sql_settings.heartbeat_frequency #=> Integer
resp.endpoint.postgre_sql_settings.password #=> String
resp.endpoint.postgre_sql_settings.port #=> Integer
resp.endpoint.postgre_sql_settings.server_name #=> String
resp.endpoint.postgre_sql_settings.username #=> String
resp.endpoint.postgre_sql_settings.slot_name #=> String
resp.endpoint.postgre_sql_settings.plugin_name #=> String, one of "no-preference", "test-decoding", "pglogical"
resp.endpoint.postgre_sql_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.postgre_sql_settings.secrets_manager_secret_id #=> String
resp.endpoint.postgre_sql_settings.trim_space_in_char #=> Boolean
resp.endpoint.postgre_sql_settings.map_boolean_as_boolean #=> Boolean
resp.endpoint.postgre_sql_settings.map_jsonb_as_clob #=> Boolean
resp.endpoint.postgre_sql_settings.map_long_varchar_as #=> String, one of "wstring", "clob", "nclob"
resp.endpoint.postgre_sql_settings.database_mode #=> String, one of "default", "babelfish"
resp.endpoint.postgre_sql_settings.babelfish_database_name #=> String
resp.endpoint.my_sql_settings.after_connect_script #=> String
resp.endpoint.my_sql_settings. #=> Boolean
resp.endpoint.my_sql_settings.database_name #=> String
resp.endpoint.my_sql_settings.events_poll_interval #=> Integer
resp.endpoint.my_sql_settings.target_db_type #=> String, one of "specific-database", "multiple-databases"
resp.endpoint.my_sql_settings.max_file_size #=> Integer
resp.endpoint.my_sql_settings.parallel_load_threads #=> Integer
resp.endpoint.my_sql_settings.password #=> String
resp.endpoint.my_sql_settings.port #=> Integer
resp.endpoint.my_sql_settings.server_name #=> String
resp.endpoint.my_sql_settings.server_timezone #=> String
resp.endpoint.my_sql_settings.username #=> String
resp.endpoint.my_sql_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.my_sql_settings.secrets_manager_secret_id #=> String
resp.endpoint.my_sql_settings.execute_timeout #=> Integer
resp.endpoint.oracle_settings.add_supplemental_logging #=> Boolean
resp.endpoint.oracle_settings.archived_log_dest_id #=> Integer
resp.endpoint.oracle_settings.additional_archived_log_dest_id #=> Integer
resp.endpoint.oracle_settings.extra_archived_log_dest_ids #=> Array
resp.endpoint.oracle_settings.extra_archived_log_dest_ids[0] #=> Integer
resp.endpoint.oracle_settings.allow_select_nested_tables #=> Boolean
resp.endpoint.oracle_settings.parallel_asm_read_threads #=> Integer
resp.endpoint.oracle_settings.read_ahead_blocks #=> Integer
resp.endpoint.oracle_settings.access_alternate_directly #=> Boolean
resp.endpoint.oracle_settings.use_alternate_folder_for_online #=> Boolean
resp.endpoint.oracle_settings.oracle_path_prefix #=> String
resp.endpoint.oracle_settings.use_path_prefix #=> String
resp.endpoint.oracle_settings.replace_path_prefix #=> Boolean
resp.endpoint.oracle_settings.enable_homogenous_tablespace #=> Boolean
resp.endpoint.oracle_settings.direct_path_no_log #=> Boolean
resp.endpoint.oracle_settings.archived_logs_only #=> Boolean
resp.endpoint.oracle_settings.asm_password #=> String
resp.endpoint.oracle_settings.asm_server #=> String
resp.endpoint.oracle_settings.asm_user #=> String
resp.endpoint.oracle_settings.char_length_semantics #=> String, one of "default", "char", "byte"
resp.endpoint.oracle_settings.database_name #=> String
resp.endpoint.oracle_settings.direct_path_parallel_load #=> Boolean
resp.endpoint.oracle_settings.fail_tasks_on_lob_truncation #=> Boolean
resp.endpoint.oracle_settings.number_datatype_scale #=> Integer
resp.endpoint.oracle_settings.password #=> String
resp.endpoint.oracle_settings.port #=> Integer
resp.endpoint.oracle_settings.read_table_space_name #=> Boolean
resp.endpoint.oracle_settings.retry_interval #=> Integer
resp.endpoint.oracle_settings.security_db_encryption #=> String
resp.endpoint.oracle_settings.security_db_encryption_name #=> String
resp.endpoint.oracle_settings.server_name #=> String
resp.endpoint.oracle_settings.spatial_data_option_to_geo_json_function_name #=> String
resp.endpoint.oracle_settings.standby_delay_time #=> Integer
resp.endpoint.oracle_settings.username #=> String
resp.endpoint.oracle_settings.use_b_file #=> Boolean
resp.endpoint.oracle_settings.use_direct_path_full_load #=> Boolean
resp.endpoint.oracle_settings.use_logminer_reader #=> Boolean
resp.endpoint.oracle_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.oracle_settings.secrets_manager_secret_id #=> String
resp.endpoint.oracle_settings.secrets_manager_oracle_asm_access_role_arn #=> String
resp.endpoint.oracle_settings.secrets_manager_oracle_asm_secret_id #=> String
resp.endpoint.oracle_settings.trim_space_in_char #=> Boolean
resp.endpoint.oracle_settings.convert_timestamp_with_zone_to_utc #=> Boolean
resp.endpoint.oracle_settings.open_transaction_window #=> Integer
resp.endpoint.sybase_settings.database_name #=> String
resp.endpoint.sybase_settings.password #=> String
resp.endpoint.sybase_settings.port #=> Integer
resp.endpoint.sybase_settings.server_name #=> String
resp.endpoint.sybase_settings.username #=> String
resp.endpoint.sybase_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.sybase_settings.secrets_manager_secret_id #=> String
resp.endpoint.microsoft_sql_server_settings.port #=> Integer
resp.endpoint.microsoft_sql_server_settings.bcp_packet_size #=> Integer
resp.endpoint.microsoft_sql_server_settings.database_name #=> String
resp.endpoint.microsoft_sql_server_settings.control_tables_file_group #=> String
resp.endpoint.microsoft_sql_server_settings.password #=> String
resp.endpoint.microsoft_sql_server_settings.query_single_always_on_node #=> Boolean
resp.endpoint.microsoft_sql_server_settings.read_backup_only #=> Boolean
resp.endpoint.microsoft_sql_server_settings.safeguard_policy #=> String, one of "rely-on-sql-server-replication-agent", "exclusive-automatic-truncation", "shared-automatic-truncation"
resp.endpoint.microsoft_sql_server_settings.server_name #=> String
resp.endpoint.microsoft_sql_server_settings.username #=> String
resp.endpoint.microsoft_sql_server_settings.use_bcp_full_load #=> Boolean
resp.endpoint.microsoft_sql_server_settings.use_third_party_backup_device #=> Boolean
resp.endpoint.microsoft_sql_server_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.microsoft_sql_server_settings.secrets_manager_secret_id #=> String
resp.endpoint.microsoft_sql_server_settings.trim_space_in_char #=> Boolean
resp.endpoint.microsoft_sql_server_settings.tlog_access_mode #=> String, one of "BackupOnly", "PreferBackup", "PreferTlog", "TlogOnly"
resp.endpoint.microsoft_sql_server_settings.force_lob_lookup #=> Boolean
resp.endpoint.ibm_db_2_settings.database_name #=> String
resp.endpoint.ibm_db_2_settings.password #=> String
resp.endpoint.ibm_db_2_settings.port #=> Integer
resp.endpoint.ibm_db_2_settings.server_name #=> String
resp.endpoint.ibm_db_2_settings.set_data_capture_changes #=> Boolean
resp.endpoint.ibm_db_2_settings.current_lsn #=> String
resp.endpoint.ibm_db_2_settings.max_k_bytes_per_read #=> Integer
resp.endpoint.ibm_db_2_settings.username #=> String
resp.endpoint.ibm_db_2_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.ibm_db_2_settings.secrets_manager_secret_id #=> String
resp.endpoint.ibm_db_2_settings.load_timeout #=> Integer
resp.endpoint.ibm_db_2_settings.write_buffer_size #=> Integer
resp.endpoint.ibm_db_2_settings.max_file_size #=> Integer
resp.endpoint.ibm_db_2_settings.keep_csv_files #=> Boolean
resp.endpoint.doc_db_settings.username #=> String
resp.endpoint.doc_db_settings.password #=> String
resp.endpoint.doc_db_settings.server_name #=> String
resp.endpoint.doc_db_settings.port #=> Integer
resp.endpoint.doc_db_settings.database_name #=> String
resp.endpoint.doc_db_settings.nesting_level #=> String, one of "none", "one"
resp.endpoint.doc_db_settings.extract_doc_id #=> Boolean
resp.endpoint.doc_db_settings.docs_to_investigate #=> Integer
resp.endpoint.doc_db_settings.kms_key_id #=> String
resp.endpoint.doc_db_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.doc_db_settings.secrets_manager_secret_id #=> String
resp.endpoint.doc_db_settings.use_update_look_up #=> Boolean
resp.endpoint.doc_db_settings.replicate_shard_collections #=> Boolean
resp.endpoint.redis_settings.server_name #=> String
resp.endpoint.redis_settings.port #=> Integer
resp.endpoint.redis_settings.ssl_security_protocol #=> String, one of "plaintext", "ssl-encryption"
resp.endpoint.redis_settings.auth_type #=> String, one of "none", "auth-role", "auth-token"
resp.endpoint.redis_settings.auth_user_name #=> String
resp.endpoint.redis_settings.auth_password #=> String
resp.endpoint.redis_settings.ssl_ca_certificate_arn #=> String
resp.endpoint.gcp_my_sql_settings.after_connect_script #=> String
resp.endpoint.gcp_my_sql_settings. #=> Boolean
resp.endpoint.gcp_my_sql_settings.database_name #=> String
resp.endpoint.gcp_my_sql_settings.events_poll_interval #=> Integer
resp.endpoint.gcp_my_sql_settings.target_db_type #=> String, one of "specific-database", "multiple-databases"
resp.endpoint.gcp_my_sql_settings.max_file_size #=> Integer
resp.endpoint.gcp_my_sql_settings.parallel_load_threads #=> Integer
resp.endpoint.gcp_my_sql_settings.password #=> String
resp.endpoint.gcp_my_sql_settings.port #=> Integer
resp.endpoint.gcp_my_sql_settings.server_name #=> String
resp.endpoint.gcp_my_sql_settings.server_timezone #=> String
resp.endpoint.gcp_my_sql_settings.username #=> String
resp.endpoint.gcp_my_sql_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.gcp_my_sql_settings.secrets_manager_secret_id #=> String
resp.endpoint.timestream_settings.database_name #=> String
resp.endpoint.timestream_settings.memory_duration #=> Integer
resp.endpoint.timestream_settings.magnetic_duration #=> Integer
resp.endpoint.timestream_settings.cdc_inserts_and_updates #=> Boolean
resp.endpoint.timestream_settings.enable_magnetic_store_writes #=> Boolean

Parameters:

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

    ({})

Options Hash (params):

Returns:

See Also:



1843
1844
1845
1846
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 1843

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

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

Creates an DMS event notification subscription.

You can specify the type of source (‘SourceType`) you want to be notified of, provide a list of 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 DMS sources. If you don’t specify either ‘SourceType` nor `SourceIdentifier`, you will be notified of events generated from all DMS sources belonging to your customer account.

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

[1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Events.html

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",
      resource_arn: "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 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 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 *Database Migration Service User Guide.*

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Events.html

  • :source_ids (Array<String>)

    A list of identifiers for which 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:



1953
1954
1955
1956
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 1953

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

#create_fleet_advisor_collector(params = {}) ⇒ Types::CreateFleetAdvisorCollectorResponse

Creates a Fleet Advisor collector using the specified parameters.

Examples:

Request syntax with placeholder values


resp = client.create_fleet_advisor_collector({
  collector_name: "String", # required
  description: "String",
  service_access_role_arn: "String", # required
  s3_bucket_name: "String", # required
})

Response structure


resp.collector_referenced_id #=> String
resp.collector_name #=> String
resp.description #=> String
resp.service_access_role_arn #=> String
resp.s3_bucket_name #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :collector_name (required, String)

    The name of your Fleet Advisor collector (for example, ‘sample-collector`).

  • :description (String)

    A summary description of your Fleet Advisor collector.

  • :service_access_role_arn (required, String)

    The IAM role that grants permissions to access the specified Amazon S3 bucket.

  • :s3_bucket_name (required, String)

    The Amazon S3 bucket that the Fleet Advisor collector uses to store inventory metadata.

Returns:

See Also:



2004
2005
2006
2007
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 2004

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

#create_instance_profile(params = {}) ⇒ Types::CreateInstanceProfileResponse

Creates the instance profile using the specified parameters.

Examples:

Request syntax with placeholder values


resp = client.create_instance_profile({
  availability_zone: "String",
  kms_key_arn: "String",
  publicly_accessible: false,
  tags: [
    {
      key: "String",
      value: "String",
      resource_arn: "String",
    },
  ],
  network_type: "String",
  instance_profile_name: "String",
  description: "String",
  subnet_group_identifier: "String",
  vpc_security_groups: ["String"],
})

Response structure


resp.instance_profile.instance_profile_arn #=> String
resp.instance_profile.availability_zone #=> String
resp.instance_profile.kms_key_arn #=> String
resp.instance_profile.publicly_accessible #=> Boolean
resp.instance_profile.network_type #=> String
resp.instance_profile.instance_profile_name #=> String
resp.instance_profile.description #=> String
resp.instance_profile.instance_profile_creation_time #=> Time
resp.instance_profile.subnet_group_identifier #=> String
resp.instance_profile.vpc_security_groups #=> Array
resp.instance_profile.vpc_security_groups[0] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :availability_zone (String)

    The Availability Zone where the instance profile will be created. The default value is a random, system-chosen Availability Zone in the Amazon Web Services Region where your data provider is created, for examplem ‘us-east-1d`.

  • :kms_key_arn (String)

    The Amazon Resource Name (ARN) of the KMS key that is used to encrypt the connection parameters for the instance profile.

    If you don’t specify a value for the ‘KmsKeyArn` parameter, then DMS uses your default encryption key.

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

  • :publicly_accessible (Boolean)

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

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

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

  • :network_type (String)

    Specifies the network type for the instance profile. A value of ‘IPV4` represents an instance profile with IPv4 network type and only supports IPv4 addressing. A value of `IPV6` represents an instance profile with IPv6 network type and only supports IPv6 addressing. A value of `DUAL` represents an instance profile with dual network type that supports IPv4 and IPv6 addressing.

  • :instance_profile_name (String)

    A user-friendly name for the instance profile.

  • :description (String)

    A user-friendly description of the instance profile.

  • :subnet_group_identifier (String)

    A subnet group to associate with the instance profile.

  • :vpc_security_groups (Array<String>)

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

Returns:

See Also:



2101
2102
2103
2104
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 2101

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

#create_migration_project(params = {}) ⇒ Types::CreateMigrationProjectResponse

Creates the migration project using the specified parameters.

You can run this action only after you create an instance profile and data providers using [CreateInstanceProfile] and [CreateDataProvider].

[1]: docs.aws.amazon.com/dms/latest/APIReference/API_CreateInstanceProfile.html [2]: docs.aws.amazon.com/dms/latest/APIReference/API_CreateDataProvider.html

Examples:

Example: Create Migration Project


# Creates the migration project with the specified parameters.

resp = client.create_migration_project({
  description: "description", 
  instance_profile_identifier: "ip-au-17", 
  migration_project_name: "my-migration-project", 
  schema_conversion_application_attributes: {
    s3_bucket_path: "arn:aws:s3:::mylogin-bucket", 
    s3_bucket_role_arn: "arn:aws:iam::012345678901:role/Admin", 
  }, 
  source_data_provider_descriptors: [
    {
      data_provider_identifier: "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", 
      secrets_manager_access_role_arn: "arn:aws:iam::012345678901:role/myuser-admin-access", 
      secrets_manager_secret_id: "arn:aws:secretsmanager:us-east-1:012345678901:secret:myorg/example1/ALL.SOURCE.ORACLE_12-A1B2C3", 
    }, 
  ], 
  tags: [
    {
      key: "access", 
      value: "authorizedusers", 
    }, 
  ], 
  target_data_provider_descriptors: [
    {
      data_provider_identifier: "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", 
      secrets_manager_access_role_arn: "arn:aws:iam::012345678901:role/myuser-admin-access", 
      secrets_manager_secret_id: "arn:aws:secretsmanager:us-east-1:012345678901:secret:myorg/example1/TARGET.postgresql-A1B2C3", 
    }, 
  ], 
  transformation_rules: "{\"key0\":\"value0\",\"key1\":\"value1\",\"key2\":\"value2\"}", 
})

resp.to_h outputs the following:
{
  migration_project: {
    instance_profile_arn: "arn:aws:dms:us-east-1:012345678901:instance-profile:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", 
    instance_profile_name: "my-instance-profile", 
    migration_project_arn: "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", 
    migration_project_creation_time: Time.parse("2023-04-19T11:45:15.805253Z"), 
    migration_project_name: "my-migration-project", 
    schema_conversion_application_attributes: {
      s3_bucket_path: "my-s3-bucket/my_folder", 
      s3_bucket_role_arn: "arn:aws:iam::012345678901:role/my-s3role", 
    }, 
    source_data_provider_descriptors: [
      {
        data_provider_arn: "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", 
        data_provider_name: "source-oracle-12", 
        secrets_manager_access_role_arn: "arn:aws:iam::012345678901:role/my-access-role", 
        secrets_manager_secret_id: "arn:aws:secretsmanager:us-east-1:012345678901:secret:myuser/ALL.SOURCE.ORACLE_12-0123456", 
      }, 
    ], 
    target_data_provider_descriptors: [
      {
        data_provider_arn: "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", 
        data_provider_name: "target-dataprovider-3", 
        secrets_manager_access_role_arn: "arn:aws:iam::012345678901:role/dmytbon-admin-access", 
        secrets_manager_secret_id: "arn:aws:secretsmanager:us-east-1:012345678901:secret:myuser/TARGET.postgresql-0123456", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.create_migration_project({
  migration_project_name: "String",
  source_data_provider_descriptors: [ # required
    {
      data_provider_identifier: "String", # required
      secrets_manager_secret_id: "String",
      secrets_manager_access_role_arn: "String",
    },
  ],
  target_data_provider_descriptors: [ # required
    {
      data_provider_identifier: "String", # required
      secrets_manager_secret_id: "String",
      secrets_manager_access_role_arn: "String",
    },
  ],
  instance_profile_identifier: "String", # required
  transformation_rules: "String",
  description: "String",
  tags: [
    {
      key: "String",
      value: "String",
      resource_arn: "String",
    },
  ],
  schema_conversion_application_attributes: {
    s3_bucket_path: "String",
    s3_bucket_role_arn: "String",
  },
})

Response structure


resp.migration_project.migration_project_name #=> String
resp.migration_project.migration_project_arn #=> String
resp.migration_project.migration_project_creation_time #=> Time
resp.migration_project.source_data_provider_descriptors #=> Array
resp.migration_project.source_data_provider_descriptors[0].secrets_manager_secret_id #=> String
resp.migration_project.source_data_provider_descriptors[0].secrets_manager_access_role_arn #=> String
resp.migration_project.source_data_provider_descriptors[0].data_provider_name #=> String
resp.migration_project.source_data_provider_descriptors[0].data_provider_arn #=> String
resp.migration_project.target_data_provider_descriptors #=> Array
resp.migration_project.target_data_provider_descriptors[0].secrets_manager_secret_id #=> String
resp.migration_project.target_data_provider_descriptors[0].secrets_manager_access_role_arn #=> String
resp.migration_project.target_data_provider_descriptors[0].data_provider_name #=> String
resp.migration_project.target_data_provider_descriptors[0].data_provider_arn #=> String
resp.migration_project.instance_profile_arn #=> String
resp.migration_project.instance_profile_name #=> String
resp.migration_project.transformation_rules #=> String
resp.migration_project.description #=> String
resp.migration_project.schema_conversion_application_attributes.s3_bucket_path #=> String
resp.migration_project.schema_conversion_application_attributes.s3_bucket_role_arn #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :migration_project_name (String)

    A user-friendly name for the migration project.

  • :source_data_provider_descriptors (required, Array<Types::DataProviderDescriptorDefinition>)

    Information about the source data provider, including the name, ARN, and Secrets Manager parameters.

  • :target_data_provider_descriptors (required, Array<Types::DataProviderDescriptorDefinition>)

    Information about the target data provider, including the name, ARN, and Amazon Web Services Secrets Manager parameters.

  • :instance_profile_identifier (required, String)

    The identifier of the associated instance profile. 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.

  • :transformation_rules (String)

    The settings in JSON format for migration rules. Migration rules make it possible for you to change the object names according to the rules that you specify. For example, you can change an object name to lowercase or uppercase, add or remove a prefix or suffix, or rename objects.

  • :description (String)

    A user-friendly description of the migration project.

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

    One or more tags to be assigned to the migration project.

  • :schema_conversion_application_attributes (Types::SCApplicationAttributes)

    The schema conversion application attributes, including the Amazon S3 bucket name and Amazon S3 role ARN.

Returns:

See Also:



2282
2283
2284
2285
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 2282

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

#create_replication_config(params = {}) ⇒ Types::CreateReplicationConfigResponse

Creates a configuration that you can later provide to configure and start an DMS Serverless replication. You can also provide options to validate the configuration inputs before you start the replication.

Examples:

Request syntax with placeholder values


resp = client.create_replication_config({
  replication_config_identifier: "String", # required
  source_endpoint_arn: "String", # required
  target_endpoint_arn: "String", # required
  compute_config: { # required
    availability_zone: "String",
    dns_name_servers: "String",
    kms_key_id: "String",
    max_capacity_units: 1,
    min_capacity_units: 1,
    multi_az: false,
    preferred_maintenance_window: "String",
    replication_subnet_group_id: "String",
    vpc_security_group_ids: ["String"],
  },
  replication_type: "full-load", # required, accepts full-load, cdc, full-load-and-cdc
  table_mappings: "String", # required
  replication_settings: "String",
  supplemental_settings: "String",
  resource_identifier: "String",
  tags: [
    {
      key: "String",
      value: "String",
      resource_arn: "String",
    },
  ],
})

Response structure


resp.replication_config.replication_config_identifier #=> String
resp.replication_config.replication_config_arn #=> String
resp.replication_config.source_endpoint_arn #=> String
resp.replication_config.target_endpoint_arn #=> String
resp.replication_config.replication_type #=> String, one of "full-load", "cdc", "full-load-and-cdc"
resp.replication_config.compute_config.availability_zone #=> String
resp.replication_config.compute_config.dns_name_servers #=> String
resp.replication_config.compute_config.kms_key_id #=> String
resp.replication_config.compute_config.max_capacity_units #=> Integer
resp.replication_config.compute_config.min_capacity_units #=> Integer
resp.replication_config.compute_config.multi_az #=> Boolean
resp.replication_config.compute_config.preferred_maintenance_window #=> String
resp.replication_config.compute_config.replication_subnet_group_id #=> String
resp.replication_config.compute_config.vpc_security_group_ids #=> Array
resp.replication_config.compute_config.vpc_security_group_ids[0] #=> String
resp.replication_config.replication_settings #=> String
resp.replication_config.supplemental_settings #=> String
resp.replication_config.table_mappings #=> String
resp.replication_config.replication_config_create_time #=> Time
resp.replication_config.replication_config_update_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :replication_config_identifier (required, String)

    A unique identifier that you want to use to create a ‘ReplicationConfigArn` that is returned as part of the output from this action. You can then pass this output `ReplicationConfigArn` as the value of the `ReplicationConfigArn` option for other actions to identify both DMS Serverless replications and replication configurations that you want those actions to operate on. For some actions, you can also use either this unique identifier or a corresponding ARN in action filters to identify the specific replication and replication configuration to operate on.

  • :source_endpoint_arn (required, String)

    The Amazon Resource Name (ARN) of the source endpoint for this DMS Serverless replication configuration.

  • :target_endpoint_arn (required, String)

    The Amazon Resource Name (ARN) of the target endpoint for this DMS serverless replication configuration.

  • :compute_config (required, Types::ComputeConfig)

    Configuration parameters for provisioning an DMS Serverless replication.

  • :replication_type (required, String)

    The type of DMS Serverless replication to provision using this replication configuration.

    Possible values:

    • ‘“full-load”`

    • ‘“cdc”`

    • ‘“full-load-and-cdc”`

  • :table_mappings (required, String)

    JSON table mappings for DMS Serverless replications that are provisioned using this replication configuration. For more information, see [ Specifying table selection and transformations rules using JSON].

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.html

  • :replication_settings (String)

    Optional JSON settings for DMS Serverless replications that are provisioned using this replication configuration. For example, see [ Change processing tuning settings].

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.ChangeProcessingTuning.html

  • :supplemental_settings (String)

    Optional JSON settings for specifying supplemental data. For more information, see [ Specifying supplemental data for task settings].

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.TaskData.html

  • :resource_identifier (String)

    Optional unique value or name that you set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource. For more information, see [ Fine-grained access control using resource names and tags].

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#CHAP_Security.FineGrainedAccess

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

    One or more optional tags associated with resources used by the DMS Serverless replication. For more information, see [ Tagging resources in Database Migration Service].

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Tagging.html

Returns:

See Also:



2434
2435
2436
2437
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 2434

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

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

Creates the replication instance using the specified parameters.

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 CLI and DMS API]. For information on the required permissions, see [IAM Permissions Needed to Use DMS].

<note markdown=“1”> If you don’t specify a version when creating a replication instance, DMS will create the instance using the default engine version. For information about the default engine version, see [Release Notes].

</note>

[1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#CHAP_Security.APIRole [2]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#CHAP_Security.IAMPermissions [3]: docs.aws.amazon.com/dms/latest/userguide/CHAP_ReleaseNotes.html

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",
      resource_arn: "String",
    },
  ],
  kms_key_id: "String",
  publicly_accessible: false,
  dns_name_servers: "String",
  resource_identifier: "String",
  network_type: "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.replication_subnet_group.supported_network_types #=> Array
resp.replication_instance.replication_subnet_group.supported_network_types[0] #=> 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.pending_modified_values.network_type #=> 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.replication_instance_ipv_6_addresses #=> Array
resp.replication_instance.replication_instance_ipv_6_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
resp.replication_instance.network_type #=> 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 [ Choosing the right DMS replication instance]; and, [Selecting the best size for a replication instance].

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_ReplicationInstance.Types.html [2]: docs.aws.amazon.com/dms/latest/userguide/CHAP_BestPractices.SizingReplicationInstance.html

  • :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 Amazon Web Services 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 Amazon Web Services Region, occurring on a random day of the week.

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

    Constraints: Minimum 30-minute window.

  • :multi_az (Boolean)

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

  • :engine_version (String)

    The engine version number of the replication instance.

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

  • :auto_minor_version_upgrade (Boolean)

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

    Default: ‘true`

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

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

  • :kms_key_id (String)

    An 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 DMS uses your default encryption key.

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

  • :publicly_accessible (Boolean)

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

  • :dns_name_servers (String)

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

  • :resource_identifier (String)

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

  • :network_type (String)

    The type of IP address protocol used by a replication instance, such as IPv4 only or Dual-stack that supports both IPv4 and IPv6 addressing. IPv6 only is not yet supported.

Returns:

See Also:



2746
2747
2748
2749
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 2746

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.

The VPC needs to have at least one subnet in at least two availability zones in the Amazon Web Services Region, otherwise the service will throw a ‘ReplicationSubnetGroupDoesNotCoverEnoughAZs` exception.

If a replication subnet group exists in your Amazon Web Services account, the CreateReplicationSubnetGroup action returns the following error message: The Replication Subnet Group already exists. In this case, delete the existing replication subnet group. To do so, use the

DeleteReplicationSubnetGroup][1

action. Optionally, choose Subnet

groups in the DMS console, then choose your subnet group. Next, choose Delete from Actions.

[1]: docs.aws.amazon.com/en_us/dms/latest/APIReference/API_DeleteReplicationSubnetGroup.html

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",
      resource_arn: "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
resp.replication_subnet_group.supported_network_types #=> Array
resp.replication_subnet_group.supported_network_types[0] #=> 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>)

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



2850
2851
2852
2853
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 2850

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",
      resource_arn: "String",
    },
  ],
  task_data: "String",
  resource_identifier: "String",
})

Response structure


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

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 *Database Migration Service User Guide.*

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TableMapping.html

  • :replication_task_settings (String)

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

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.html

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

    <note markdown=“1”> 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 DMS].

    </note>
    

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib

  • :cdc_stop_position (String)

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

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

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

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

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

  • :task_data (String)

    Supplemental information that the task requires to migrate the data for certain source and target endpoints. For more information, see

    Specifying Supplemental Data for Task Settings][1

    in the *Database

    Migration Service User Guide.*

    [1]: docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.TaskData.html

  • :resource_identifier (String)

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

Returns:

See Also:



3073
3074
3075
3076
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3073

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 certificate.

Returns:

See Also:



3125
3126
3127
3128
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3125

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:



3179
3180
3181
3182
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3179

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

#delete_data_provider(params = {}) ⇒ Types::DeleteDataProviderResponse

Deletes the specified data provider.

<note markdown=“1”> All migration projects associated with the data provider must be deleted or modified before you can delete the data provider.

</note>

Examples:

Example: Delete Data Provider


# Deletes the specified data provider.

resp = client.delete_data_provider({
  data_provider_identifier: "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", 
})

resp.to_h outputs the following:
{
  data_provider: {
    data_provider_arn: "arn:aws:dms:us-east-1:012345678901:data-provider:my-target-data-provider", 
    data_provider_creation_time: Time.parse("2023-05-12T10:50:41.988561Z"), 
    data_provider_name: "my-target-data-provider", 
    engine: "postgres", 
    settings: {
      postgre_sql_settings: {
        database_name: "target", 
        port: 5432, 
        server_name: "postrgesql.0a1b2c3d4e5f.us-east-1.rds.amazonaws.com", 
        ssl_mode: "none", 
      }, 
    }, 
  }, 
}

Request syntax with placeholder values


resp = client.delete_data_provider({
  data_provider_identifier: "String", # required
})

Response structure


resp.data_provider.data_provider_name #=> String
resp.data_provider.data_provider_arn #=> String
resp.data_provider.data_provider_creation_time #=> Time
resp.data_provider.description #=> String
resp.data_provider.engine #=> String
resp.data_provider.settings.redshift_settings.server_name #=> String
resp.data_provider.settings.redshift_settings.port #=> Integer
resp.data_provider.settings.redshift_settings.database_name #=> String
resp.data_provider.settings.postgre_sql_settings.server_name #=> String
resp.data_provider.settings.postgre_sql_settings.port #=> Integer
resp.data_provider.settings.postgre_sql_settings.database_name #=> String
resp.data_provider.settings.postgre_sql_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.postgre_sql_settings.certificate_arn #=> String
resp.data_provider.settings.my_sql_settings.server_name #=> String
resp.data_provider.settings.my_sql_settings.port #=> Integer
resp.data_provider.settings.my_sql_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.my_sql_settings.certificate_arn #=> String
resp.data_provider.settings.oracle_settings.server_name #=> String
resp.data_provider.settings.oracle_settings.port #=> Integer
resp.data_provider.settings.oracle_settings.database_name #=> String
resp.data_provider.settings.oracle_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.oracle_settings.certificate_arn #=> String
resp.data_provider.settings.oracle_settings.asm_server #=> String
resp.data_provider.settings.oracle_settings.secrets_manager_oracle_asm_secret_id #=> String
resp.data_provider.settings.oracle_settings.secrets_manager_oracle_asm_access_role_arn #=> String
resp.data_provider.settings.oracle_settings.secrets_manager_security_db_encryption_secret_id #=> String
resp.data_provider.settings.oracle_settings.secrets_manager_security_db_encryption_access_role_arn #=> String
resp.data_provider.settings.microsoft_sql_server_settings.server_name #=> String
resp.data_provider.settings.microsoft_sql_server_settings.port #=> Integer
resp.data_provider.settings.microsoft_sql_server_settings.database_name #=> String
resp.data_provider.settings.microsoft_sql_server_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.microsoft_sql_server_settings.certificate_arn #=> String
resp.data_provider.settings.doc_db_settings.server_name #=> String
resp.data_provider.settings.doc_db_settings.port #=> Integer
resp.data_provider.settings.doc_db_settings.database_name #=> String
resp.data_provider.settings.doc_db_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.doc_db_settings.certificate_arn #=> String
resp.data_provider.settings.maria_db_settings.server_name #=> String
resp.data_provider.settings.maria_db_settings.port #=> Integer
resp.data_provider.settings.maria_db_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.maria_db_settings.certificate_arn #=> String
resp.data_provider.settings.mongo_db_settings.server_name #=> String
resp.data_provider.settings.mongo_db_settings.port #=> Integer
resp.data_provider.settings.mongo_db_settings.database_name #=> String
resp.data_provider.settings.mongo_db_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_provider.settings.mongo_db_settings.certificate_arn #=> String
resp.data_provider.settings.mongo_db_settings.auth_type #=> String, one of "no", "password"
resp.data_provider.settings.mongo_db_settings.auth_source #=> String
resp.data_provider.settings.mongo_db_settings.auth_mechanism #=> String, one of "default", "mongodb_cr", "scram_sha_1"

Parameters:

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

    ({})

Options Hash (params):

  • :data_provider_identifier (required, String)

    The identifier of the data provider to delete.

Returns:

See Also:



3287
3288
3289
3290
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3287

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

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

Deletes the specified endpoint.

<note markdown=“1”> All tasks associated with the endpoint must be deleted before you can delete the endpoint.

</note>

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.s3_settings.date_partition_enabled #=> Boolean
resp.endpoint.s3_settings.date_partition_sequence #=> String, one of "YYYYMMDD", "YYYYMMDDHH", "YYYYMM", "MMYYYYDD", "DDMMYYYY"
resp.endpoint.s3_settings.date_partition_delimiter #=> String, one of "SLASH", "UNDERSCORE", "DASH", "NONE"
resp.endpoint.s3_settings.use_csv_no_sup_value #=> Boolean
resp.endpoint.s3_settings.csv_no_sup_value #=> String
resp.endpoint.s3_settings.preserve_transactions #=> Boolean
resp.endpoint.s3_settings.cdc_path #=> String
resp.endpoint.s3_settings.use_task_start_time_for_full_load_timestamp #=> Boolean
resp.endpoint.s3_settings.canned_acl_for_objects #=> String, one of "none", "private", "public-read", "public-read-write", "authenticated-read", "aws-exec-read", "bucket-owner-read", "bucket-owner-full-control"
resp.endpoint.s3_settings.add_column_name #=> Boolean
resp.endpoint.s3_settings.cdc_max_batch_interval #=> Integer
resp.endpoint.s3_settings.cdc_min_file_size #=> Integer
resp.endpoint.s3_settings.csv_null_value #=> String
resp.endpoint.s3_settings.ignore_header_rows #=> Integer
resp.endpoint.s3_settings.max_file_size #=> Integer
resp.endpoint.s3_settings.rfc_4180 #=> Boolean
resp.endpoint.s3_settings.date_partition_timezone #=> String
resp.endpoint.s3_settings.add_trailing_padding_character #=> Boolean
resp.endpoint.s3_settings.expected_bucket_owner #=> String
resp.endpoint.s3_settings.glue_catalog_generation #=> 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.mongo_db_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.mongo_db_settings.secrets_manager_secret_id #=> String
resp.endpoint.mongo_db_settings.use_update_look_up #=> Boolean
resp.endpoint.mongo_db_settings.replicate_shard_collections #=> Boolean
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.kinesis_settings.include_null_and_empty #=> Boolean
resp.endpoint.kinesis_settings.no_hex_prefix #=> Boolean
resp.endpoint.kafka_settings.broker #=> String
resp.endpoint.kafka_settings.topic #=> String
resp.endpoint.kafka_settings.message_format #=> String, one of "json", "json-unformatted"
resp.endpoint.kafka_settings.include_transaction_details #=> Boolean
resp.endpoint.kafka_settings.include_partition_value #=> Boolean
resp.endpoint.kafka_settings.partition_include_schema_table #=> Boolean
resp.endpoint.kafka_settings.include_table_alter_operations #=> Boolean
resp.endpoint.kafka_settings.include_control_details #=> Boolean
resp.endpoint.kafka_settings.message_max_bytes #=> Integer
resp.endpoint.kafka_settings.include_null_and_empty #=> Boolean
resp.endpoint.kafka_settings.security_protocol #=> String, one of "plaintext", "ssl-authentication", "ssl-encryption", "sasl-ssl"
resp.endpoint.kafka_settings.ssl_client_certificate_arn #=> String
resp.endpoint.kafka_settings.ssl_client_key_arn #=> String
resp.endpoint.kafka_settings.ssl_client_key_password #=> String
resp.endpoint.kafka_settings.ssl_ca_certificate_arn #=> String
resp.endpoint.kafka_settings.sasl_username #=> String
resp.endpoint.kafka_settings.sasl_password #=> String
resp.endpoint.kafka_settings.no_hex_prefix #=> Boolean
resp.endpoint.kafka_settings.sasl_mechanism #=> String, one of "scram-sha-512", "plain"
resp.endpoint.kafka_settings.ssl_endpoint_identification_algorithm #=> String, one of "none", "https"
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.elasticsearch_settings.use_new_mapping_type #=> Boolean
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.case_sensitive_names #=> Boolean
resp.endpoint.redshift_settings.comp_update #=> Boolean
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.explicit_ids #=> Boolean
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
resp.endpoint.redshift_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.redshift_settings.secrets_manager_secret_id #=> String
resp.endpoint.redshift_settings.map_boolean_as_boolean #=> Boolean
resp.endpoint.postgre_sql_settings.after_connect_script #=> String
resp.endpoint.postgre_sql_settings.capture_ddls #=> Boolean
resp.endpoint.postgre_sql_settings.max_file_size #=> Integer
resp.endpoint.postgre_sql_settings.database_name #=> String
resp.endpoint.postgre_sql_settings.ddl_artifacts_schema #=> String
resp.endpoint.postgre_sql_settings.execute_timeout #=> Integer
resp.endpoint.postgre_sql_settings.fail_tasks_on_lob_truncation #=> Boolean
resp.endpoint.postgre_sql_settings.heartbeat_enable #=> Boolean
resp.endpoint.postgre_sql_settings.heartbeat_schema #=> String
resp.endpoint.postgre_sql_settings.heartbeat_frequency #=> Integer
resp.endpoint.postgre_sql_settings.password #=> String
resp.endpoint.postgre_sql_settings.port #=> Integer
resp.endpoint.postgre_sql_settings.server_name #=> String
resp.endpoint.postgre_sql_settings.username #=> String
resp.endpoint.postgre_sql_settings.slot_name #=> String
resp.endpoint.postgre_sql_settings.plugin_name #=> String, one of "no-preference", "test-decoding", "pglogical"
resp.endpoint.postgre_sql_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.postgre_sql_settings.secrets_manager_secret_id #=> String
resp.endpoint.postgre_sql_settings.trim_space_in_char #=> Boolean
resp.endpoint.postgre_sql_settings.map_boolean_as_boolean #=> Boolean
resp.endpoint.postgre_sql_settings.map_jsonb_as_clob #=> Boolean
resp.endpoint.postgre_sql_settings.map_long_varchar_as #=> String, one of "wstring", "clob", "nclob"
resp.endpoint.postgre_sql_settings.database_mode #=> String, one of "default", "babelfish"
resp.endpoint.postgre_sql_settings.babelfish_database_name #=> String
resp.endpoint.my_sql_settings.after_connect_script #=> String
resp.endpoint.my_sql_settings. #=> Boolean
resp.endpoint.my_sql_settings.database_name #=> String
resp.endpoint.my_sql_settings.events_poll_interval #=> Integer
resp.endpoint.my_sql_settings.target_db_type #=> String, one of "specific-database", "multiple-databases"
resp.endpoint.my_sql_settings.max_file_size #=> Integer
resp.endpoint.my_sql_settings.parallel_load_threads #=> Integer
resp.endpoint.my_sql_settings.password #=> String
resp.endpoint.my_sql_settings.port #=> Integer
resp.endpoint.my_sql_settings.server_name #=> String
resp.endpoint.my_sql_settings.server_timezone #=> String
resp.endpoint.my_sql_settings.username #=> String
resp.endpoint.my_sql_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.my_sql_settings.secrets_manager_secret_id #=> String
resp.endpoint.my_sql_settings.execute_timeout #=> Integer
resp.endpoint.oracle_settings.add_supplemental_logging #=> Boolean
resp.endpoint.oracle_settings.archived_log_dest_id #=> Integer
resp.endpoint.oracle_settings.additional_archived_log_dest_id #=> Integer
resp.endpoint.oracle_settings.extra_archived_log_dest_ids #=> Array
resp.endpoint.oracle_settings.extra_archived_log_dest_ids[0] #=> Integer
resp.endpoint.oracle_settings.allow_select_nested_tables #=> Boolean
resp.endpoint.oracle_settings.parallel_asm_read_threads #=> Integer
resp.endpoint.oracle_settings.read_ahead_blocks #=> Integer
resp.endpoint.oracle_settings.access_alternate_directly #=> Boolean
resp.endpoint.oracle_settings.use_alternate_folder_for_online #=> Boolean
resp.endpoint.oracle_settings.oracle_path_prefix #=> String
resp.endpoint.oracle_settings.use_path_prefix #=> String
resp.endpoint.oracle_settings.replace_path_prefix #=> Boolean
resp.endpoint.oracle_settings.enable_homogenous_tablespace #=> Boolean
resp.endpoint.oracle_settings.direct_path_no_log #=> Boolean
resp.endpoint.oracle_settings.archived_logs_only #=> Boolean
resp.endpoint.oracle_settings.asm_password #=> String
resp.endpoint.oracle_settings.asm_server #=> String
resp.endpoint.oracle_settings.asm_user #=> String
resp.endpoint.oracle_settings.char_length_semantics #=> String, one of "default", "char", "byte"
resp.endpoint.oracle_settings.database_name #=> String
resp.endpoint.oracle_settings.direct_path_parallel_load #=> Boolean
resp.endpoint.oracle_settings.fail_tasks_on_lob_truncation #=> Boolean
resp.endpoint.oracle_settings.number_datatype_scale #=> Integer
resp.endpoint.oracle_settings.password #=> String
resp.endpoint.oracle_settings.port #=> Integer
resp.endpoint.oracle_settings.read_table_space_name #=> Boolean
resp.endpoint.oracle_settings.retry_interval #=> Integer
resp.endpoint.oracle_settings.security_db_encryption #=> String
resp.endpoint.oracle_settings.security_db_encryption_name #=> String
resp.endpoint.oracle_settings.server_name #=> String
resp.endpoint.oracle_settings.spatial_data_option_to_geo_json_function_name #=> String
resp.endpoint.oracle_settings.standby_delay_time #=> Integer
resp.endpoint.oracle_settings.username #=> String
resp.endpoint.oracle_settings.use_b_file #=> Boolean
resp.endpoint.oracle_settings.use_direct_path_full_load #=> Boolean
resp.endpoint.oracle_settings.use_logminer_reader #=> Boolean
resp.endpoint.oracle_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.oracle_settings.secrets_manager_secret_id #=> String
resp.endpoint.oracle_settings.secrets_manager_oracle_asm_access_role_arn #=> String
resp.endpoint.oracle_settings.secrets_manager_oracle_asm_secret_id #=> String
resp.endpoint.oracle_settings.trim_space_in_char #=> Boolean
resp.endpoint.oracle_settings.convert_timestamp_with_zone_to_utc #=> Boolean
resp.endpoint.oracle_settings.open_transaction_window #=> Integer
resp.endpoint.sybase_settings.database_name #=> String
resp.endpoint.sybase_settings.password #=> String
resp.endpoint.sybase_settings.port #=> Integer
resp.endpoint.sybase_settings.server_name #=> String
resp.endpoint.sybase_settings.username #=> String
resp.endpoint.sybase_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.sybase_settings.secrets_manager_secret_id #=> String
resp.endpoint.microsoft_sql_server_settings.port #=> Integer
resp.endpoint.microsoft_sql_server_settings.bcp_packet_size #=> Integer
resp.endpoint.microsoft_sql_server_settings.database_name #=> String
resp.endpoint.microsoft_sql_server_settings.control_tables_file_group #=> String
resp.endpoint.microsoft_sql_server_settings.password #=> String
resp.endpoint.microsoft_sql_server_settings.query_single_always_on_node #=> Boolean
resp.endpoint.microsoft_sql_server_settings.read_backup_only #=> Boolean
resp.endpoint.microsoft_sql_server_settings.safeguard_policy #=> String, one of "rely-on-sql-server-replication-agent", "exclusive-automatic-truncation", "shared-automatic-truncation"
resp.endpoint.microsoft_sql_server_settings.server_name #=> String
resp.endpoint.microsoft_sql_server_settings.username #=> String
resp.endpoint.microsoft_sql_server_settings.use_bcp_full_load #=> Boolean
resp.endpoint.microsoft_sql_server_settings.use_third_party_backup_device #=> Boolean
resp.endpoint.microsoft_sql_server_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.microsoft_sql_server_settings.secrets_manager_secret_id #=> String
resp.endpoint.microsoft_sql_server_settings.trim_space_in_char #=> Boolean
resp.endpoint.microsoft_sql_server_settings.tlog_access_mode #=> String, one of "BackupOnly", "PreferBackup", "PreferTlog", "TlogOnly"
resp.endpoint.microsoft_sql_server_settings.force_lob_lookup #=> Boolean
resp.endpoint.ibm_db_2_settings.database_name #=> String
resp.endpoint.ibm_db_2_settings.password #=> String
resp.endpoint.ibm_db_2_settings.port #=> Integer
resp.endpoint.ibm_db_2_settings.server_name #=> String
resp.endpoint.ibm_db_2_settings.set_data_capture_changes #=> Boolean
resp.endpoint.ibm_db_2_settings.current_lsn #=> String
resp.endpoint.ibm_db_2_settings.max_k_bytes_per_read #=> Integer
resp.endpoint.ibm_db_2_settings.username #=> String
resp.endpoint.ibm_db_2_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.ibm_db_2_settings.secrets_manager_secret_id #=> String
resp.endpoint.ibm_db_2_settings.load_timeout #=> Integer
resp.endpoint.ibm_db_2_settings.write_buffer_size #=> Integer
resp.endpoint.ibm_db_2_settings.max_file_size #=> Integer
resp.endpoint.ibm_db_2_settings.keep_csv_files #=> Boolean
resp.endpoint.doc_db_settings.username #=> String
resp.endpoint.doc_db_settings.password #=> String
resp.endpoint.doc_db_settings.server_name #=> String
resp.endpoint.doc_db_settings.port #=> Integer
resp.endpoint.doc_db_settings.database_name #=> String
resp.endpoint.doc_db_settings.nesting_level #=> String, one of "none", "one"
resp.endpoint.doc_db_settings.extract_doc_id #=> Boolean
resp.endpoint.doc_db_settings.docs_to_investigate #=> Integer
resp.endpoint.doc_db_settings.kms_key_id #=> String
resp.endpoint.doc_db_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.doc_db_settings.secrets_manager_secret_id #=> String
resp.endpoint.doc_db_settings.use_update_look_up #=> Boolean
resp.endpoint.doc_db_settings.replicate_shard_collections #=> Boolean
resp.endpoint.redis_settings.server_name #=> String
resp.endpoint.redis_settings.port #=> Integer
resp.endpoint.redis_settings.ssl_security_protocol #=> String, one of "plaintext", "ssl-encryption"
resp.endpoint.redis_settings.auth_type #=> String, one of "none", "auth-role", "auth-token"
resp.endpoint.redis_settings.auth_user_name #=> String
resp.endpoint.redis_settings.auth_password #=> String
resp.endpoint.redis_settings.ssl_ca_certificate_arn #=> String
resp.endpoint.gcp_my_sql_settings.after_connect_script #=> String
resp.endpoint.gcp_my_sql_settings. #=> Boolean
resp.endpoint.gcp_my_sql_settings.database_name #=> String
resp.endpoint.gcp_my_sql_settings.events_poll_interval #=> Integer
resp.endpoint.gcp_my_sql_settings.target_db_type #=> String, one of "specific-database", "multiple-databases"
resp.endpoint.gcp_my_sql_settings.max_file_size #=> Integer
resp.endpoint.gcp_my_sql_settings.parallel_load_threads #=> Integer
resp.endpoint.gcp_my_sql_settings.password #=> String
resp.endpoint.gcp_my_sql_settings.port #=> Integer
resp.endpoint.gcp_my_sql_settings.server_name #=> String
resp.endpoint.gcp_my_sql_settings.server_timezone #=> String
resp.endpoint.gcp_my_sql_settings.username #=> String
resp.endpoint.gcp_my_sql_settings.secrets_manager_access_role_arn #=> String
resp.endpoint.gcp_my_sql_settings.secrets_manager_secret_id #=> String
resp.endpoint.timestream_settings.database_name #=> String
resp.endpoint.timestream_settings.memory_duration #=> Integer
resp.endpoint.timestream_settings.magnetic_duration #=> Integer
resp.endpoint.timestream_settings.cdc_inserts_and_updates #=> Boolean
resp.endpoint.timestream_settings.enable_magnetic_store_writes #=> Boolean

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:



3655
3656
3657
3658
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3655

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

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

Deletes an 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:



3693
3694
3695
3696
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3693

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

#delete_fleet_advisor_collector(params = {}) ⇒ Struct

Deletes the specified Fleet Advisor collector.

Examples:

Request syntax with placeholder values


resp = client.delete_fleet_advisor_collector({
  collector_referenced_id: "String", # required
})

Parameters:

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

    ({})

Options Hash (params):

  • :collector_referenced_id (required, String)

    The reference ID of the Fleet Advisor collector to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3715
3716
3717
3718
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3715

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

#delete_fleet_advisor_databases(params = {}) ⇒ Types::DeleteFleetAdvisorDatabasesResponse

Deletes the specified Fleet Advisor collector databases.

Examples:

Request syntax with placeholder values


resp = client.delete_fleet_advisor_databases({
  database_ids: ["String"], # required
})

Response structure


resp.database_ids #=> Array
resp.database_ids[0] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :database_ids (required, Array<String>)

    The IDs of the Fleet Advisor collector databases to delete.

Returns:

See Also:



3744
3745
3746
3747
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3744

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

#delete_instance_profile(params = {}) ⇒ Types::DeleteInstanceProfileResponse

Deletes the specified instance profile.

<note markdown=“1”> All migration projects associated with the instance profile must be deleted or modified before you can delete the instance profile.

</note>

Examples:

Request syntax with placeholder values


resp = client.delete_instance_profile({
  instance_profile_identifier: "String", # required
})

Response structure


resp.instance_profile.instance_profile_arn #=> String
resp.instance_profile.availability_zone #=> String
resp.instance_profile.kms_key_arn #=> String
resp.instance_profile.publicly_accessible #=> Boolean
resp.instance_profile.network_type #=> String
resp.instance_profile.instance_profile_name #=> String
resp.instance_profile.description #=> String
resp.instance_profile.instance_profile_creation_time #=> Time
resp.instance_profile.subnet_group_identifier #=> String
resp.instance_profile.vpc_security_groups #=> Array
resp.instance_profile.vpc_security_groups[0] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :instance_profile_identifier (required, String)

    The identifier of the instance profile to delete.

Returns:

See Also:



3787
3788
3789
3790
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3787

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

#delete_migration_project(params = {}) ⇒ Types::DeleteMigrationProjectResponse

Deletes the specified migration project.

<note markdown=“1”> The migration project must be closed before you can delete it.

</note>

Examples:

Example: Delete Migration Project


# Deletes the specified migration project.

resp = client.delete_migration_project({
  migration_project_identifier: "arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", 
})

resp.to_h outputs the following:
{
  migration_project: {
    instance_profile_arn: "arn:aws:dms:us-east-1:012345678901:instance-profile:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", 
    instance_profile_name: "my-instance-profile", 
    migration_project_arn: "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", 
    migration_project_creation_time: Time.parse("2023-04-19T11:45:15.805253Z"), 
    migration_project_name: "my-migration-project", 
    schema_conversion_application_attributes: {
      s3_bucket_path: "my-s3-bucket/my_folder", 
      s3_bucket_role_arn: "arn:aws:iam::012345678901:role/my-s3role", 
    }, 
    source_data_provider_descriptors: [
      {
        data_provider_arn: "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", 
        data_provider_name: "all-source-oracle-12", 
        secrets_manager_access_role_arn: "arn:aws:iam::012345678901:role/my-access-role", 
        secrets_manager_secret_id: "arn:aws:secretsmanager:us-east-1:012345678901:secret:myuser/ALL.SOURCE.ORACLE_12-0123456", 
      }, 
    ], 
    target_data_provider_descriptors: [
      {
        data_provider_arn: "arn:aws:dms:us-east-1:012345678901:data-provider:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", 
        data_provider_name: "sde-obilyns-dataprovider-3", 
        secrets_manager_access_role_arn: "arn:aws:iam::437223687239:role/dmytbon-admin-access", 
        secrets_manager_secret_id: "arn:aws:secretsmanager:us-east-1:012345678901:secret:myuser/TARGET.postgresql-0123456", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.delete_migration_project({
  migration_project_identifier: "String", # required
})

Response structure


resp.migration_project.migration_project_name #=> String
resp.migration_project.migration_project_arn #=> String
resp.migration_project.migration_project_creation_time #=> Time
resp.migration_project.source_data_provider_descriptors #=> Array
resp.migration_project.source_data_provider_descriptors[0].secrets_manager_secret_id #=> String
resp.migration_project.source_data_provider_descriptors[0].secrets_manager_access_role_arn #=> String
resp.migration_project.source_data_provider_descriptors[0].data_provider_name #=> String
resp.migration_project.source_data_provider_descriptors[0].data_provider_arn #=> String
resp.migration_project.target_data_provider_descriptors #=> Array
resp.migration_project.target_data_provider_descriptors[0].secrets_manager_secret_id #=> String
resp.migration_project.target_data_provider_descriptors[0].secrets_manager_access_role_arn #=> String
resp.migration_project.target_data_provider_descriptors[0].data_provider_name #=> String
resp.migration_project.target_data_provider_descriptors[0].data_provider_arn #=> String
resp.migration_project.instance_profile_arn #=> String
resp.migration_project.instance_profile_name #=> String
resp.migration_project.transformation_rules #=> String
resp.migration_project.description #=> String
resp.migration_project.schema_conversion_application_attributes.s3_bucket_path #=> String
resp.migration_project.schema_conversion_application_attributes.s3_bucket_role_arn #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :migration_project_identifier (required, String)

    The name or Amazon Resource Name (ARN) of the migration project to delete.

Returns:

See Also:



3878
3879
3880
3881
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3878

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

#delete_replication_config(params = {}) ⇒ Types::DeleteReplicationConfigResponse

Deletes an DMS Serverless replication configuration. This effectively deprovisions any and all replications that use this configuration. You can’t delete the configuration for an DMS Serverless replication that is ongoing. You can delete the configuration when the replication is in a non-RUNNING and non-STARTING state.

Examples:

Request syntax with placeholder values


resp = client.delete_replication_config({
  replication_config_arn: "String", # required
})

Response structure


resp.replication_config.replication_config_identifier #=> String
resp.replication_config.replication_config_arn #=> String
resp.replication_config.source_endpoint_arn #=> String
resp.replication_config.target_endpoint_arn #=> String
resp.replication_config.replication_type #=> String, one of "full-load", "cdc", "full-load-and-cdc"
resp.replication_config.compute_config.availability_zone #=> String
resp.replication_config.compute_config.dns_name_servers #=> String
resp.replication_config.compute_config.kms_key_id #=> String
resp.replication_config.compute_config.max_capacity_units #=> Integer
resp.replication_config.compute_config.min_capacity_units #=> Integer
resp.replication_config.compute_config.multi_az #=> Boolean
resp.replication_config.compute_config.preferred_maintenance_window #=> String
resp.replication_config.compute_config.replication_subnet_group_id #=> String
resp.replication_config.compute_config.vpc_security_group_ids #=> Array
resp.replication_config.compute_config.vpc_security_group_ids[0] #=> String
resp.replication_config.replication_settings #=> String
resp.replication_config.supplemental_settings #=> String
resp.replication_config.table_mappings #=> String
resp.replication_config.replication_config_create_time #=> Time
resp.replication_config.replication_config_update_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :replication_config_arn (required, String)

    The replication config to delete.

Returns:

See Also:



3929
3930
3931
3932
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 3929

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

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

Deletes the specified replication instance.

<note markdown=“1”> You must delete any migration tasks that are associated with the replication instance before you can delete it.

</note>

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.replication_subnet_group.supported_network_types #=> Array
resp.replication_instance.replication_subnet_group.supported_network_types[0] #=> 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.pending_modified_values.network_type #=> 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.replication_instance_ipv_6_addresses #=> Array
resp.replication_instance.replication_instance_ipv_6_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
resp.replication_instance.network_type #=> 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:



4069
4070
4071
4072
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4069

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:



4104
4105
4106
4107
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4104

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
resp.replication_task.target_replication_instance_arn #=> 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:



4185
4186
4187
4188
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4185

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

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

Deletes the record of a single premigration assessment run.

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

Examples:

Request syntax with placeholder values


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

Response structure


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

Parameters:

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

    ({})

Options Hash (params):

  • :replication_task_assessment_run_arn (required, String)

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

Returns:

See Also:



4231
4232
4233
4234
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4231

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

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

Lists all of the DMS attributes for a customer account. These attributes include 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:



4295
4296
4297
4298
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4295

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

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

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

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

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

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

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_applicable_individual_assessments({
  replication_task_arn: "String",
  replication_instance_arn: "String",
  source_engine_name: "String",
  target_engine_name: "String",
  migration_type: "full-load", # accepts full-load, cdc, full-load-and-cdc
  max_records: 1,
  marker: "String",
})

Response structure


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

Parameters:

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

    ({})

Options Hash (params):

  • :replication_task_arn (String)

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

  • :replication_instance_arn (String)

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

  • :source_engine_name (String)

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

  • :target_engine_name (String)

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

  • :migration_type (String)

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

  • :max_records (Integer)

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

  • :marker (String)

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

Returns:

See Also:



4383
4384
4385
4386
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4383

def describe_applicable_individual_assessments(params = {}, options = {})
  req = build_request(:describe_applicable_individual_assessments, 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 certificates described in the form of key-value pairs. Valid values are ‘certificate-arn` and `certificate-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: 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:



4472
4473
4474
4475
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4472

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:



4575
4576
4577
4578
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4575

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

#describe_conversion_configuration(params = {}) ⇒ Types::DescribeConversionConfigurationResponse

Returns configuration parameters for a schema conversion project.

Examples:

Example: Describe Conversion Configuration


# Returns configuration parameters for a schema conversion project.

resp = client.describe_conversion_configuration({
  migration_project_identifier: "arn:aws:dms:us-east-1:012345678901:migration-project:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", 
})

resp.to_h outputs the following:
{
  conversion_configuration: "{\"Common project settings\":{\"ShowSeverityLevelInSql\":\"CRITICAL\"},\"ORACLE_TO_POSTGRESQL\" : {\"ToTimeZone\":false,\"LastDayBuiltinFunctionOracle\":false,   \"NextDayBuiltinFunctionOracle\":false,\"ConvertProceduresToFunction\":false,\"NvlBuiltinFunctionOracle\":false,\"DbmsAssertBuiltinFunctionOracle\":false}}", 
  migration_project_identifier: "arn:aws:dms:us-east-1:012345678901:migration-project:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ012", 
}

Request syntax with placeholder values


resp = client.describe_conversion_configuration({
  migration_project_identifier: "String", # required
})

Response structure


resp.migration_project_identifier #=> String
resp.conversion_configuration #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :migration_project_identifier (required, String)

    The name or Amazon Resource Name (ARN) for the schema conversion project to describe.

Returns:

See Also:



4621
4622
4623
4624
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4621

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

#describe_data_providers(params = {}) ⇒ Types::DescribeDataProvidersResponse

Returns a paginated list of data providers for your account in the current region.

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

Examples:

Example: Describe Data Providers


resp = client.describe_data_providers({
  filters: [
    {
      name: "data-provider-identifier", 
      values: [
        "arn:aws:dms:us-east-1:012345678901:data-provider:EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", 
      ], 
    }, 
  ], 
  marker: "EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", 
  max_records: 20, 
})

resp.to_h outputs the following:
{
  data_providers: [
    {
      data_provider_arn: "arn:aws:dms:us-east-1:012345678901:data-provider:my-target-data-provider", 
      data_provider_creation_time: Time.parse("2023-05-12T10:50:41.988561Z"), 
      data_provider_name: "my-target-data-provider", 
      engine: "postgres", 
      settings: {
        postgre_sql_settings: {
          database_name: "target", 
          port: 5432, 
          server_name: "postrgesql.0a1b2c3d4e5f.us-east-1.rds.amazonaws.com", 
          ssl_mode: "none", 
        }, 
      }, 
    }, 
  ], 
  marker: "EXAMPLEABCDEFGHIJKLMNOPQRSTUVWXYZ012345", 
}

Request syntax with placeholder values


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

Response structure


resp.marker #=> String
resp.data_providers #=> Array
resp.data_providers[0].data_provider_name #=> String
resp.data_providers[0].data_provider_arn #=> String
resp.data_providers[0].data_provider_creation_time #=> Time
resp.data_providers[0].description #=> String
resp.data_providers[0].engine #=> String
resp.data_providers[0].settings.redshift_settings.server_name #=> String
resp.data_providers[0].settings.redshift_settings.port #=> Integer
resp.data_providers[0].settings.redshift_settings.database_name #=> String
resp.data_providers[0].settings.postgre_sql_settings.server_name #=> String
resp.data_providers[0].settings.postgre_sql_settings.port #=> Integer
resp.data_providers[0].settings.postgre_sql_settings.database_name #=> String
resp.data_providers[0].settings.postgre_sql_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_providers[0].settings.postgre_sql_settings.certificate_arn #=> String
resp.data_providers[0].settings.my_sql_settings.server_name #=> String
resp.data_providers[0].settings.my_sql_settings.port #=> Integer
resp.data_providers[0].settings.my_sql_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_providers[0].settings.my_sql_settings.certificate_arn #=> String
resp.data_providers[0].settings.oracle_settings.server_name #=> String
resp.data_providers[0].settings.oracle_settings.port #=> Integer
resp.data_providers[0].settings.oracle_settings.database_name #=> String
resp.data_providers[0].settings.oracle_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_providers[0].settings.oracle_settings.certificate_arn #=> String
resp.data_providers[0].settings.oracle_settings.asm_server #=> String
resp.data_providers[0].settings.oracle_settings.secrets_manager_oracle_asm_secret_id #=> String
resp.data_providers[0].settings.oracle_settings.secrets_manager_oracle_asm_access_role_arn #=> String
resp.data_providers[0].settings.oracle_settings.secrets_manager_security_db_encryption_secret_id #=> String
resp.data_providers[0].settings.oracle_settings.secrets_manager_security_db_encryption_access_role_arn #=> String
resp.data_providers[0].settings.microsoft_sql_server_settings.server_name #=> String
resp.data_providers[0].settings.microsoft_sql_server_settings.port #=> Integer
resp.data_providers[0].settings.microsoft_sql_server_settings.database_name #=> String
resp.data_providers[0].settings.microsoft_sql_server_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_providers[0].settings.microsoft_sql_server_settings.certificate_arn #=> String
resp.data_providers[0].settings.doc_db_settings.server_name #=> String
resp.data_providers[0].settings.doc_db_settings.port #=> Integer
resp.data_providers[0].settings.doc_db_settings.database_name #=> String
resp.data_providers[0].settings.doc_db_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_providers[0].settings.doc_db_settings.certificate_arn #=> String
resp.data_providers[0].settings.maria_db_settings.server_name #=> String
resp.data_providers[0].settings.maria_db_settings.port #=> Integer
resp.data_providers[0].settings.maria_db_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_providers[0].settings.maria_db_settings.certificate_arn #=> String
resp.data_providers[0].settings.mongo_db_settings.server_name #=> String
resp.data_providers[0].settings.mongo_db_settings.port #=> Integer
resp.data_providers[0].settings.mongo_db_settings.database_name #=> String
resp.data_providers[0].settings.mongo_db_settings.ssl_mode #=> String, one of "none", "require", "verify-ca", "verify-full"
resp.data_providers[0].settings.mongo_db_settings.certificate_arn #=> String
resp.data_providers[0].settings.mongo_db_settings.auth_type #=> String, one of "no", "password"
resp.data_providers[0].settings.mongo_db_settings.auth_source #=> String
resp.data_providers[0].settings.mongo_db_settings.auth_mechanism #=> String, one of "default", "mongodb_cr", "scram_sha_1"

Parameters:

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

    ({})

Options Hash (params):

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

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

    Valid filter names: data-provider-identifier

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, DMS includes a pagination token in the response so that you can retrieve the remaining results.

  • :marker (String)

    Specifies the unique pagination token that makes it possible to display the next page of results. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

    If ‘Marker` is returned by a previous response, there are more results available. The value of `Marker` is a unique pagination token for each page. To retrieve the next page, make the call again using the returned token and keeping all other arguments unchanged.

Returns:

See Also:



4767
4768
4769
4770
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4767

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

#describe_endpoint_settings(params = {}) ⇒ Types::DescribeEndpointSettingsResponse

Returns information about the possible endpoint settings available when you create an endpoint for a specific database engine.

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_endpoint_settings({
  engine_name: "String", # required
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.endpoint_settings #=> Array
resp.endpoint_settings[0].name #=> String
resp.endpoint_settings[0].type #=> String, one of "string", "boolean", "integer", "enum"
resp.endpoint_settings[0].enum_values #=> Array
resp.endpoint_settings[0].enum_values[0] #=> String
resp.endpoint_settings[0].sensitive #=> Boolean
resp.endpoint_settings[0].units #=> String
resp.endpoint_settings[0].applicability #=> String
resp.endpoint_settings[0].int_value_min #=> Integer
resp.endpoint_settings[0].int_value_max #=> Integer
resp.endpoint_settings[0].default_value #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :engine_name (required, String)

    The database engine used for your source or target 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.

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



4823
4824
4825
4826
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4823

def describe_endpoint_settings(params = {}, options = {})
  req = build_request(:describe_endpoint_settings, 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 endpoint types.

    Valid filter names: engine-name | endpoint-type

  • :max_records (Integer)

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

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

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

Returns:

See Also:



4910
4911
4912
4913
# File 'lib/aws-sdk-databasemigrationservice/client.rb', line 4910

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].s3_settings.date_partition_enabled #=> Boolean
resp.endpoints[0].s3_settings.date_partition_sequence #=> String, one of "YYYYMMDD", "YYYYMMDDHH", "YYYYMM", "MMYYYYDD", "DDMMYYYY"
resp.endpoints[0].s3_settings.date_partition_delimiter #=> String, one of "SLASH", "UNDERSCORE", "DASH", "NONE"
resp.endpoints[0].s3_settings.use_csv_no_sup_value #=> Boolean
resp.endpoints[0].s3_settings.csv_no_sup_value #=> String
resp.endpoints[0].s3_settings.preserve_transactions #=> Boolean
resp.endpoints[0].s3_settings.cdc_path #=> String
resp.endpoints[0].s3_settings.use_task_start_time_for_full_load_timestamp #=> Boolean
resp.endpoints[0].s3_settings.canned_acl_for_objects #=> String, one of "none", "private", "public-read", "public-read-write", "authenticated-read", "aws-exec-read", "bucket-owner-read", "bucket-owner-full-control"
resp.endpoints[0].s3_settings.add_column_name #=> Boolean
resp.endpoints[0].s3_settings.cdc_max_batch_interval #=> Integer
resp.endpoints[0].s3_settings.cdc_min_file_size #=> Integer
resp.endpoints[0].s3_settings.csv_null_value #=> String
resp.endpoints[0].s3_settings.ignore_header_rows #=> Integer
resp.endpoints[0].s3_settings.max_file_size #=> Integer
resp.endpoints[0].s3_settings.rfc_4180 #=> Boolean
resp.endpoints[0].s3_settings.date_partition_timezone #=> String
resp.endpoints[0].s3_settings.add_trailing_padding_character #=> Boolean
resp.endpoints[0].s3_settings.expected_bucket_owner #=> String
resp.endpoints[0].s3_settings.glue_catalog_generation #=> 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