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

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

Settings in JSON format for the source GCP MySQL endpoint.

See Also:
  • Method Details

    • afterConnectScript

      public final String afterConnectScript()

      Specifies a script to run immediately after DMS connects to the endpoint. The migration task continues running regardless if the SQL statement succeeds or fails.

      For this parameter, provide the code of the script itself, not the name of a file containing the script.

      Returns:
      Specifies a script to run immediately after DMS connects to the endpoint. The migration task continues running regardless if the SQL statement succeeds or fails.

      For this parameter, provide the code of the script itself, not the name of a file containing the script.

    • cleanSourceMetadataOnMismatch

      public final Boolean cleanSourceMetadataOnMismatch()

      Cleans and recreates table metadata information on the replication instance when a mismatch occurs. For example, in a situation where running an alter DDL on the table could 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. For example, in a situation where running an alter DDL on the table could result in different information about the table cached in the replication instance.
    • databaseName

      public final String databaseName()

      Database name for the endpoint. For a MySQL source or target endpoint, don't explicitly specify the database using the DatabaseName request parameter on either the CreateEndpoint or ModifyEndpoint API call. Specifying DatabaseName when you create or modify 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.

      Returns:
      Database name for the endpoint. For a MySQL source or target endpoint, don't explicitly specify the database using the DatabaseName request parameter on either the CreateEndpoint or ModifyEndpoint API call. Specifying DatabaseName when you create or modify 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.
    • eventsPollInterval

      public final Integer eventsPollInterval()

      Specifies how often to check the binary log for new changes/events when the database is idle. The default is five seconds.

      Example: eventsPollInterval=5;

      In the example, DMS checks for changes in the binary logs every five seconds.

      Returns:
      Specifies how often to check the binary log for new changes/events when the database is idle. The default is five seconds.

      Example: eventsPollInterval=5;

      In the example, DMS checks for changes in the binary logs every five seconds.

    • targetDbType

      public final TargetDbType targetDbType()

      Specifies where to migrate source tables on the target, either to a single database or multiple databases.

      Example: targetDbType=MULTIPLE_DATABASES

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

      Returns:
      Specifies where to migrate source tables on the target, either to a single database or multiple databases.

      Example: targetDbType=MULTIPLE_DATABASES

      See Also:
    • targetDbTypeAsString

      public final String targetDbTypeAsString()

      Specifies where to migrate source tables on the target, either to a single database or multiple databases.

      Example: targetDbType=MULTIPLE_DATABASES

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

      Returns:
      Specifies where to migrate source tables on the target, either to a single database or multiple databases.

      Example: targetDbType=MULTIPLE_DATABASES

      See Also:
    • maxFileSize

      public final Integer maxFileSize()

      Specifies the maximum size (in KB) of any .csv file used to transfer data to a MySQL-compatible database.

      Example: maxFileSize=512

      Returns:
      Specifies the maximum size (in KB) of any .csv file used to transfer data to a MySQL-compatible database.

      Example: maxFileSize=512

    • parallelLoadThreads

      public final Integer parallelLoadThreads()

      Improves performance when loading data into the MySQL-compatible target database. Specifies how many threads to use to load the data into the MySQL-compatible target database. Setting a large number of threads can have an adverse effect on database performance, because a separate connection is required for each thread. The default is one.

      Example: parallelLoadThreads=1

      Returns:
      Improves performance when loading data into the MySQL-compatible target database. Specifies how many threads to use to load the data into the MySQL-compatible target database. Setting a large number of threads can have an adverse effect on database performance, because a separate connection is required for each thread. The default is one.

      Example: parallelLoadThreads=1

    • password

      public final String password()

      Endpoint connection password.

      Returns:
      Endpoint connection password.
    • port

      public final Integer port()

      Endpoint TCP port.

      Returns:
      Endpoint TCP port.
    • serverName

      public final String serverName()

      The MySQL host name.

      Returns:
      The MySQL host name.
    • serverTimezone

      public final String serverTimezone()

      Specifies the time zone for the source MySQL database.

      Example: serverTimezone=US/Pacific;

      Note: Do not enclose time zones in single quotes.

      Returns:
      Specifies the time zone for the source MySQL database.

      Example: serverTimezone=US/Pacific;

      Note: Do not enclose time zones in single quotes.

    • username

      public final String username()

      Endpoint connection user name.

      Returns:
      Endpoint connection user name.
    • 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 MySQL 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 MySQL 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 MySQL endpoint connection details.

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

      public GcpMySQLSettings.Builder 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<GcpMySQLSettings.Builder,GcpMySQLSettings>
      Returns:
      a builder for type T
    • builder

      public static GcpMySQLSettings.Builder builder()
    • serializableBuilderClass

      public static Class<? extends GcpMySQLSettings.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.