RDS / Client / restore_db_instance_from_db_snapshot

restore_db_instance_from_db_snapshot#

RDS.Client.restore_db_instance_from_db_snapshot(**kwargs)#

Creates a new DB instance from a DB snapshot. The target database is created from the source database restore point with most of the source’s original configuration, including the default security group and DB parameter group. By default, the new DB instance is created as a Single-AZ deployment, except when the instance is a SQL Server instance that has an option group associated with mirroring. In this case, the instance becomes a Multi-AZ deployment, not a Single-AZ deployment.

If you want to replace your original DB instance with the new, restored DB instance, then rename your original DB instance before you call the RestoreDBInstanceFromDBSnapshot operation. RDS doesn’t allow two DB instances with the same name. After you have renamed your original DB instance with a different identifier, then you can pass the original name of the DB instance as the DBInstanceIdentifier in the call to the RestoreDBInstanceFromDBSnapshot operation. The result is that you replace the original DB instance with the DB instance created from the snapshot.

If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier must be the ARN of the shared DB snapshot.

Note

This command doesn’t apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use RestoreDBClusterFromSnapshot.

See also: AWS API Documentation

Request Syntax

response = client.restore_db_instance_from_db_snapshot(
    DBInstanceIdentifier='string',
    DBSnapshotIdentifier='string',
    DBInstanceClass='string',
    Port=123,
    AvailabilityZone='string',
    DBSubnetGroupName='string',
    MultiAZ=True|False,
    PubliclyAccessible=True|False,
    AutoMinorVersionUpgrade=True|False,
    LicenseModel='string',
    DBName='string',
    Engine='string',
    Iops=123,
    OptionGroupName='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    StorageType='string',
    TdeCredentialArn='string',
    TdeCredentialPassword='string',
    VpcSecurityGroupIds=[
        'string',
    ],
    Domain='string',
    DomainFqdn='string',
    DomainOu='string',
    DomainAuthSecretArn='string',
    DomainDnsIps=[
        'string',
    ],
    CopyTagsToSnapshot=True|False,
    DomainIAMRoleName='string',
    EnableIAMDatabaseAuthentication=True|False,
    EnableCloudwatchLogsExports=[
        'string',
    ],
    ProcessorFeatures=[
        {
            'Name': 'string',
            'Value': 'string'
        },
    ],
    UseDefaultProcessorFeatures=True|False,
    DBParameterGroupName='string',
    DeletionProtection=True|False,
    EnableCustomerOwnedIp=True|False,
    CustomIamInstanceProfile='string',
    BackupTarget='string',
    NetworkType='string',
    StorageThroughput=123,
    DBClusterSnapshotIdentifier='string',
    AllocatedStorage=123,
    DedicatedLogVolume=True|False
)
Parameters:
  • DBInstanceIdentifier (string) –

    [REQUIRED]

    The name of the DB instance to create from the DB snapshot. This parameter isn’t case-sensitive.

    Constraints:

    • Must contain from 1 to 63 numbers, letters, or hyphens.

    • First character must be a letter.

    • Can’t end with a hyphen or contain two consecutive hyphens.

    Example: my-snapshot-id

  • DBSnapshotIdentifier (string) –

    The identifier for the DB snapshot to restore from.

    Constraints:

    • Must match the identifier of an existing DB snapshot.

    • Can’t be specified when DBClusterSnapshotIdentifier is specified.

    • Must be specified when DBClusterSnapshotIdentifier isn’t specified.

    • If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier must be the ARN of the shared DB snapshot.

  • DBInstanceClass (string) –

    The compute and memory capacity of the Amazon RDS DB instance, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

    Default: The same DBInstanceClass as the original DB instance.

  • Port (integer) –

    The port number on which the database accepts connections.

    Default: The same port as the original DB instance

    Constraints: Value must be 1150-65535

  • AvailabilityZone (string) –

    The Availability Zone (AZ) where the DB instance will be created.

    Default: A random, system-chosen Availability Zone.

    Constraint: You can’t specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

    Example: us-east-1a

  • DBSubnetGroupName (string) –

    The name of the DB subnet group to use for the new instance.

    Constraints:

    • If supplied, must match the name of an existing DB subnet group.

    Example: mydbsubnetgroup

  • MultiAZ (boolean) –

    Specifies whether the DB instance is a Multi-AZ deployment.

    This setting doesn’t apply to RDS Custom.

    Constraint: You can’t specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

  • PubliclyAccessible (boolean) –

    Specifies whether the DB instance is publicly accessible.

    When the DB instance is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB instance’s virtual private cloud (VPC). It resolves to the public IP address from outside of the DB instance’s VPC. Access to the DB instance is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB instance doesn’t permit it.

    When the DB instance isn’t publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

    For more information, see CreateDBInstance.

  • AutoMinorVersionUpgrade (boolean) –

    Specifies whether to automatically apply minor version upgrades to the DB instance during the maintenance window.

    If you restore an RDS Custom DB instance, you must disable this parameter.

  • LicenseModel (string) –

    License model information for the restored DB instance.

    This setting doesn’t apply to RDS Custom.

    Default: Same as source.

    Valid Values: license-included | bring-your-own-license | general-public-license

  • DBName (string) –

    The name of the database for the restored DB instance.

    This parameter only applies to RDS for Oracle and RDS for SQL Server DB instances. It doesn’t apply to the other engines or to RDS Custom DB instances.

  • Engine (string) –

    The database engine to use for the new instance.

    This setting doesn’t apply to RDS Custom.

    Default: The same as source

    Constraint: Must be compatible with the engine of the source. For example, you can restore a MariaDB 10.1 DB instance from a MySQL 5.6 snapshot.

    Valid Values:

    • db2-ae

    • db2-se

    • mariadb

    • mysql

    • oracle-ee

    • oracle-ee-cdb

    • oracle-se2

    • oracle-se2-cdb

    • postgres

    • sqlserver-ee

    • sqlserver-se

    • sqlserver-ex

    • sqlserver-web

  • Iops (integer) –

    Specifies the amount of provisioned IOPS for the DB instance, expressed in I/O operations per second. If this parameter isn’t specified, the IOPS value is taken from the backup. If this parameter is set to 0, the new instance is converted to a non-PIOPS instance. The conversion takes additional time, though your DB instance is available for connections before the conversion starts.

    The provisioned IOPS value must follow the requirements for your database engine. For more information, see Amazon RDS Provisioned IOPS storage in the Amazon RDS User Guide.

    Constraints: Must be an integer greater than 1000.

  • OptionGroupName (string) –

    The name of the option group to be used for the restored DB instance.

    Permanent options, such as the TDE option for Oracle Advanced Security TDE, can’t be removed from an option group, and that option group can’t be removed from a DB instance after it is associated with a DB instance.

    This setting doesn’t apply to RDS Custom.

  • Tags (list) –

    A list of tags. For more information, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.

    • (dict) –

      Metadata assigned to an Amazon RDS resource consisting of a key-value pair.

      For more information, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.

      • Key (string) –

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

      • Value (string) –

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

  • StorageType (string) –

    Specifies the storage type to be associated with the DB instance.

    Valid Values: gp2 | gp3 | io1 | io2 | standard

    If you specify io1, io2, or gp3, you must also include a value for the Iops parameter.

    Default: io1 if the Iops parameter is specified, otherwise gp2

  • TdeCredentialArn (string) –

    The ARN from the key store with which to associate the instance for TDE encryption.

    This setting doesn’t apply to RDS Custom.

  • TdeCredentialPassword (string) –

    The password for the given ARN from the key store in order to access the device.

    This setting doesn’t apply to RDS Custom.

  • VpcSecurityGroupIds (list) –

    A list of EC2 VPC security groups to associate with this DB instance.

    Default: The default EC2 VPC security group for the DB subnet group’s VPC.

    • (string) –

  • Domain (string) –

    The Active Directory directory ID to restore the DB instance in. The domain/ must be created prior to this operation. Currently, you can create only Db2, MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

    For more information, see Kerberos Authentication in the Amazon RDS User Guide.

    This setting doesn’t apply to RDS Custom.

  • DomainFqdn (string) –

    The fully qualified domain name (FQDN) of an Active Directory domain.

    Constraints:

    • Can’t be longer than 64 characters.

    Example: mymanagedADtest.mymanagedAD.mydomain

  • DomainOu (string) –

    The Active Directory organizational unit for your DB instance to join.

    Constraints:

    • Must be in the distinguished name format.

    • Can’t be longer than 64 characters.

    Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain

  • DomainAuthSecretArn (string) –

    The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

    Constraints:

    • Can’t be longer than 64 characters.

    Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456

  • DomainDnsIps (list) –

    The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers.

    Constraints:

    • Two IP addresses must be provided. If there isn’t a secondary domain controller, use the IP address of the primary domain controller for both entries in the list.

    Example: 123.124.125.126,234.235.236.237

    • (string) –

  • CopyTagsToSnapshot (boolean) –

    Specifies whether to copy all tags from the restored DB instance to snapshots of the DB instance.

    In most cases, tags aren’t copied by default. However, when you restore a DB instance from a DB snapshot, RDS checks whether you specify new tags. If yes, the new tags are added to the restored DB instance. If there are no new tags, RDS looks for the tags from the source DB instance for the DB snapshot, and then adds those tags to the restored DB instance.

    For more information, see Copying tags to DB instance snapshots in the Amazon RDS User Guide.

  • DomainIAMRoleName (string) –

    The name of the IAM role to use when making API calls to the Directory Service.

    This setting doesn’t apply to RDS Custom DB instances.

  • EnableIAMDatabaseAuthentication (boolean) –

    Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping is disabled.

    For more information about IAM database authentication, see IAM Database Authentication for MySQL and PostgreSQL in the Amazon RDS User Guide.

    This setting doesn’t apply to RDS Custom.

  • EnableCloudwatchLogsExports (list) –

    The list of logs for the restored DB instance to export to CloudWatch Logs. The values in the list depend on the DB engine. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

    This setting doesn’t apply to RDS Custom.

    • (string) –

  • ProcessorFeatures (list) –

    The number of CPU cores and the number of threads per core for the DB instance class of the DB instance.

    This setting doesn’t apply to RDS Custom.

    • (dict) –

      Contains the processor features of a DB instance class.

      To specify the number of CPU cores, use the coreCount feature name for the Name parameter. To specify the number of threads per core, use the threadsPerCore feature name for the Name parameter.

      You can set the processor features of the DB instance class for a DB instance when you call one of the following actions:

      • CreateDBInstance

      • ModifyDBInstance

      • RestoreDBInstanceFromDBSnapshot

      • RestoreDBInstanceFromS3

      • RestoreDBInstanceToPointInTime

      You can view the valid processor values for a particular instance class by calling the DescribeOrderableDBInstanceOptions action and specifying the instance class for the DBInstanceClass parameter.

      In addition, you can use the following actions for DB instance class processor information:

      • DescribeDBInstances

      • DescribeDBSnapshots

      • DescribeValidDBInstanceModifications

      If you call DescribeDBInstances, ProcessorFeature returns non-null values only if the following conditions are met:

      • You are accessing an Oracle DB instance.

      • Your Oracle DB instance class supports configuring the number of CPU cores and threads per core.

      • The current number CPU cores and threads is set to a non-default value.

      For more information, see Configuring the Processor of the DB Instance Class in the Amazon RDS User Guide.

      • Name (string) –

        The name of the processor feature. Valid names are coreCount and threadsPerCore.

      • Value (string) –

        The value of a processor feature name.

  • UseDefaultProcessorFeatures (boolean) –

    Specifies whether the DB instance class of the DB instance uses its default processor features.

    This setting doesn’t apply to RDS Custom.

  • DBParameterGroupName (string) –

    The name of the DB parameter group to associate with this DB instance.

    If you don’t specify a value for DBParameterGroupName, then RDS uses the default DBParameterGroup for the specified DB engine.

    This setting doesn’t apply to RDS Custom.

    Constraints:

    • If supplied, must match the name of an existing DB parameter group.

    • Must be 1 to 255 letters, numbers, or hyphens.

    • First character must be a letter.

    • Can’t end with a hyphen or contain two consecutive hyphens.

  • DeletionProtection (boolean) – Specifies whether to enable deletion protection for the DB instance. The database can’t be deleted when deletion protection is enabled. By default, deletion protection isn’t enabled. For more information, see Deleting a DB Instance.

  • EnableCustomerOwnedIp (boolean) –

    Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance.

    A CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance from outside of its virtual private cloud (VPC) on your local network.

    This setting doesn’t apply to RDS Custom.

    For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

    For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

  • CustomIamInstanceProfile (string) –

    The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. The instance profile must meet the following requirements:

    • The profile must exist in your account.

    • The profile must have an IAM role that Amazon EC2 has permissions to assume.

    • The instance profile name and the associated IAM role name must start with the prefix AWSRDSCustom.

    For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide.

    This setting is required for RDS Custom.

  • BackupTarget (string) –

    Specifies where automated backups and manual snapshots are stored for the restored DB instance.

    Possible values are outposts (Amazon Web Services Outposts) and region (Amazon Web Services Region). The default is region.

    For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

  • NetworkType (string) –

    The network type of the DB instance.

    Valid Values:

    • IPV4

    • DUAL

    The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols ( DUAL).

    For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

  • StorageThroughput (integer) –

    Specifies the storage throughput value for the DB instance.

    This setting doesn’t apply to RDS Custom or Amazon Aurora.

  • DBClusterSnapshotIdentifier (string) –

    The identifier for the Multi-AZ DB cluster snapshot to restore from.

    For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

    Constraints:

    • Must match the identifier of an existing Multi-AZ DB cluster snapshot.

    • Can’t be specified when DBSnapshotIdentifier is specified.

    • Must be specified when DBSnapshotIdentifier isn’t specified.

    • If you are restoring from a shared manual Multi-AZ DB cluster snapshot, the DBClusterSnapshotIdentifier must be the ARN of the shared snapshot.

    • Can’t be the identifier of an Aurora DB cluster snapshot.

  • AllocatedStorage (integer) –

    The amount of storage (in gibibytes) to allocate initially for the DB instance. Follow the allocation rules specified in CreateDBInstance.

    Note

    Be sure to allocate enough storage for your new DB instance so that the restore operation can succeed. You can also allocate additional storage for future growth.

  • DedicatedLogVolume (boolean) – Specifies whether to enable a dedicated log volume (DLV) for the DB instance.

