ModifyReplicationConfig - AWS Database Migration Service

ModifyReplicationConfig

Modifies an existing AWS DMS Serverless replication configuration that you can use to start a replication. This command includes input validation and logic to check the state of any replication that uses this configuration. You can only modify a replication configuration before any replication that uses it has started. As soon as you have initially started a replication with a given configuiration, you can't modify that configuration, even if you stop it.

Other run statuses that allow you to run this command include FAILED and CREATED. A provisioning state that allows you to run this command is FAILED_PROVISION.

Request Syntax

{ "ComputeConfig": { "AvailabilityZone": "string", "DnsNameServers": "string", "KmsKeyId": "string", "MaxCapacityUnits": number, "MinCapacityUnits": number, "MultiAZ": boolean, "PreferredMaintenanceWindow": "string", "ReplicationSubnetGroupId": "string", "VpcSecurityGroupIds": [ "string" ] }, "ReplicationConfigArn": "string", "ReplicationConfigIdentifier": "string", "ReplicationSettings": "string", "ReplicationType": "string", "SourceEndpointArn": "string", "SupplementalSettings": "string", "TableMappings": "string", "TargetEndpointArn": "string" }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

ComputeConfig

Configuration parameters for provisioning an AWS DMS Serverless replication.

Type: ComputeConfig object

Required: No

ReplicationConfigArn

The Amazon Resource Name of the replication to modify.

Type: String

Required: Yes

ReplicationConfigIdentifier

The new replication config to apply to the replication.

Type: String

Required: No

ReplicationSettings

The settings for the replication.

Type: String

Required: No

ReplicationType

The type of replication.

Type: String

Valid Values: full-load | cdc | full-load-and-cdc

Required: No

SourceEndpointArn

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

Type: String

Required: No

SupplementalSettings

Additional settings for the replication.

Type: String

Required: No

TableMappings

Table mappings specified in the replication.

Type: String

Required: No

TargetEndpointArn

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

Type: String

Required: No

Response Syntax

{ "ReplicationConfig": { "ComputeConfig": { "AvailabilityZone": "string", "DnsNameServers": "string", "KmsKeyId": "string", "MaxCapacityUnits": number, "MinCapacityUnits": number, "MultiAZ": boolean, "PreferredMaintenanceWindow": "string", "ReplicationSubnetGroupId": "string", "VpcSecurityGroupIds": [ "string" ] }, "ReplicationConfigArn": "string", "ReplicationConfigCreateTime": number, "ReplicationConfigIdentifier": "string", "ReplicationConfigUpdateTime": number, "ReplicationSettings": "string", "ReplicationType": "string", "SourceEndpointArn": "string", "SupplementalSettings": "string", "TableMappings": "string", "TargetEndpointArn": "string" } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

ReplicationConfig

Information about the serverless replication config that was modified.

Type: ReplicationConfig object

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedFault

AWS DMS was denied access to the endpoint. Check that the role is correctly configured.

HTTP Status Code: 400

InvalidResourceStateFault

The resource is in a state that prevents it from being used for database migration.

HTTP Status Code: 400

InvalidSubnet

The subnet provided isn't valid.

HTTP Status Code: 400

KMSKeyNotAccessibleFault

AWS DMS cannot access the KMS key.

HTTP Status Code: 400

ReplicationSubnetGroupDoesNotCoverEnoughAZs

The replication subnet group does not cover enough Availability Zones (AZs). Edit the replication subnet group and add more AZs.

HTTP Status Code: 400

ResourceNotFoundFault

The resource could not be found.

HTTP Status Code: 400

Examples

Example

This example illustrates one usage of ModifyReplicationConfig.

Sample Request

POST / HTTP/1.1 Host: dms.<region>.<domain> x-amz-Date: <Date> Authorization: AWS4-HMAC-SHA256 Credential=<Credential>, SignedHeaders=contenttype;date;host;user-agent;x-amz-date;x-amz-target;x-amzn-requestid,Signature=<Signature> User-Agent: <UserAgentString> Content-Type: application/x-amz-json-1.1 Content-Length: <PayloadSizeBytes> Connection: Keep-Alive X-Amz-Target: AmazonDMSv20160101.ModifyReplicationConfig { "ReplicationConfigIdentifier":"test-replication-config", "ReplicationConfigArn":"arn:aws:dms:us-east-1:123456789012:replication-config:UX6OL6MHMMJKFFOXE3H7LLJCMEKBDUG4ZV7DRSI" }

Sample Response

HTTP/1.1 200 OK x-amzn-RequestId: <RequestId> Content-Type: application/x-amz-json-1.1 Content-Length: <PayloadSizeBytes> Date: <Date> { "ReplicationConfig":"{ "ReplicationConfigIdentifier":"test-replication-config", "ReplicationConfigArn":"arn:aws:dms:us-east- 1:123456789012:replication-config:UX6OL6MHMMJKFFOXE3H7LLJCMEKBDUG4ZV7DRSI", "SourceEndpointArn":"arn:aws:dms:us-east- 1:123456789012:endpoint:RZZK4EZW5UANC7Y3P4E776WHBE", "TargetEndpointArn":"arn:aws:dms:us-east- 1:123456789012:endpoint:GVBUJQXJZASXWHTWCLN2WNT57E", "ReplicationConfigCreateTime":1677683717.524, "TableMappings":"{\n \"TableMappings\": [\n {\n \"Type\": \"Include\",\n \"SourceSchema\": \"/\", \n \"SourceTable\": \"/ \"\n }\n ]\n }\n\n", "ReplicationTaskSettings":"{\"TargetMetadata\": {\"TargetSchema\":\"\",\"SupportLobs\":true,\"FullLobMode\": true,\"LobChunkSize\":64,\"LimitedSizeLobMode\": false,\"LobMaxSize\":0 }, \"FullLoadSettings\":{ \"FullLoadEnabled\":true, \"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 } }" }" }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: