AWS::DMS::Endpoint PostgreSqlSettings
Provides information that defines a PostgreSQL endpoint. This information includes the output format of records applied to the endpoint and details of transaction and control table data information. For information about other available settings, see Extra connection attributes when using PostgreSQL as a source for AWS DMS and Extra connection attributes when using PostgreSQL as a target for AWS DMS in the AWS Database Migration Service User Guide.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "AfterConnectScript" :
String
, "BabelfishDatabaseName" :String
, "CaptureDdls" :Boolean
, "DatabaseMode" :String
, "DdlArtifactsSchema" :String
, "ExecuteTimeout" :Integer
, "FailTasksOnLobTruncation" :Boolean
, "HeartbeatEnable" :Boolean
, "HeartbeatFrequency" :Integer
, "HeartbeatSchema" :String
, "MapBooleanAsBoolean" :Boolean
, "MaxFileSize" :Integer
, "PluginName" :String
, "SecretsManagerAccessRoleArn" :String
, "SecretsManagerSecretId" :String
, "SlotName" :String
}
YAML
AfterConnectScript:
String
BabelfishDatabaseName:String
CaptureDdls:Boolean
DatabaseMode:String
DdlArtifactsSchema:String
ExecuteTimeout:Integer
FailTasksOnLobTruncation:Boolean
HeartbeatEnable:Boolean
HeartbeatFrequency:Integer
HeartbeatSchema:String
MapBooleanAsBoolean:Boolean
MaxFileSize:Integer
PluginName:String
SecretsManagerAccessRoleArn:String
SecretsManagerSecretId:String
SlotName:String
Properties
AfterConnectScript
-
For use with change data capture (CDC) only, this attribute has AWS DMS bypass foreign keys and user triggers to reduce the time it takes to bulk load data.
Example:
afterConnectScript=SET session_replication_role='replica'
Required: No
Type: String
Update requires: No interruption
BabelfishDatabaseName
-
The Babelfish for Aurora PostgreSQL database name for the endpoint.
Required: No
Type: String
Update requires: No interruption
CaptureDdls
-
To capture DDL events, AWS DMS creates various artifacts in the PostgreSQL database when the task starts. You can later remove these artifacts.
If this value is set to
True
, you don't have to create tables or triggers on the source database.Required: No
Type: Boolean
Update requires: No interruption
DatabaseMode
-
Specifies the default behavior of the replication's handling of PostgreSQL- compatible endpoints that require some additional configuration, such as Babelfish endpoints.
Required: No
Type: String
Allowed values:
default | babelfish
Update requires: No interruption
DdlArtifactsSchema
-
The schema in which the operational DDL database artifacts are created.
The default value is
public
.Example:
ddlArtifactsSchema=xyzddlschema;
Required: No
Type: String
Update requires: No interruption
ExecuteTimeout
-
Sets the client statement timeout for the PostgreSQL instance, in seconds. The default value is 60 seconds.
Example:
executeTimeout=100;
Required: No
Type: Integer
Update requires: No interruption
FailTasksOnLobTruncation
-
When set to
true
, this value causes a task to fail if the actual size of a LOB column is greater than the specifiedLobMaxSize
.The default value is
false
.If task is set to Limited LOB mode and this option is set to true, the task fails instead of truncating the LOB data.
Required: No
Type: Boolean
Update requires: No interruption
HeartbeatEnable
-
The write-ahead log (WAL) heartbeat feature mimics a dummy transaction. By doing this, it prevents idle logical replication slots from holding onto old WAL logs, which can result in storage full situations on the source. This heartbeat keeps
restart_lsn
moving and prevents storage full scenarios.The default value is
false
.Required: No
Type: Boolean
Update requires: No interruption
HeartbeatFrequency
-
Sets the WAL heartbeat frequency (in minutes).
The default value is 5 minutes.
Required: No
Type: Integer
Update requires: No interruption
HeartbeatSchema
-
Sets the schema in which the heartbeat artifacts are created.
The default value is
public
.Required: No
Type: String
Update requires: No interruption
MapBooleanAsBoolean
-
When true, lets PostgreSQL migrate the boolean type as boolean. By default, PostgreSQL migrates booleans as
varchar(5)
. You must set this setting on both the source and target endpoints for it to take effect.The default value is
false
.Required: No
Type: Boolean
Update requires: No interruption
MaxFileSize
-
Specifies the maximum size (in KB) of any .csv file used to transfer data to PostgreSQL.
The default value is 32,768 KB (32 MB).
Example:
maxFileSize=512
Required: No
Type: Integer
Update requires: No interruption
PluginName
-
Specifies the plugin to use to create a replication slot.
The default value is
pglogical
.Required: No
Type: String
Update requires: No interruption
SecretsManagerAccessRoleArn
-
The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS as the trusted entity and grants the required permissions to access the value in
SecretsManagerSecret
. The role must allow theiam:PassRole
action.SecretsManagerSecret
has the value of the AWS Secrets Manager secret that allows access to the PostgreSQL endpoint.Note
You can specify one of two sets of values for these permissions. You can specify the values for this setting and
SecretsManagerSecretId
. Or you can specify clear-text values forUserName
,Password
,ServerName
, andPort
. You can't specify both.For more information on creating this
SecretsManagerSecret
, the correspondingSecretsManagerAccessRoleArn
, and theSecretsManagerSecretId
that is required to access it, see Using secrets to access AWS Database Migration Service resources in the AWS Database Migration Service User Guide.Required: No
Type: String
Update requires: No interruption
SecretsManagerSecretId
-
The full ARN, partial ARN, or display name of the
SecretsManagerSecret
that contains the PostgreSQL endpoint connection details.Required: No
Type: String
Update requires: No interruption
SlotName
-
Sets the name of a previously created logical replication slot for a change data capture (CDC) load of the PostgreSQL source instance.
When used with the
CdcStartPosition
request parameter for the AWS DMS API , this attribute also makes it possible to use native CDC start points. DMS verifies that the specified logical replication slot exists before starting the CDC load task. It also verifies that the task was created with a valid setting ofCdcStartPosition
. If the specified slot doesn't exist or the task doesn't have a validCdcStartPosition
setting, DMS raises an error.For more information about setting the
CdcStartPosition
request parameter, see Determining a CDC native start point in the AWS Database Migration Service User Guide. For more information about usingCdcStartPosition
, see CreateReplicationTask, StartReplicationTask, and ModifyReplicationTask.Required: No
Type: String
Update requires: No interruption