Return type:

dict

Returns:

Response Syntax

{
    'DBInstance': {
        'DBInstanceIdentifier': 'string',
        'DBInstanceClass': 'string',
        'Engine': 'string',
        'DBInstanceStatus': 'string',
        'AutomaticRestartTime': datetime(2015, 1, 1),
        'MasterUsername': 'string',
        'DBName': 'string',
        'Endpoint': {
            'Address': 'string',
            'Port': 123,
            'HostedZoneId': 'string'
        },
        'AllocatedStorage': 123,
        'InstanceCreateTime': datetime(2015, 1, 1),
        'PreferredBackupWindow': 'string',
        'BackupRetentionPeriod': 123,
        'DBSecurityGroups': [
            {
                'DBSecurityGroupName': 'string',
                'Status': 'string'
            },
        ],
        'VpcSecurityGroups': [
            {
                'VpcSecurityGroupId': 'string',
                'Status': 'string'
            },
        ],
        'DBParameterGroups': [
            {
                'DBParameterGroupName': 'string',
                'ParameterApplyStatus': 'string'
            },
        ],
        'AvailabilityZone': 'string',
        'DBSubnetGroup': {
            'DBSubnetGroupName': 'string',
            'DBSubnetGroupDescription': 'string',
            'VpcId': 'string',
            'SubnetGroupStatus': 'string',
            'Subnets': [
                {
                    'SubnetIdentifier': 'string',
                    'SubnetAvailabilityZone': {
                        'Name': 'string'
                    },
                    'SubnetOutpost': {
                        'Arn': 'string'
                    },
                    'SubnetStatus': 'string'
                },
            ],
            'DBSubnetGroupArn': 'string',
            'SupportedNetworkTypes': [
                'string',
            ]
        },
        'PreferredMaintenanceWindow': 'string',
        'PendingModifiedValues': {
            'DBInstanceClass': 'string',
            'AllocatedStorage': 123,
            'MasterUserPassword': 'string',
            'Port': 123,
            'BackupRetentionPeriod': 123,
            'MultiAZ': True|False,
            'EngineVersion': 'string',
            'LicenseModel': 'string',
            'Iops': 123,
            'DBInstanceIdentifier': 'string',
            'StorageType': 'string',
            'CACertificateIdentifier': 'string',
            'DBSubnetGroupName': 'string',
            'PendingCloudwatchLogsExports': {
                'LogTypesToEnable': [
                    'string',
                ],
                'LogTypesToDisable': [
                    'string',
                ]
            },
            'ProcessorFeatures': [
                {
                    'Name': 'string',
                    'Value': 'string'
                },
            ],
            'IAMDatabaseAuthenticationEnabled': True|False,
            'AutomationMode': 'full'|'all-paused',
            'ResumeFullAutomationModeTime': datetime(2015, 1, 1),
            'StorageThroughput': 123,
            'Engine': 'string',
            'DedicatedLogVolume': True|False,
            'MultiTenant': True|False
        },
        'LatestRestorableTime': datetime(2015, 1, 1),
        'MultiAZ': True|False,
        'EngineVersion': 'string',
        'AutoMinorVersionUpgrade': True|False,
        'ReadReplicaSourceDBInstanceIdentifier': 'string',
        'ReadReplicaDBInstanceIdentifiers': [
            'string',
        ],
        'ReadReplicaDBClusterIdentifiers': [
            'string',
        ],
        'ReplicaMode': 'open-read-only'|'mounted',
        'LicenseModel': 'string',
        'Iops': 123,
        'OptionGroupMemberships': [
            {
                'OptionGroupName': 'string',
                'Status': 'string'
            },
        ],
        'CharacterSetName': 'string',
        'NcharCharacterSetName': 'string',
        'SecondaryAvailabilityZone': 'string',
        'PubliclyAccessible': True|False,
        'StatusInfos': [
            {
                'StatusType': 'string',
                'Normal': True|False,
                'Status': 'string',
                'Message': 'string'
            },
        ],
        'StorageType': 'string',
        'TdeCredentialArn': 'string',
        'DbInstancePort': 123,
        'DBClusterIdentifier': 'string',
        'StorageEncrypted': True|False,
        'KmsKeyId': 'string',
        'DbiResourceId': 'string',
        'CACertificateIdentifier': 'string',
        'DomainMemberships': [
            {
                'Domain': 'string',
                'Status': 'string',
                'FQDN': 'string',
                'IAMRoleName': 'string',
                'OU': 'string',
                'AuthSecretArn': 'string',
                'DnsIps': [
                    'string',
                ]
            },
        ],
        'CopyTagsToSnapshot': True|False,
        'MonitoringInterval': 123,
        'EnhancedMonitoringResourceArn': 'string',
        'MonitoringRoleArn': 'string',
        'PromotionTier': 123,
        'DBInstanceArn': 'string',
        'Timezone': 'string',
        'IAMDatabaseAuthenticationEnabled': True|False,
        'PerformanceInsightsEnabled': True|False,
        'PerformanceInsightsKMSKeyId': 'string',
        'PerformanceInsightsRetentionPeriod': 123,
        'EnabledCloudwatchLogsExports': [
            'string',
        ],
        'ProcessorFeatures': [
            {
                'Name': 'string',
                'Value': 'string'
            },
        ],
        'DeletionProtection': True|False,
        'AssociatedRoles': [
            {
                'RoleArn': 'string',
                'FeatureName': 'string',
                'Status': 'string'
            },
        ],
        'ListenerEndpoint': {
            'Address': 'string',
            'Port': 123,
            'HostedZoneId': 'string'
        },
        'MaxAllocatedStorage': 123,
        'TagList': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'DBInstanceAutomatedBackupsReplications': [
            {
                'DBInstanceAutomatedBackupsArn': 'string'
            },
        ],
        'CustomerOwnedIpEnabled': True|False,
        'AwsBackupRecoveryPointArn': 'string',
        'ActivityStreamStatus': 'stopped'|'starting'|'started'|'stopping',
        'ActivityStreamKmsKeyId': 'string',
        'ActivityStreamKinesisStreamName': 'string',
        'ActivityStreamMode': 'sync'|'async',
        'ActivityStreamEngineNativeAuditFieldsIncluded': True|False,
        'AutomationMode': 'full'|'all-paused',
        'ResumeFullAutomationModeTime': datetime(2015, 1, 1),
        'CustomIamInstanceProfile': 'string',
        'BackupTarget': 'string',
        'NetworkType': 'string',
        'ActivityStreamPolicyStatus': 'locked'|'unlocked'|'locking-policy'|'unlocking-policy',
        'StorageThroughput': 123,
        'DBSystemId': 'string',
        'MasterUserSecret': {
            'SecretArn': 'string',
            'SecretStatus': 'string',
            'KmsKeyId': 'string'
        },
        'CertificateDetails': {
            'CAIdentifier': 'string',
            'ValidTill': datetime(2015, 1, 1)
        },
        'ReadReplicaSourceDBClusterIdentifier': 'string',
        'PercentProgress': 'string',
        'DedicatedLogVolume': True|False,
        'IsStorageConfigUpgradeAvailable': True|False,
        'MultiTenant': True|False
    }
}

