DatabaseMigrationService / Client / create_data_provider

create_data_provider#

DatabaseMigrationService.Client.create_data_provider(**kwargs)#

Creates a data provider using the provided settings. A data provider stores a data store type and location information about your database.

See also: AWS API Documentation

Request Syntax

response = client.create_data_provider(
    DataProviderName='string',
    Description='string',
    Engine='string',
    Settings={
        'PostgreSqlSettings': {
            'ServerName': 'string',
            'Port': 123,
            'DatabaseName': 'string',
            'SslMode': 'none'|'require'|'verify-ca'|'verify-full',
            'CertificateArn': 'string'
        },
        'MySqlSettings': {
            'ServerName': 'string',
            'Port': 123,
            'SslMode': 'none'|'require'|'verify-ca'|'verify-full',
            'CertificateArn': 'string'
        },
        'OracleSettings': {
            'ServerName': 'string',
            'Port': 123,
            'DatabaseName': 'string',
            'SslMode': 'none'|'require'|'verify-ca'|'verify-full',
            'CertificateArn': 'string',
            'AsmServer': 'string',
            'SecretsManagerOracleAsmSecretId': 'string',
            'SecretsManagerOracleAsmAccessRoleArn': 'string',
            'SecretsManagerSecurityDbEncryptionSecretId': 'string',
            'SecretsManagerSecurityDbEncryptionAccessRoleArn': 'string'
        },
        'MicrosoftSqlServerSettings': {
            'ServerName': 'string',
            'Port': 123,
            'DatabaseName': 'string',
            'SslMode': 'none'|'require'|'verify-ca'|'verify-full',
            'CertificateArn': 'string'
        }
    },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string',
            'ResourceArn': 'string'
        },
    ]
)
Parameters:
  • DataProviderName (string) – A user-friendly name for the data provider.

  • Description (string) – A user-friendly description of the data provider.

  • Engine (string) –

    [REQUIRED]

    The type of database engine for the data provider. Valid values include "aurora", "aurora_postgresql", "mysql", "oracle", "postgres", and "sqlserver". A value of "aurora" represents Amazon Aurora MySQL-Compatible Edition.

  • Settings (dict) –

    [REQUIRED]

    The settings in JSON format for a data provider.

    Note

    This is a Tagged Union structure. Only one of the following top level keys can be set: PostgreSqlSettings, MySqlSettings, OracleSettings, MicrosoftSqlServerSettings.

    • PostgreSqlSettings (dict) –

      Provides information that defines a PostgreSQL data provider.

      • ServerName (string) –

        The name of the PostgreSQL server.

      • Port (integer) –

        The port value for the PostgreSQL data provider.

      • DatabaseName (string) –

        The database name on the PostgreSQL data provider.

      • SslMode (string) –

        The SSL mode used to connect to the PostgreSQL data provider. The default value is none.

      • CertificateArn (string) –

        The Amazon Resource Name (ARN) of the certificate used for SSL connection.

    • MySqlSettings (dict) –

      Provides information that defines a MySQL data provider.

      • ServerName (string) –

        The name of the MySQL server.

      • Port (integer) –

        The port value for the MySQL data provider.

      • SslMode (string) –

        The SSL mode used to connect to the MySQL data provider. The default value is none.

      • CertificateArn (string) –

        The Amazon Resource Name (ARN) of the certificate used for SSL connection.

    • OracleSettings (dict) –

      Provides information that defines an Oracle data provider.

      • ServerName (string) –

        The name of the Oracle server.

      • Port (integer) –

        The port value for the Oracle data provider.

      • DatabaseName (string) –

        The database name on the Oracle data provider.

      • SslMode (string) –

        The SSL mode used to connect to the Oracle data provider. The default value is none.

      • CertificateArn (string) –

        The Amazon Resource Name (ARN) of the certificate used for SSL connection.

      • AsmServer (string) –

        The address of your Oracle Automatic Storage Management (ASM) server. You can set this value from the asm_server value. You set asm_server as part of the extra connection attribute string to access an Oracle server with Binary Reader that uses ASM. For more information, see Configuration for change data capture (CDC) on an Oracle source database.

      • SecretsManagerOracleAsmSecretId (string) –

        The identifier of the secret in Secrets Manager that contains the Oracle ASM connection details.

        Required only if your data provider uses the Oracle ASM server.

      • SecretsManagerOracleAsmAccessRoleArn (string) –

        The ARN of the IAM role that provides access to the secret in Secrets Manager that contains the Oracle ASM connection details.

      • SecretsManagerSecurityDbEncryptionSecretId (string) –

        The identifier of the secret in Secrets Manager that contains the transparent data encryption (TDE) password. DMS requires this password to access Oracle redo logs encrypted by TDE using Binary Reader.

      • SecretsManagerSecurityDbEncryptionAccessRoleArn (string) –

        The ARN of the IAM role that provides access to the secret in Secrets Manager that contains the TDE password.

    • MicrosoftSqlServerSettings (dict) –

      Provides information that defines a Microsoft SQL Server data provider.

      • ServerName (string) –

        The name of the Microsoft SQL Server server.

      • Port (integer) –

        The port value for the Microsoft SQL Server data provider.

      • DatabaseName (string) –

        The database name on the Microsoft SQL Server data provider.

      • SslMode (string) –

        The SSL mode used to connect to the Microsoft SQL Server data provider. The default value is none.

      • CertificateArn (string) –

        The Amazon Resource Name (ARN) of the certificate used for SSL connection.

  • Tags (list) –

    One or more tags to be assigned to the data provider.

    • (dict) –

      A user-defined key-value pair that describes metadata added to an DMS resource and that is used by operations such as the following:

      • AddTagsToResource

      • ListTagsForResource

      • RemoveTagsFromResource

      • Key (string) –

        A key is the required name of the tag. The string value can be 1-128 Unicode characters in length and can’t be prefixed with “aws:” or “dms:”. The string can only contain only the set of Unicode letters, digits, white-space, ‘_’, ‘.’, ‘/’, ‘=’, ‘+’, ‘-’ (Java regular expressions: “^([\p{L}\p{Z}\p{N}_.:/=+\-]*)$”).

      • Value (string) –

        A value is the optional value of the tag. The string value can be 1-256 Unicode characters in length and can’t be prefixed with “aws:” or “dms:”. The string can only contain only the set of Unicode letters, digits, white-space, ‘_’, ‘.’, ‘/’, ‘=’, ‘+’, ‘-’ (Java regular expressions: “^([\p{L}\p{Z}\p{N}_.:/=+\-]*)$”).

      • ResourceArn (string) –

        The Amazon Resource Name (ARN) string that uniquely identifies the resource for which the tag is created.

