Class: Aws::DatabaseMigrationService::Types::PostgreSQLSettings

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb

Overview

Note:

When making an API call, you may pass PostgreSQLSettings data as a hash:

{
  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,
}

Provides information that defines a PostgreSQL endpoint.

Constant Summary collapse

SENSITIVE =
[:password]

Instance Attribute Summary collapse

Instance Attribute Details

#after_connect_scriptString

For use with change data capture (CDC) only, this attribute has DMS bypass foreign keys and user triggers to reduce the time it takes to bulk load data.

Example: afterConnectScript=SET session_replication_role='replica'

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#capture_ddlsBoolean

To capture DDL events, DMS creates various artifacts in the PostgreSQL database when the task starts. You can later remove these artifacts.

If this value is set to N, you don't have to create tables or triggers on the source database.

Returns:

  • (Boolean)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#database_nameString

Database name for the endpoint.

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#ddl_artifacts_schemaString

The schema in which the operational DDL database artifacts are created.

Example: ddlArtifactsSchema=xyzddlschema;

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#execute_timeoutInteger

Sets the client statement timeout for the PostgreSQL instance, in seconds. The default value is 60 seconds.

Example: executeTimeout=100;

Returns:

  • (Integer)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#fail_tasks_on_lob_truncationBoolean

When set to true, this value causes a task to fail if the actual size of a LOB column is greater than the specified LobMaxSize.

If task is set to Limited LOB mode and this option is set to true, the task fails instead of truncating the LOB data.

Returns:

  • (Boolean)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#heartbeat_enableBoolean

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.

Returns:

  • (Boolean)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#heartbeat_frequencyInteger

Sets the WAL heartbeat frequency (in minutes).

Returns:

  • (Integer)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#heartbeat_schemaString

Sets the schema in which the heartbeat artifacts are created.

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#max_file_sizeInteger

Specifies the maximum size (in KB) of any .csv file used to transfer data to PostgreSQL.

Example: maxFileSize=512

Returns:

  • (Integer)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#passwordString

Endpoint connection password.

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#plugin_nameString

Specifies the plugin to use to create a replication slot.

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#portInteger

Endpoint TCP port. The default is 5432.

Returns:

  • (Integer)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#secrets_manager_access_role_arnString

The full Amazon Resource Name (ARN) of the IAM role that specifies DMS as the trusted entity and grants the required permissions to access the value in SecretsManagerSecret. The role must allow the iam:PassRole action. SecretsManagerSecret has the value of the Amazon Web Services Secrets Manager secret that allows access to the PostgreSQL endpoint.

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 for UserName, Password, ServerName, and Port. You can't specify both. For more information on creating this SecretsManagerSecret and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to access it, see Using secrets to access Database Migration Service resources in the Database Migration Service User Guide.

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#secrets_manager_secret_idString

The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that contains the PostgreSQL endpoint connection details.

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#server_nameString

Fully qualified domain name of the endpoint.

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#slot_nameString

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 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 of CdcStartPosition. If the specified slot doesn't exist or the task doesn't have a valid CdcStartPosition setting, DMS raises an error.

For more information about setting the CdcStartPosition request parameter, see Determining a CDC native start point in the Database Migration Service User Guide. For more information about using CdcStartPosition, see CreateReplicationTask, StartReplicationTask, and ModifyReplicationTask.

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#trim_space_in_charBoolean

Use the TrimSpaceInChar source endpoint setting to trim data on CHAR and NCHAR data types during migration. The default value is true.

Returns:

  • (Boolean)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end

#usernameString

Endpoint connection user name.

Returns:

  • (String)


7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
# File 'gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb', line 7989

class PostgreSQLSettings < Struct.new(
  :after_connect_script,
  :capture_ddls,
  :max_file_size,
  :database_name,
  :ddl_artifacts_schema,
  :execute_timeout,
  :fail_tasks_on_lob_truncation,
  :heartbeat_enable,
  :heartbeat_schema,
  :heartbeat_frequency,
  :password,
  :port,
  :server_name,
  :username,
  :slot_name,
  :plugin_name,
  :secrets_manager_access_role_arn,
  :secrets_manager_secret_id,
  :trim_space_in_char)
  SENSITIVE = [:password]
  include Aws::Structure
end