Response Structure

  • (dict) –

    • DBInstance (dict) –

      Contains the details of an Amazon RDS DB instance.

      This data type is used as a response element in the operations CreateDBInstance, CreateDBInstanceReadReplica, DeleteDBInstance, DescribeDBInstances, ModifyDBInstance, PromoteReadReplica, RebootDBInstance, RestoreDBInstanceFromDBSnapshot, RestoreDBInstanceFromS3, RestoreDBInstanceToPointInTime, StartDBInstance, and StopDBInstance.

      • DBInstanceIdentifier (string) –

        The user-supplied database identifier. This identifier is the unique key that identifies a DB instance.

      • DBInstanceClass (string) –

        The name of the compute and memory capacity class of the DB instance.

      • Engine (string) –

        The database engine used for this DB instance.

      • DBInstanceStatus (string) –

        The current state of this database.

        For information about DB instance statuses, see Viewing DB instance status in the Amazon RDS User Guide.

      • AutomaticRestartTime (datetime) –

        The time when a stopped DB instance is restarted automatically.

      • MasterUsername (string) –

        The master username for the DB instance.

      • DBName (string) –

        The initial database name that you provided (if required) when you created the DB instance. This name is returned for the life of your DB instance. For an RDS for Oracle CDB instance, the name identifies the PDB rather than the CDB.

      • Endpoint (dict) –

        The connection endpoint for the DB instance.

        Note

        The endpoint might not be shown for instances with the status of creating.

        • Address (string) –

          Specifies the DNS address of the DB instance.

        • Port (integer) –

          Specifies the port that the database engine is listening on.

        • HostedZoneId (string) –

          Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.

      • AllocatedStorage (integer) –

        The amount of storage in gibibytes (GiB) allocated for the DB instance.

      • InstanceCreateTime (datetime) –

        The date and time when the DB instance was created.

      • PreferredBackupWindow (string) –

        The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.

      • BackupRetentionPeriod (integer) –

        The number of days for which automatic DB snapshots are retained.

      • DBSecurityGroups (list) –

        A list of DB security group elements containing DBSecurityGroup.Name and DBSecurityGroup.Status subelements.

        • (dict) –

          This data type is used as a response element in the following actions:

          • ModifyDBInstance

          • RebootDBInstance

          • RestoreDBInstanceFromDBSnapshot

          • RestoreDBInstanceToPointInTime

          • DBSecurityGroupName (string) –

            The name of the DB security group.

          • Status (string) –

            The status of the DB security group.

      • VpcSecurityGroups (list) –

        The list of Amazon EC2 VPC security groups that the DB instance belongs to.

        • (dict) –

          This data type is used as a response element for queries on VPC security group membership.

          • VpcSecurityGroupId (string) –

            The name of the VPC security group.

          • Status (string) –

            The membership status of the VPC security group.

            Currently, the only valid status is active.

      • DBParameterGroups (list) –

        The list of DB parameter groups applied to this DB instance.

        • (dict) –

          The status of the DB parameter group.

          This data type is used as a response element in the following actions:

          • CreateDBInstance

          • CreateDBInstanceReadReplica

          • DeleteDBInstance

          • ModifyDBInstance

          • RebootDBInstance

          • RestoreDBInstanceFromDBSnapshot

          • DBParameterGroupName (string) –

            The name of the DB parameter group.

          • ParameterApplyStatus (string) –

            The status of parameter updates.

      • AvailabilityZone (string) –

        The name of the Availability Zone where the DB instance is located.

      • DBSubnetGroup (dict) –

        Information about the subnet group associated with the DB instance, including the name, description, and subnets in the subnet group.

        • DBSubnetGroupName (string) –

          The name of the DB subnet group.

        • DBSubnetGroupDescription (string) –

          Provides the description of the DB subnet group.

        • VpcId (string) –

          Provides the VpcId of the DB subnet group.

        • SubnetGroupStatus (string) –

          Provides the status of the DB subnet group.

        • Subnets (list) –

          Contains a list of Subnet elements.

          • (dict) –

            This data type is used as a response element for the DescribeDBSubnetGroups operation.

            • SubnetIdentifier (string) –

              The identifier of the subnet.

            • SubnetAvailabilityZone (dict) –

              Contains Availability Zone information.

              This data type is used as an element in the OrderableDBInstanceOption data type.

              • Name (string) –

                The name of the Availability Zone.

            • SubnetOutpost (dict) –

              If the subnet is associated with an Outpost, this value specifies the Outpost.

              For more information about RDS on Outposts, see Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

              • Arn (string) –

                The Amazon Resource Name (ARN) of the Outpost.

            • SubnetStatus (string) –

              The status of the subnet.

        • DBSubnetGroupArn (string) –

          The Amazon Resource Name (ARN) for the DB subnet group.

        • SupportedNetworkTypes (list) –

          The network type of the DB subnet group.

          Valid values:

          • IPV4

          • DUAL

          A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols ( DUAL).

          For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

          • (string) –

      • PreferredMaintenanceWindow (string) –

        The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

      • PendingModifiedValues (dict) –

        Information about pending changes to the DB instance. This information is returned only when there are pending changes. Specific changes are identified by subelements.

        • DBInstanceClass (string) –

          The name of the compute and memory capacity class for the DB instance.

        • AllocatedStorage (integer) –

          The allocated storage size for the DB instance specified in gibibytes (GiB).

        • MasterUserPassword (string) –

          The master credentials for the DB instance.

        • Port (integer) –

          The port for the DB instance.

        • BackupRetentionPeriod (integer) –

          The number of days for which automated backups are retained.

        • MultiAZ (boolean) –

          Indicates whether the Single-AZ DB instance will change to a Multi-AZ deployment.

        • EngineVersion (string) –

          The database engine version.

        • LicenseModel (string) –

          The license model for the DB instance.

          Valid values: license-included | bring-your-own-license | general-public-license

        • Iops (integer) –

          The Provisioned IOPS value for the DB instance.

        • DBInstanceIdentifier (string) –

          The database identifier for the DB instance.

        • StorageType (string) –

          The storage type of the DB instance.

        • CACertificateIdentifier (string) –

          The identifier of the CA certificate for the DB instance.

          For more information, see Using SSL/TLS to encrypt a connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS to encrypt a connection to a DB cluster in the Amazon Aurora User Guide.

        • DBSubnetGroupName (string) –

          The DB subnet group for the DB instance.

        • PendingCloudwatchLogsExports (dict) –

          A list of the log types whose configuration is still pending. In other words, these log types are in the process of being activated or deactivated.

          • LogTypesToEnable (list) –

            Log types that are in the process of being deactivated. After they are deactivated, these log types aren’t exported to CloudWatch Logs.

            • (string) –

          • LogTypesToDisable (list) –

            Log types that are in the process of being enabled. After they are enabled, these log types are exported to CloudWatch Logs.

            • (string) –

        • ProcessorFeatures (list) –

          The number of CPU cores and the number of threads per core for the DB instance class of the DB instance.

          • (dict) –

            Contains the processor features of a DB instance class.

            To specify the number of CPU cores, use the coreCount feature name for the Name parameter. To specify the number of threads per core, use the threadsPerCore feature name for the Name parameter.

            You can set the processor features of the DB instance class for a DB instance when you call one of the following actions:

            • CreateDBInstance

            • ModifyDBInstance

            • RestoreDBInstanceFromDBSnapshot

            • RestoreDBInstanceFromS3

            • RestoreDBInstanceToPointInTime

            You can view the valid processor values for a particular instance class by calling the DescribeOrderableDBInstanceOptions action and specifying the instance class for the DBInstanceClass parameter.

            In addition, you can use the following actions for DB instance class processor information:

            • DescribeDBInstances

            • DescribeDBSnapshots

            • DescribeValidDBInstanceModifications

            If you call DescribeDBInstances, ProcessorFeature returns non-null values only if the following conditions are met:

            • You are accessing an Oracle DB instance.

            • Your Oracle DB instance class supports configuring the number of CPU cores and threads per core.

            • The current number CPU cores and threads is set to a non-default value.

            For more information, see Configuring the Processor of the DB Instance Class in the Amazon RDS User Guide.

            • Name (string) –

              The name of the processor feature. Valid names are coreCount and threadsPerCore.

            • Value (string) –

              The value of a processor feature name.

        • IAMDatabaseAuthenticationEnabled (boolean) –

          Indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled.

        • AutomationMode (string) –

          The automation mode of the RDS Custom DB instance: full or all-paused. If full, the DB instance automates monitoring and instance recovery. If all-paused, the instance pauses automation for the duration set by --resume-full-automation-mode-minutes.

        • ResumeFullAutomationModeTime (datetime) –

          The number of minutes to pause the automation. When the time period ends, RDS Custom resumes full automation. The minimum value is 60 (default). The maximum value is 1,440.

        • StorageThroughput (integer) –

          The storage throughput of the DB instance.

        • Engine (string) –

          The database engine of the DB instance.

        • DedicatedLogVolume (boolean) –

          Indicates whether the DB instance has a dedicated log volume (DLV) enabled.>

        • MultiTenant (boolean) –

          Indicates whether the DB instance will change to the multi-tenant configuration (TRUE) or the single-tenant configuration (FALSE).

      • LatestRestorableTime (datetime) –

        The latest time to which a database in this DB instance can be restored with point-in-time restore.

      • MultiAZ (boolean) –

        Indicates whether the DB instance is a Multi-AZ deployment. This setting doesn’t apply to RDS Custom DB instances.

      • EngineVersion (string) –

        The version of the database engine.

      • AutoMinorVersionUpgrade (boolean) –

        Indicates whether minor version patches are applied automatically.

      • ReadReplicaSourceDBInstanceIdentifier (string) –

        The identifier of the source DB instance if this DB instance is a read replica.

      • ReadReplicaDBInstanceIdentifiers (list) –

        The identifiers of the read replicas associated with this DB instance.

        • (string) –

      • ReadReplicaDBClusterIdentifiers (list) –

        The identifiers of Aurora DB clusters to which the RDS DB instance is replicated as a read replica. For example, when you create an Aurora read replica of an RDS for MySQL DB instance, the Aurora MySQL DB cluster for the Aurora read replica is shown. This output doesn’t contain information about cross-Region Aurora read replicas.

        Note

        Currently, each RDS DB instance can have only one Aurora read replica.

        • (string) –

      • ReplicaMode (string) –

        The open mode of an Oracle read replica. The default is open-read-only. For more information, see Working with Oracle Read Replicas for Amazon RDS in the Amazon RDS User Guide.

        Note

        This attribute is only supported in RDS for Oracle.

      • LicenseModel (string) –

        The license model information for this DB instance. This setting doesn’t apply to RDS Custom DB instances.

      • Iops (integer) –

        The Provisioned IOPS (I/O operations per second) value for the DB instance.

      • OptionGroupMemberships (list) –

        The list of option group memberships for this DB instance.

        • (dict) –

          Provides information on the option groups the DB instance is a member of.

          • OptionGroupName (string) –

            The name of the option group that the instance belongs to.

          • Status (string) –

            The status of the DB instance’s option group membership. Valid values are: in-sync, pending-apply, pending-removal, pending-maintenance-apply, pending-maintenance-removal, applying, removing, and failed.

      • CharacterSetName (string) –

        If present, specifies the name of the character set that this instance is associated with.

      • NcharCharacterSetName (string) –

        The name of the NCHAR character set for the Oracle DB instance. This character set specifies the Unicode encoding for data stored in table columns of type NCHAR, NCLOB, or NVARCHAR2.

      • SecondaryAvailabilityZone (string) –

        If present, specifies the name of the secondary Availability Zone for a DB instance with multi-AZ support.

      • PubliclyAccessible (boolean) –

        Indicates whether the DB instance is publicly accessible.

        When the DB cluster is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB cluster’s virtual private cloud (VPC). It resolves to the public IP address from outside of the DB cluster’s VPC. Access to the DB cluster is ultimately controlled by the security group it uses. That public access isn’t permitted if the security group assigned to the DB cluster doesn’t permit it.

        When the DB instance isn’t publicly accessible, it is an internal DB instance with a DNS name that resolves to a private IP address.

        For more information, see CreateDBInstance.

      • StatusInfos (list) –

        The status of a read replica. If the DB instance isn’t a read replica, the value is blank.

        • (dict) –

          Provides a list of status information for a DB instance.

          • StatusType (string) –

            This value is currently “read replication.”

          • Normal (boolean) –

            Indicates whether the instance is operating normally (TRUE) or is in an error state (FALSE).

          • Status (string) –

            The status of the DB instance. For a StatusType of read replica, the values can be replicating, replication stop point set, replication stop point reached, error, stopped, or terminated.

          • Message (string) –

            Details of the error if there is an error for the instance. If the instance isn’t in an error state, this value is blank.

      • StorageType (string) –

        The storage type associated with the DB instance.

      • TdeCredentialArn (string) –

        The ARN from the key store with which the instance is associated for TDE encryption.

      • DbInstancePort (integer) –

        The port that the DB instance listens on. If the DB instance is part of a DB cluster, this can be a different port than the DB cluster port.

      • DBClusterIdentifier (string) –

        If the DB instance is a member of a DB cluster, indicates the name of the DB cluster that the DB instance is a member of.

      • StorageEncrypted (boolean) –

        Indicates whether the DB instance is encrypted.

      • KmsKeyId (string) –

        If StorageEncrypted is enabled, the Amazon Web Services KMS key identifier for the encrypted DB instance.

        The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

      • DbiResourceId (string) –

        The Amazon Web Services Region-unique, immutable identifier for the DB instance. This identifier is found in Amazon Web Services CloudTrail log entries whenever the Amazon Web Services KMS key for the DB instance is accessed.

      • CACertificateIdentifier (string) –

        The identifier of the CA certificate for this DB instance.

        For more information, see Using SSL/TLS to encrypt a connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS to encrypt a connection to a DB cluster in the Amazon Aurora User Guide.

      • DomainMemberships (list) –

        The Active Directory Domain membership records associated with the DB instance.

        • (dict) –

          An Active Directory Domain membership record associated with the DB instance or cluster.

          • Domain (string) –

            The identifier of the Active Directory Domain.

          • Status (string) –

            The status of the Active Directory Domain membership for the DB instance or cluster. Values include joined, pending-join, failed, and so on.

          • FQDN (string) –

            The fully qualified domain name (FQDN) of the Active Directory Domain.

          • IAMRoleName (string) –

            The name of the IAM role used when making API calls to the Directory Service.

          • OU (string) –

            The Active Directory organizational unit for the DB instance or cluster.

          • AuthSecretArn (string) –

            The ARN for the Secrets Manager secret with the credentials for the user that’s a member of the domain.

          • DnsIps (list) –

            The IPv4 DNS IP addresses of the primary and secondary Active Directory domain controllers.

            • (string) –

      • CopyTagsToSnapshot (boolean) –

        Indicates whether tags are copied from the DB instance to snapshots of the DB instance.

        This setting doesn’t apply to Amazon Aurora DB instances. Copying tags to snapshots is managed by the DB cluster. Setting this value for an Aurora DB instance has no effect on the DB cluster setting. For more information, see DBCluster.

      • MonitoringInterval (integer) –

        The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance.

      • EnhancedMonitoringResourceArn (string) –

        The Amazon Resource Name (ARN) of the Amazon CloudWatch Logs log stream that receives the Enhanced Monitoring metrics data for the DB instance.

      • MonitoringRoleArn (string) –

        The ARN for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs.

      • PromotionTier (integer) –

        The order of priority in which an Aurora Replica is promoted to the primary instance after a failure of the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster in the Amazon Aurora User Guide.

      • DBInstanceArn (string) –

        The Amazon Resource Name (ARN) for the DB instance.

      • Timezone (string) –

        The time zone of the DB instance. In most cases, the Timezone element is empty. Timezone content appears only for Microsoft SQL Server DB instances that were created with a time zone specified.

      • IAMDatabaseAuthenticationEnabled (boolean) –

        Indicates whether mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts is enabled for the DB instance.

        For a list of engine versions that support IAM database authentication, see IAM database authentication in the Amazon RDS User Guide and IAM database authentication in Aurora in the Amazon Aurora User Guide.

      • PerformanceInsightsEnabled (boolean) –

        Indicates whether Performance Insights is enabled for the DB instance.

      • PerformanceInsightsKMSKeyId (string) –

        The Amazon Web Services KMS key identifier for encryption of Performance Insights data.

        The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

      • PerformanceInsightsRetentionPeriod (integer) –

        The number of days to retain Performance Insights data.

        Valid Values:

        • 7

        • month * 31, where month is a number of months from 1-23. Examples: 93 (3 months * 31), 341 (11 months * 31), 589 (19 months * 31)

        • 731

        Default: 7 days

      • EnabledCloudwatchLogsExports (list) –

        A list of log types that this DB instance is configured to export to CloudWatch Logs.

        Log types vary by DB engine. For information about the log types for each DB engine, see Monitoring Amazon RDS log files in the Amazon RDS User Guide.

        • (string) –

      • ProcessorFeatures (list) –

        The number of CPU cores and the number of threads per core for the DB instance class of the DB instance.

        • (dict) –

          Contains the processor features of a DB instance class.

          To specify the number of CPU cores, use the coreCount feature name for the Name parameter. To specify the number of threads per core, use the threadsPerCore feature name for the Name parameter.

          You can set the processor features of the DB instance class for a DB instance when you call one of the following actions:

          • CreateDBInstance

          • ModifyDBInstance

          • RestoreDBInstanceFromDBSnapshot

          • RestoreDBInstanceFromS3

          • RestoreDBInstanceToPointInTime

          You can view the valid processor values for a particular instance class by calling the DescribeOrderableDBInstanceOptions action and specifying the instance class for the DBInstanceClass parameter.

          In addition, you can use the following actions for DB instance class processor information:

          • DescribeDBInstances

          • DescribeDBSnapshots

          • DescribeValidDBInstanceModifications

          If you call DescribeDBInstances, ProcessorFeature returns non-null values only if the following conditions are met:

          • You are accessing an Oracle DB instance.

          • Your Oracle DB instance class supports configuring the number of CPU cores and threads per core.

          • The current number CPU cores and threads is set to a non-default value.

          For more information, see Configuring the Processor of the DB Instance Class in the Amazon RDS User Guide.

          • Name (string) –

            The name of the processor feature. Valid names are coreCount and threadsPerCore.

          • Value (string) –

            The value of a processor feature name.

      • DeletionProtection (boolean) –

        Indicates whether the DB instance has deletion protection enabled. The database can’t be deleted when deletion protection is enabled. For more information, see Deleting a DB Instance.

      • AssociatedRoles (list) –

        The Amazon Web Services Identity and Access Management (IAM) roles associated with the DB instance.

        • (dict) –

          Information about an Amazon Web Services Identity and Access Management (IAM) role that is associated with a DB instance.

          • RoleArn (string) –

            The Amazon Resource Name (ARN) of the IAM role that is associated with the DB instance.

          • FeatureName (string) –

            The name of the feature associated with the Amazon Web Services Identity and Access Management (IAM) role. For information about supported feature names, see DBEngineVersion.

          • Status (string) –

            Information about the state of association between the IAM role and the DB instance. The Status property returns one of the following values:

            • ACTIVE - the IAM role ARN is associated with the DB instance and can be used to access other Amazon Web Services services on your behalf.

            • PENDING - the IAM role ARN is being associated with the DB instance.

            • INVALID - the IAM role ARN is associated with the DB instance, but the DB instance is unable to assume the IAM role in order to access other Amazon Web Services services on your behalf.

      • ListenerEndpoint (dict) –

        The listener connection endpoint for SQL Server Always On.

        • Address (string) –

          Specifies the DNS address of the DB instance.

        • Port (integer) –

          Specifies the port that the database engine is listening on.

        • HostedZoneId (string) –

          Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.

      • MaxAllocatedStorage (integer) –

        The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance.

      • TagList (list) –

        A list of tags. For more information, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.

        • (dict) –

          Metadata assigned to an Amazon RDS resource consisting of a key-value pair.

          For more information, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.

          • Key (string) –

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

          • Value (string) –

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

      • DBInstanceAutomatedBackupsReplications (list) –

        The list of replicated automated backups associated with the DB instance.

        • (dict) –

          Automated backups of a DB instance replicated to another Amazon Web Services Region. They consist of system backups, transaction logs, and database instance properties.

          • DBInstanceAutomatedBackupsArn (string) –

            The Amazon Resource Name (ARN) of the replicated automated backups.

      • CustomerOwnedIpEnabled (boolean) –

        Indicates whether a customer-owned IP address (CoIP) is enabled for an RDS on Outposts DB instance.

        A *CoIP *provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the DB instance from outside of its virtual private cloud (VPC) on your local network.

        For more information about RDS on Outposts, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

        For more information about CoIPs, see Customer-owned IP addresses in the Amazon Web Services Outposts User Guide.

      • AwsBackupRecoveryPointArn (string) –

        The Amazon Resource Name (ARN) of the recovery point in Amazon Web Services Backup.

      • ActivityStreamStatus (string) –

        The status of the database activity stream.

      • ActivityStreamKmsKeyId (string) –

        The Amazon Web Services KMS key identifier used for encrypting messages in the database activity stream. The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

      • ActivityStreamKinesisStreamName (string) –

        The name of the Amazon Kinesis data stream used for the database activity stream.

      • ActivityStreamMode (string) –

        The mode of the database activity stream. Database events such as a change or access generate an activity stream event. RDS for Oracle always handles these events asynchronously.

      • ActivityStreamEngineNativeAuditFieldsIncluded (boolean) –

        Indicates whether engine-native audit fields are included in the database activity stream.

      • AutomationMode (string) –

        The automation mode of the RDS Custom DB instance: full or all paused. If full, the DB instance automates monitoring and instance recovery. If all paused, the instance pauses automation for the duration set by --resume-full-automation-mode-minutes.

      • ResumeFullAutomationModeTime (datetime) –

        The number of minutes to pause the automation. When the time period ends, RDS Custom resumes full automation. The minimum value is 60 (default). The maximum value is 1,440.

      • CustomIamInstanceProfile (string) –

        The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. The instance profile must meet the following requirements:

        • The profile must exist in your account.

        • The profile must have an IAM role that Amazon EC2 has permissions to assume.

        • The instance profile name and the associated IAM role name must start with the prefix AWSRDSCustom.

        For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide.

      • BackupTarget (string) –

        The location where automated backups and manual snapshots are stored: Amazon Web Services Outposts or the Amazon Web Services Region.

      • NetworkType (string) –

        The network type of the DB instance.

        The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols ( DUAL).

        For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide and Working with a DB instance in a VPC in the Amazon Aurora User Guide.

        Valid Values: IPV4 | DUAL

      • ActivityStreamPolicyStatus (string) –

        The status of the policy state of the activity stream.

      • StorageThroughput (integer) –

        The storage throughput for the DB instance.

        This setting applies only to the gp3 storage type.

      • DBSystemId (string) –

        The Oracle system ID (Oracle SID) for a container database (CDB). The Oracle SID is also the name of the CDB. This setting is only valid for RDS Custom DB instances.

      • MasterUserSecret (dict) –

        The secret managed by RDS in Amazon Web Services Secrets Manager for the master user password.

        For more information, see Password management with Amazon Web Services Secrets Manager in the Amazon RDS User Guide.

        • SecretArn (string) –

          The Amazon Resource Name (ARN) of the secret.

        • SecretStatus (string) –

          The status of the secret.

          The possible status values include the following:

          • creating - The secret is being created.

          • active - The secret is available for normal use and rotation.

          • rotating - The secret is being rotated.

          • impaired - The secret can be used to access database credentials, but it can’t be rotated. A secret might have this status if, for example, permissions are changed so that RDS can no longer access either the secret or the KMS key for the secret. When a secret has this status, you can correct the condition that caused the status. Alternatively, modify the DB instance to turn off automatic management of database credentials, and then modify the DB instance again to turn on automatic management of database credentials.

        • KmsKeyId (string) –

          The Amazon Web Services KMS key identifier that is used to encrypt the secret.

      • CertificateDetails (dict) –

        The details of the DB instance’s server certificate.

        • CAIdentifier (string) –

          The CA identifier of the CA certificate used for the DB instance’s server certificate.

        • ValidTill (datetime) –

          The expiration date of the DB instance’s server certificate.

      • ReadReplicaSourceDBClusterIdentifier (string) –

        The identifier of the source DB cluster if this DB instance is a read replica.

      • PercentProgress (string) –

        The progress of the storage optimization operation as a percentage.

      • DedicatedLogVolume (boolean) –

        Indicates whether the DB instance has a dedicated log volume (DLV) enabled.

      • IsStorageConfigUpgradeAvailable (boolean) –

        Indicates whether an upgrade is recommended for the storage file system configuration on the DB instance. To migrate to the preferred configuration, you can either create a blue/green deployment, or create a read replica from the DB instance. For more information, see Upgrading the storage file system for a DB instance.

      • MultiTenant (boolean) –

        Specifies whether the DB instance is in the multi-tenant configuration (TRUE) or the single-tenant configuration (FALSE).

