Class MicrosoftSQLServerSettings

java.lang.Object
software.amazon.awssdk.services.databasemigration.model.MicrosoftSQLServerSettings
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<MicrosoftSQLServerSettings.Builder,MicrosoftSQLServerSettings>

@Generated("software.amazon.awssdk:codegen") public final class MicrosoftSQLServerSettings extends Object implements SdkPojo, Serializable, ToCopyableBuilder<MicrosoftSQLServerSettings.Builder,MicrosoftSQLServerSettings>

Provides information that defines a Microsoft SQL Server endpoint.

See Also:
  • Method Details

    • port

      public final Integer port()

      Endpoint TCP port.

      Returns:
      Endpoint TCP port.
    • bcpPacketSize

      public final Integer bcpPacketSize()

      The maximum size of the packets (in bytes) used to transfer data using BCP.

      Returns:
      The maximum size of the packets (in bytes) used to transfer data using BCP.
    • databaseName

      public final String databaseName()

      Database name for the endpoint.

      Returns:
      Database name for the endpoint.
    • controlTablesFileGroup

      public final String controlTablesFileGroup()

      Specifies a file group for the DMS internal tables. When the replication task starts, all the internal DMS control tables (awsdms_ apply_exception, awsdms_apply, awsdms_changes) are created for the specified file group.

      Returns:
      Specifies a file group for the DMS internal tables. When the replication task starts, all the internal DMS control tables (awsdms_ apply_exception, awsdms_apply, awsdms_changes) are created for the specified file group.
    • password

      public final String password()

      Endpoint connection password.

      Returns:
      Endpoint connection password.
    • querySingleAlwaysOnNode

      public final Boolean querySingleAlwaysOnNode()

      Cleans and recreates table metadata information on the replication instance when a mismatch occurs. An example is a situation where running an alter DDL statement on a table might result in different information about the table cached in the replication instance.

      Returns:
      Cleans and recreates table metadata information on the replication instance when a mismatch occurs. An example is a situation where running an alter DDL statement on a table might result in different information about the table cached in the replication instance.
    • readBackupOnly

      public final Boolean readBackupOnly()

      When this attribute is set to Y, DMS only reads changes from transaction log backups and doesn't read from the active transaction log file during ongoing replication. Setting this parameter to Y enables you to control active transaction log file growth during full load and ongoing replication tasks. However, it can add some source latency to ongoing replication.

      Returns:
      When this attribute is set to Y, DMS only reads changes from transaction log backups and doesn't read from the active transaction log file during ongoing replication. Setting this parameter to Y enables you to control active transaction log file growth during full load and ongoing replication tasks. However, it can add some source latency to ongoing replication.
    • safeguardPolicy

      public final SafeguardPolicy safeguardPolicy()

      Use this attribute to minimize the need to access the backup log and enable DMS to prevent truncation using one of the following two methods.

      Start transactions in the database: This is the default method. When this method is used, DMS prevents TLOG truncation by mimicking a transaction in the database. As long as such a transaction is open, changes that appear after the transaction started aren't truncated. If you need Microsoft Replication to be enabled in your database, then you must choose this method.

      Exclusively use sp_repldone within a single task: When this method is used, DMS reads the changes and then uses sp_repldone to mark the TLOG transactions as ready for truncation. Although this method doesn't involve any transactional activities, it can only be used when Microsoft Replication isn't running. Also, when using this method, only one DMS task can access the database at any given time. Therefore, if you need to run parallel DMS tasks against the same database, use the default method.

      If the service returns an enum value that is not available in the current SDK version, safeguardPolicy will return SafeguardPolicy.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from safeguardPolicyAsString().

      Returns:
      Use this attribute to minimize the need to access the backup log and enable DMS to prevent truncation using one of the following two methods.

      Start transactions in the database: This is the default method. When this method is used, DMS prevents TLOG truncation by mimicking a transaction in the database. As long as such a transaction is open, changes that appear after the transaction started aren't truncated. If you need Microsoft Replication to be enabled in your database, then you must choose this method.

      Exclusively use sp_repldone within a single task: When this method is used, DMS reads the changes and then uses sp_repldone to mark the TLOG transactions as ready for truncation. Although this method doesn't involve any transactional activities, it can only be used when Microsoft Replication isn't running. Also, when using this method, only one DMS task can access the database at any given time. Therefore, if you need to run parallel DMS tasks against the same database, use the default method.

      See Also:
    • safeguardPolicyAsString

      public final String safeguardPolicyAsString()

      Use this attribute to minimize the need to access the backup log and enable DMS to prevent truncation using one of the following two methods.

      Start transactions in the database: This is the default method. When this method is used, DMS prevents TLOG truncation by mimicking a transaction in the database. As long as such a transaction is open, changes that appear after the transaction started aren't truncated. If you need Microsoft Replication to be enabled in your database, then you must choose this method.

      Exclusively use sp_repldone within a single task: When this method is used, DMS reads the changes and then uses sp_repldone to mark the TLOG transactions as ready for truncation. Although this method doesn't involve any transactional activities, it can only be used when Microsoft Replication isn't running. Also, when using this method, only one DMS task can access the database at any given time. Therefore, if you need to run parallel DMS tasks against the same database, use the default method.

      If the service returns an enum value that is not available in the current SDK version, safeguardPolicy will return SafeguardPolicy.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from safeguardPolicyAsString().

      Returns:
      Use this attribute to minimize the need to access the backup log and enable DMS to prevent truncation using one of the following two methods.

      Start transactions in the database: This is the default method. When this method is used, DMS prevents TLOG truncation by mimicking a transaction in the database. As long as such a transaction is open, changes that appear after the transaction started aren't truncated. If you need Microsoft Replication to be enabled in your database, then you must choose this method.

      Exclusively use sp_repldone within a single task: When this method is used, DMS reads the changes and then uses sp_repldone to mark the TLOG transactions as ready for truncation. Although this method doesn't involve any transactional activities, it can only be used when Microsoft Replication isn't running. Also, when using this method, only one DMS task can access the database at any given time. Therefore, if you need to run parallel DMS tasks against the same database, use the default method.

      See Also:
    • serverName

      public final String serverName()

      Fully qualified domain name of the endpoint. For an Amazon RDS SQL Server instance, this is the output of DescribeDBInstances, in the Endpoint.Address field.

      Returns:
      Fully qualified domain name of the endpoint. For an Amazon RDS SQL Server instance, this is the output of DescribeDBInstances, in the Endpoint.Address field.
    • username

      public final String username()

      Endpoint connection user name.

      Returns:
      Endpoint connection user name.
    • useBcpFullLoad

      public final Boolean useBcpFullLoad()

      Use this to attribute to transfer data for full-load operations using BCP. When the target table contains an identity column that does not exist in the source table, you must disable the use BCP for loading table option.

      Returns:
      Use this to attribute to transfer data for full-load operations using BCP. When the target table contains an identity column that does not exist in the source table, you must disable the use BCP for loading table option.
    • useThirdPartyBackupDevice

      public final Boolean useThirdPartyBackupDevice()

      When this attribute is set to Y, DMS processes third-party transaction log backups if they are created in native format.

      Returns:
      When this attribute is set to Y, DMS processes third-party transaction log backups if they are created in native format.
    • secretsManagerAccessRoleArn

      public final String secretsManagerAccessRoleArn()

      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 SQL Server 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:
      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 SQL Server 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.

    • secretsManagerSecretId

      public final String secretsManagerSecretId()

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

      Returns:
      The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that contains the SQL Server endpoint connection details.
    • trimSpaceInChar

      public final Boolean trimSpaceInChar()

      Use the TrimSpaceInChar source endpoint setting to right-trim data on CHAR and NCHAR data types during migration. Setting TrimSpaceInChar does not left-trim data. The default value is true.

      Returns:
      Use the TrimSpaceInChar source endpoint setting to right-trim data on CHAR and NCHAR data types during migration. Setting TrimSpaceInChar does not left-trim data. The default value is true.
    • tlogAccessMode

      public final TlogAccessMode tlogAccessMode()

      Indicates the mode used to fetch CDC data.

      If the service returns an enum value that is not available in the current SDK version, tlogAccessMode will return TlogAccessMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from tlogAccessModeAsString().

      Returns:
      Indicates the mode used to fetch CDC data.
      See Also:
    • tlogAccessModeAsString

      public final String tlogAccessModeAsString()

      Indicates the mode used to fetch CDC data.

      If the service returns an enum value that is not available in the current SDK version, tlogAccessMode will return TlogAccessMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from tlogAccessModeAsString().

      Returns:
      Indicates the mode used to fetch CDC data.
      See Also:
    • forceLobLookup

      public final Boolean forceLobLookup()

      Forces LOB lookup on inline LOB.

      Returns:
      Forces LOB lookup on inline LOB.
    • authenticationMethod

      public final SqlServerAuthenticationMethod authenticationMethod()

      Specifies the authentication method to be used with Microsoft SQL Server.

      If the service returns an enum value that is not available in the current SDK version, authenticationMethod will return SqlServerAuthenticationMethod.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from authenticationMethodAsString().

      Returns:
      Specifies the authentication method to be used with Microsoft SQL Server.
      See Also:
    • authenticationMethodAsString

      public final String authenticationMethodAsString()

      Specifies the authentication method to be used with Microsoft SQL Server.

      If the service returns an enum value that is not available in the current SDK version, authenticationMethod will return SqlServerAuthenticationMethod.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from authenticationMethodAsString().

      Returns:
      Specifies the authentication method to be used with Microsoft SQL Server.
      See Also:
    • toBuilder

      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<MicrosoftSQLServerSettings.Builder,MicrosoftSQLServerSettings>
      Returns:
      a builder for type T
    • builder

      public static MicrosoftSQLServerSettings.Builder builder()
    • serializableBuilderClass

      public static Class<? extends MicrosoftSQLServerSettings.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.