Return type:

dict

Returns:

Response Syntax

{
    'DataProvider': {
        'DataProviderName': 'string',
        'DataProviderArn': 'string',
        'DataProviderCreationTime': datetime(2015, 1, 1),
        'Description': 'string',
        'Engine': 'string',
        'Settings': {
            'PostgreSqlSettings': {
                'ServerName': 'string',
                'Port': 123,
                'DatabaseName': 'string',
                'SslMode': 'none'|'require'|'verify-ca'|'verify-full',
                'CertificateArn': 'string'
            },
            'MySqlSettings': {
                'ServerName': 'string',
                'Port': 123,
                'SslMode': 'none'|'require'|'verify-ca'|'verify-full',
                'CertificateArn': 'string'
            },
            'OracleSettings': {
                'ServerName': 'string',
                'Port': 123,
                'DatabaseName': 'string',
                'SslMode': 'none'|'require'|'verify-ca'|'verify-full',
                'CertificateArn': 'string',
                'AsmServer': 'string',
                'SecretsManagerOracleAsmSecretId': 'string',
                'SecretsManagerOracleAsmAccessRoleArn': 'string',
                'SecretsManagerSecurityDbEncryptionSecretId': 'string',
                'SecretsManagerSecurityDbEncryptionAccessRoleArn': 'string'
            },
            'MicrosoftSqlServerSettings': {
                'ServerName': 'string',
                'Port': 123,
                'DatabaseName': 'string',
                'SslMode': 'none'|'require'|'verify-ca'|'verify-full',
                'CertificateArn': 'string'
            }
        }
    }
}