Exceptions

Examples

The following example restores a DB instance from a DB snapshot.

response = client.restore_db_instance_from_db_snapshot(
    DBInstanceIdentifier='mysqldb-restored',
    DBSnapshotIdentifier='rds:mysqldb-2014-04-22-08-15',
)

print(response)

Expected Output:

{
    'DBInstance': {
        'AllocatedStorage': 200,
        'AutoMinorVersionUpgrade': True,
        'AvailabilityZone': 'us-west-2b',
        'BackupRetentionPeriod': 7,
        'CACertificateIdentifier': 'rds-ca-2015',
        'CopyTagsToSnapshot': False,
        'DBInstanceArn': 'arn:aws:rds:us-west-2:123456789012:db:mysqldb-restored',
        'DBInstanceClass': 'db.t2.small',
        'DBInstanceIdentifier': 'mysqldb-restored',
        'DBInstanceStatus': 'available',
        'DBName': 'sample',
        'DBParameterGroups': [
            {
                'DBParameterGroupName': 'default.mysql5.6',
                'ParameterApplyStatus': 'in-sync',
            },
        ],
        'DBSecurityGroups': [
        ],
        'DBSubnetGroup': {
            'DBSubnetGroupDescription': 'default',
            'DBSubnetGroupName': 'default',
            'SubnetGroupStatus': 'Complete',
            'Subnets': [
                {
                    'SubnetAvailabilityZone': {
                        'Name': 'us-west-2a',
                    },
                    'SubnetIdentifier': 'subnet-77e8db03',
                    'SubnetStatus': 'Active',
                },
                {
                    'SubnetAvailabilityZone': {
                        'Name': 'us-west-2b',
                    },
                    'SubnetIdentifier': 'subnet-c39989a1',
                    'SubnetStatus': 'Active',
                },
                {
                    'SubnetAvailabilityZone': {
                        'Name': 'us-west-2c',
                    },
                    'SubnetIdentifier': 'subnet-4b267b0d',
                    'SubnetStatus': 'Active',
                },
            ],
            'VpcId': 'vpc-c1c5b3a3',
        },
        'DbInstancePort': 0,
        'DbiResourceId': 'db-VNZUCCBTEDC4WR7THXNJO72HVQ',
        'DomainMemberships': [
        ],
        'Engine': 'mysql',
        'EngineVersion': '5.6.27',
        'LicenseModel': 'general-public-license',
        'MasterUsername': 'mymasteruser',
        'MonitoringInterval': 0,
        'MultiAZ': False,
        'OptionGroupMemberships': [
            {
                'OptionGroupName': 'default:mysql-5-6',
                'Status': 'in-sync',
            },
        ],
        'PendingModifiedValues': {
        },
        'PreferredBackupWindow': '12:58-13:28',
        'PreferredMaintenanceWindow': 'tue:10:16-tue:10:46',
        'PubliclyAccessible': True,
        'ReadReplicaDBInstanceIdentifiers': [
        ],
        'StorageEncrypted': False,
        'StorageType': 'gp2',
        'VpcSecurityGroups': [
            {
                'Status': 'active',
                'VpcSecurityGroupId': 'sg-e5e5b0d2',
            },
        ],
    },
    'ResponseMetadata': {
        '...': '...',
    },
}