Response Structure

  • (dict) –

    • DataProvider (dict) –

      The data provider that was created.

      • DataProviderName (string) –

        The name of the data provider.

      • DataProviderArn (string) –

        The Amazon Resource Name (ARN) string that uniquely identifies the data provider.

      • DataProviderCreationTime (datetime) –

        The time the data provider was created.

      • Description (string) –

        A description of the data provider. Descriptions can have up to 31 characters. A description can contain only ASCII letters, digits, and hyphens (‘-‘). Also, it can’t end with a hyphen or contain two consecutive hyphens, and can only begin with a letter.

      • Engine (string) –

        The type of database engine for the data provider. Valid values include "aurora", "aurora_postgresql", "mysql", "oracle", "postgres", and "sqlserver". A value of "aurora" represents Amazon Aurora MySQL-Compatible Edition.

      • Settings (dict) –

        The settings in JSON format for a data provider.

        Note

        This is a Tagged Union structure. Only one of the following top level keys will be set: PostgreSqlSettings, MySqlSettings, OracleSettings, MicrosoftSqlServerSettings. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
        
        • PostgreSqlSettings (dict) –

          Provides information that defines a PostgreSQL data provider.

          • ServerName (string) –

            The name of the PostgreSQL server.

          • Port (integer) –

            The port value for the PostgreSQL data provider.

          • DatabaseName (string) –

            The database name on the PostgreSQL data provider.

          • SslMode (string) –

            The SSL mode used to connect to the PostgreSQL data provider. The default value is none.

          • CertificateArn (string) –

            The Amazon Resource Name (ARN) of the certificate used for SSL connection.

        • MySqlSettings (dict) –

          Provides information that defines a MySQL data provider.

          • ServerName (string) –

            The name of the MySQL server.

          • Port (integer) –

            The port value for the MySQL data provider.

          • SslMode (string) –

            The SSL mode used to connect to the MySQL data provider. The default value is none.

          • CertificateArn (string) –

            The Amazon Resource Name (ARN) of the certificate used for SSL connection.

        • OracleSettings (dict) –

          Provides information that defines an Oracle data provider.

          • ServerName (string) –

            The name of the Oracle server.

          • Port (integer) –

            The port value for the Oracle data provider.

          • DatabaseName (string) –

            The database name on the Oracle data provider.

          • SslMode (string) –

            The SSL mode used to connect to the Oracle data provider. The default value is none.

          • CertificateArn (string) –

            The Amazon Resource Name (ARN) of the certificate used for SSL connection.

          • AsmServer (string) –

            The address of your Oracle Automatic Storage Management (ASM) server. You can set this value from the asm_server value. You set asm_server as part of the extra connection attribute string to access an Oracle server with Binary Reader that uses ASM. For more information, see Configuration for change data capture (CDC) on an Oracle source database.

          • SecretsManagerOracleAsmSecretId (string) –

            The identifier of the secret in Secrets Manager that contains the Oracle ASM connection details.

            Required only if your data provider uses the Oracle ASM server.

          • SecretsManagerOracleAsmAccessRoleArn (string) –

            The ARN of the IAM role that provides access to the secret in Secrets Manager that contains the Oracle ASM connection details.

          • SecretsManagerSecurityDbEncryptionSecretId (string) –

            The identifier of the secret in Secrets Manager that contains the transparent data encryption (TDE) password. DMS requires this password to access Oracle redo logs encrypted by TDE using Binary Reader.

          • SecretsManagerSecurityDbEncryptionAccessRoleArn (string) –

            The ARN of the IAM role that provides access to the secret in Secrets Manager that contains the TDE password.

        • MicrosoftSqlServerSettings (dict) –

          Provides information that defines a Microsoft SQL Server data provider.

          • ServerName (string) –

            The name of the Microsoft SQL Server server.

          • Port (integer) –

            The port value for the Microsoft SQL Server data provider.

          • DatabaseName (string) –

            The database name on the Microsoft SQL Server data provider.

          • SslMode (string) –

            The SSL mode used to connect to the Microsoft SQL Server data provider. The default value is none.

          • CertificateArn (string) –

            The Amazon Resource Name (ARN) of the certificate used for SSL connection.

Exceptions

  • DatabaseMigrationService.Client.exceptions.ResourceQuotaExceededFault

  • DatabaseMigrationService.Client.exceptions.AccessDeniedFault

  • DatabaseMigrationService.Client.exceptions.ResourceAlreadyExistsFault