Skip to content

restore_db_instance_to_point_in_time async

restore_db_instance_to_point_in_time(
    *,
    config_overrides: Optional[AsyncRDSClientConfig] = None,
    source_db_instance_identifier: Optional[String] = None,
    target_db_instance_identifier: Optional[String] = None,
    restore_time: Optional[TStamp] = None,
    use_latest_restorable_time: Optional[Boolean] = None,
    db_instance_class: Optional[String] = None,
    port: Optional[IntegerOptional] = None,
    availability_zone: Optional[String] = None,
    db_subnet_group_name: Optional[String] = None,
    multi_az: Optional[BooleanOptional] = None,
    publicly_accessible: Optional[BooleanOptional] = None,
    auto_minor_version_upgrade: Optional[BooleanOptional] = None,
    license_model: Optional[String] = None,
    db_name: Optional[String] = None,
    engine: Optional[String] = None,
    iops: Optional[IntegerOptional] = None,
    storage_throughput: Optional[IntegerOptional] = None,
    option_group_name: Optional[String] = None,
    copy_tags_to_snapshot: Optional[BooleanOptional] = None,
    tags: Optional[TagList] = None,
    storage_type: Optional[String] = None,
    tde_credential_arn: Optional[String] = None,
    tde_credential_password: Optional[SensitiveString] = None,
    vpc_security_group_ids: Optional[VpcSecurityGroupIdList] = None,
    domain: Optional[String] = None,
    domain_iam_role_name: Optional[String] = None,
    domain_fqdn: Optional[String] = None,
    domain_ou: Optional[String] = None,
    domain_auth_secret_arn: Optional[String] = None,
    domain_dns_ips: Optional[StringList] = None,
    enable_iam_database_authentication: Optional[BooleanOptional] = None,
    enable_cloudwatch_logs_exports: Optional[LogTypeList] = None,
    processor_features: Optional[ProcessorFeatureList] = None,
    use_default_processor_features: Optional[BooleanOptional] = None,
    db_parameter_group_name: Optional[String] = None,
    deletion_protection: Optional[BooleanOptional] = None,
    source_dbi_resource_id: Optional[String] = None,
    max_allocated_storage: Optional[IntegerOptional] = None,
    enable_customer_owned_ip: Optional[BooleanOptional] = None,
    network_type: Optional[String] = None,
    source_db_instance_automated_backups_arn: Optional[String] = None,
    backup_target: Optional[String] = None,
    custom_iam_instance_profile: Optional[String] = None,
    allocated_storage: Optional[IntegerOptional] = None,
    backup_retention_period: Optional[IntegerOptional] = None,
    preferred_backup_window: Optional[String] = None,
    dedicated_log_volume: Optional[BooleanOptional] = None,
    ca_certificate_identifier: Optional[String] = None,
    engine_lifecycle_support: Optional[String] = None,
    additional_storage_volumes: Optional[AdditionalStorageVolumesList] = None,
    tag_specifications: Optional[TagSpecificationList] = None,
    manage_master_user_password: Optional[BooleanOptional] = None,
    master_user_secret_kms_key_id: Optional[String] = None,
) -> RestoreDBInstanceToPointInTimeResult

Restores a DB instance to an arbitrary point in time. You can restore to any point in time before the time identified by the LatestRestorableTime property. You can restore to a point up to the number of days specified by the BackupRetentionPeriod property.

The target database is created with most of the original configuration, but in a system-selected Availability Zone, with the default security group, the default subnet group, and the default 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 that is associated with mirroring; in this case, the instance becomes a mirrored deployment and not a single-AZ deployment.

This operation doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use RestoreDBClusterToPointInTime.

Parameters:

  • source_db_instance_identifier (Optional[String], default: None ) –

    The identifier of the source DB instance from which to restore.

    Constraints:

    • Must match the identifier of an existing DB instance.

  • target_db_instance_identifier (Optional[String], default: None ) –

    The name of the new DB instance to create.

    Constraints:

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

    • First character must be a letter.

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

  • restore_time (Optional[TStamp], default: None ) –

    The date and time to restore from.

    Constraints:

    • Must be a time in Universal Coordinated Time (UTC) format.

    • Must be before the latest restorable time for the DB instance.

    • Can't be specified if the UseLatestRestorableTime parameter is enabled.

    Example: 2009-09-07T23:45:00Z

  • use_latest_restorable_time (Optional[Boolean], default: None ) –

    Specifies whether the DB instance is restored from the latest backup time. By default, the DB instance isn't restored from the latest backup time.

    Constraints:

    • Can't be specified if the RestoreTime parameter is provided.

  • db_instance_class (Optional[String], default: None ) –

    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 DB instance class as the original DB instance.

  • port (Optional[IntegerOptional], default: None ) –

    The port number on which the database accepts connections.

    Default: The same port as the original DB instance.

    Constraints:

    • The value must be 1150-65535.

  • availability_zone (Optional[String], default: None ) –

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

    Default: A random, system-chosen Availability Zone.

    Constraints:

    • You can't specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

    Example: us-east-1a

  • db_subnet_group_name (Optional[String], default: None ) –

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

    Constraints:

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

    Example: mydbsubnetgroup

  • multi_az (Optional[BooleanOptional], default: None ) –

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

    This setting doesn't apply to RDS Custom.

    Constraints:

    • You can't specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

  • publicly_accessible (Optional[BooleanOptional], default: None ) –

    Specifies 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.

  • auto_minor_version_upgrade (Optional[BooleanOptional], default: None ) –

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

    This setting doesn't apply to RDS Custom.

    For more information about automatic minor version upgrades, see Automatically upgrading the minor engine version.

  • license_model (Optional[String], default: None ) –

    The license model information for the restored DB instance.

    License models for RDS for Db2 require additional configuration. The bring your own license (BYOL) model requires a custom parameter group and an Amazon Web Services License Manager self-managed license. The Db2 license through Amazon Web Services Marketplace model requires an Amazon Web Services Marketplace subscription. For more information, see Amazon RDS for Db2 licensing options in the Amazon RDS User Guide.

    This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

    Valid Values:

    • RDS for Db2 - bring-your-own-license | marketplace-license

    • RDS for MariaDB - general-public-license

    • RDS for Microsoft SQL Server - license-included | bring-your-own-media

    • RDS for MySQL - general-public-license

    • RDS for Oracle - bring-your-own-license | license-included

    • RDS for PostgreSQL - postgresql-license

    Default: Same as the source.

  • db_name (Optional[String], default: None ) –

    The database name for the restored DB instance.

    This parameter doesn't apply to the following DB instances:

    • RDS Custom

    • RDS for Db2

    • RDS for MariaDB

    • RDS for MySQL

  • engine (Optional[String], default: None ) –

    The database engine to use for the new instance.

    This setting doesn't apply to RDS Custom.

    Valid Values:

    • db2-ae

    • db2-ce

    • db2-se

    • mariadb

    • mysql

    • oracle-ee

    • oracle-ee-cdb

    • oracle-se2

    • oracle-se2-cdb

    • postgres

    • sqlserver-ee

    • sqlserver-se

    • sqlserver-ex

    • sqlserver-web

    Default: The same as source

    Constraints:

    • Must be compatible with the engine of the source.

  • iops (Optional[IntegerOptional], default: None ) –

    The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB instance.

    This setting doesn't apply to SQL Server.

    Constraints:

    • Must be an integer greater than 1000.

  • storage_throughput (Optional[IntegerOptional], default: None ) –

    The storage throughput value for the DB instance.

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

  • option_group_name (Optional[String], default: None ) –

    The name of the option group to use 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.

  • copy_tags_to_snapshot (Optional[BooleanOptional], default: None ) –

    Specifies whether to copy all tags from the restored DB instance to snapshots of the DB instance. By default, tags are not copied.

  • storage_type (Optional[String], default: None ) –

    The storage type to associate with the DB instance.

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

    Default: io1, if the Iops parameter is specified. Otherwise, gp3.

    Constraints:

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

  • tde_credential_arn (Optional[String], default: None ) –

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

    This setting doesn't apply to RDS Custom.

  • tde_credential_password (Optional[SensitiveString], default: None ) –

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

    This setting doesn't apply to RDS Custom.

  • vpc_security_group_ids (Optional[VpcSecurityGroupIdList], default: None ) –

    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.

  • domain (Optional[String], default: None ) –

    The Active Directory directory ID to restore the DB instance in. Create the domain before running this command. Currently, you can create only the MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

    This setting doesn't apply to RDS Custom.

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

  • domain_iam_role_name (Optional[String], default: None ) –

    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.

  • domain_fqdn (Optional[String], default: None ) –

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

    Constraints:

    • Can't be longer than 64 characters.

    Example: mymanagedADtest.mymanagedAD.mydomain

  • domain_ou (Optional[String], default: None ) –

    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

  • domain_auth_secret_arn (Optional[String], default: None ) –

    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

  • domain_dns_ips (Optional[StringList], default: None ) –

    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

  • enable_iam_database_authentication (Optional[BooleanOptional], default: None ) –

    Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.

    This setting doesn't apply to RDS Custom.

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

  • enable_cloudwatch_logs_exports (Optional[LogTypeList], default: None ) –

    The list of logs that the restored DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. 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.

  • processor_features (Optional[ProcessorFeatureList], default: None ) –

    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.

  • use_default_processor_features (Optional[BooleanOptional], default: None ) –

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

    This setting doesn't apply to RDS Custom.

  • db_parameter_group_name (Optional[String], default: None ) –

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

    If you do not specify a value for DBParameterGroupName, then the default DBParameterGroup for the specified DB engine is used.

    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.

  • deletion_protection (Optional[BooleanOptional], default: None ) –

    Specifies whether the DB instance has deletion protection enabled. 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.

  • source_dbi_resource_id (Optional[String], default: None ) –

    The resource ID of the source DB instance from which to restore.

  • max_allocated_storage (Optional[IntegerOptional], default: None ) –

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

    For more information about this setting, including limitations that apply to it, see Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User Guide.

    This setting doesn't apply to RDS Custom.

  • enable_customer_owned_ip (Optional[BooleanOptional], default: None ) –

    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.

  • network_type (Optional[String], default: None ) –

    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.

    Valid Values:

    • IPV4

    • DUAL

  • source_db_instance_automated_backups_arn (Optional[String], default: None ) –

    The Amazon Resource Name (ARN) of the replicated automated backups from which to restore, for example, arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE.

    This setting doesn't apply to RDS Custom.

  • backup_target (Optional[String], default: None ) –

    The location for storing automated backups and manual snapshots for the restored DB instance.

    Valid Values:

    • local (Dedicated Local Zone)

    • outposts (Amazon Web Services Outposts)

    • region (Amazon Web Services Region)

    Default: region

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

  • custom_iam_instance_profile (Optional[String], default: None ) –

    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.

  • allocated_storage (Optional[IntegerOptional], default: None ) –

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

    This setting isn't valid for RDS for SQL Server.

    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.

  • backup_retention_period (Optional[IntegerOptional], default: None ) –

    The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

    Enabling and disabling backups can result in a brief I/O suspension that lasts from a few seconds to a few minutes, depending on the size and class of your DB instance.

    This setting doesn't apply to Amazon Aurora DB instances. The retention period for automated backups is managed by the DB cluster. For more information, see ModifyDBCluster.

    Default: Uses existing setting

    Constraints:

    • Must be a value from 0 to 35.

    • Can't be set to 0 if the DB instance is a source to read replicas.

    • Can't be set to 0 for an RDS Custom for Oracle DB instance.

  • preferred_backup_window (Optional[String], default: None ) –

    The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod parameter. Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. For more information, see Backup window in the Amazon RDS User Guide.

    This setting doesn't apply to Amazon Aurora DB instances. The daily time range for creating automated backups is managed by the DB cluster. For more information, see ModifyDBCluster.

    Constraints:

    • Must be in the format hh24:mi-hh24:mi.

    • Must be in Universal Coordinated Time (UTC).

    • Must not conflict with the preferred maintenance window.

    • Must be at least 30 minutes.

  • dedicated_log_volume (Optional[BooleanOptional], default: None ) –

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

  • ca_certificate_identifier (Optional[String], default: None ) –

    The CA certificate identifier to use for the DB instance's server certificate.

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

    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.

  • engine_lifecycle_support (Optional[String], default: None ) –

    The lifecycle type for this DB instance.

    By default, this value is set to open-source-rds-extended-support, which enrolls your DB instance into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to open-source-rds-extended-support-disabled. In this case, RDS automatically upgrades your restored DB instance to a higher engine version, if the major engine version is past its end of standard support date.

    You can use this setting to enroll your DB instance into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your DB instance past the end of standard support for that engine version. For more information, see Amazon RDS Extended Support with Amazon RDS in the Amazon RDS User Guide.

    This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the engine lifecycle support is managed by the DB cluster.

    Valid Values: open-source-rds-extended-support | open-source-rds-extended-support-disabled

    Default: open-source-rds-extended-support

  • additional_storage_volumes (Optional[AdditionalStorageVolumesList], default: None ) –

    A list of additional storage volumes to restore to the DB instance. You can restore up to three additional storage volumes using the names rdsdbdata2, rdsdbdata3, and rdsdbdata4. Additional storage volumes are supported for RDS for Oracle and RDS for SQL Server DB instances only.

  • tag_specifications (Optional[TagSpecificationList], default: None ) –

    Tags to assign to resources associated with the DB instance.

    Valid Values:

    • auto-backup - The DB instance's automated backup.

  • manage_master_user_password (Optional[BooleanOptional], default: None ) –

    Specifies whether to manage the master user password with Amazon Web Services Secrets Manager in the restored DB instance.

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

    Constraints:

    • Applies to RDS for Oracle only.

  • master_user_secret_kms_key_id (Optional[String], default: None ) –

    The Amazon Web Services KMS key identifier to encrypt a secret that is automatically generated and managed in Amazon Web Services Secrets Manager.

    This setting is valid only if the master user password is managed by RDS in Amazon Web Services Secrets Manager for the DB instance.

    The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

    If you don't specify MasterUserSecretKmsKeyId, then the aws/secretsmanager KMS key is used to encrypt the secret. If the secret is in a different Amazon Web Services account, then you can't use the aws/secretsmanager KMS key to encrypt the secret, and you must use a customer managed KMS key.

    There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

Raises:

Examples:

To restore a DB instance to a point in time The following example restores test-instance to a new DB instance named restored-test-instance, as of the specified time.

>>> await client.restore_db_instance_to_point_in_time(source_db_instance_identifier='test-instance', target_db_instance_identifier='restored-test-instance', restore_time='2018-07-30T23:45:00.000Z')
Source code in docs_src/capo_rds/_services/async_rds.py
14871
14872
14873
14874
14875
14876
14877
14878
14879
14880
14881
14882
14883
14884
14885
14886
14887
14888
14889
14890
14891
14892
14893
14894
14895
14896
14897
14898
14899
14900
14901
14902
14903
14904
14905
14906
14907
14908
14909
14910
14911
14912
14913
14914
14915
14916
14917
14918
14919
14920
14921
14922
14923
14924
14925
14926
14927
14928
14929
14930
14931
14932
14933
14934
14935
14936
14937
14938
14939
14940
14941
14942
14943
14944
14945
14946
14947
14948
14949
14950
14951
14952
14953
14954
14955
14956
14957
14958
14959
14960
14961
14962
14963
14964
14965
14966
14967
14968
14969
14970
14971
14972
14973
14974
14975
14976
14977
14978
14979
14980
14981
14982
14983
14984
14985
14986
14987
14988
14989
14990
14991
14992
14993
14994
14995
14996
14997
14998
14999
15000
15001
15002
15003
15004
15005
15006
15007
15008
15009
15010
15011
15012
15013
15014
15015
15016
15017
15018
15019
15020
15021
15022
15023
15024
15025
15026
15027
15028
15029
15030
15031
15032
15033
15034
15035
15036
15037
15038
15039
15040
15041
15042
15043
15044
15045
15046
15047
15048
15049
15050
15051
15052
15053
15054
15055
15056
15057
15058
15059
15060
15061
15062
15063
15064
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
15076
15077
15078
15079
15080
15081
15082
15083
15084
15085
15086
15087
15088
15089
15090
15091
15092
15093
15094
15095
15096
15097
15098
15099
15100
15101
15102
15103
15104
15105
15106
15107
15108
15109
15110
15111
15112
15113
15114
15115
15116
15117
15118
15119
15120
15121
15122
15123
15124
15125
15126
15127
15128
15129
15130
15131
15132
15133
15134
15135
15136
15137
15138
15139
15140
15141
15142
15143
15144
15145
15146
15147
15148
15149
15150
15151
15152
15153
15154
15155
15156
15157
15158
15159
15160
15161
15162
15163
15164
15165
15166
15167
15168
15169
15170
15171
15172
15173
15174
15175
15176
15177
15178
15179
15180
15181
15182
15183
15184
15185
15186
15187
15188
15189
15190
15191
15192
15193
15194
15195
15196
15197
15198
15199
15200
15201
15202
15203
15204
15205
15206
15207
15208
15209
15210
15211
15212
15213
15214
15215
15216
async def restore_db_instance_to_point_in_time(
    self,
    *,
    config_overrides: Optional[AsyncRDSClientConfig] = None,
    source_db_instance_identifier: Optional["capo_rds.types.string.String"] = None,
    target_db_instance_identifier: Optional["capo_rds.types.string.String"] = None,
    restore_time: Optional["capo_rds.types.t_stamp.TStamp"] = None,
    use_latest_restorable_time: Optional["capo_rds.types.boolean.Boolean"] = None,
    db_instance_class: Optional["capo_rds.types.string.String"] = None,
    port: Optional["capo_rds.types.integer_optional.IntegerOptional"] = None,
    availability_zone: Optional["capo_rds.types.string.String"] = None,
    db_subnet_group_name: Optional["capo_rds.types.string.String"] = None,
    multi_az: Optional["capo_rds.types.boolean_optional.BooleanOptional"] = None,
    publicly_accessible: Optional[
        "capo_rds.types.boolean_optional.BooleanOptional"
    ] = None,
    auto_minor_version_upgrade: Optional[
        "capo_rds.types.boolean_optional.BooleanOptional"
    ] = None,
    license_model: Optional["capo_rds.types.string.String"] = None,
    db_name: Optional["capo_rds.types.string.String"] = None,
    engine: Optional["capo_rds.types.string.String"] = None,
    iops: Optional["capo_rds.types.integer_optional.IntegerOptional"] = None,
    storage_throughput: Optional[
        "capo_rds.types.integer_optional.IntegerOptional"
    ] = None,
    option_group_name: Optional["capo_rds.types.string.String"] = None,
    copy_tags_to_snapshot: Optional[
        "capo_rds.types.boolean_optional.BooleanOptional"
    ] = None,
    tags: Optional["capo_rds.types.tag_list.TagList"] = None,
    storage_type: Optional["capo_rds.types.string.String"] = None,
    tde_credential_arn: Optional["capo_rds.types.string.String"] = None,
    tde_credential_password: Optional[
        "capo_rds.types.sensitive_string.SensitiveString"
    ] = None,
    vpc_security_group_ids: Optional[
        "capo_rds.types.vpc_security_group_id_list.VpcSecurityGroupIdList"
    ] = None,
    domain: Optional["capo_rds.types.string.String"] = None,
    domain_iam_role_name: Optional["capo_rds.types.string.String"] = None,
    domain_fqdn: Optional["capo_rds.types.string.String"] = None,
    domain_ou: Optional["capo_rds.types.string.String"] = None,
    domain_auth_secret_arn: Optional["capo_rds.types.string.String"] = None,
    domain_dns_ips: Optional["capo_rds.types.string_list.StringList"] = None,
    enable_iam_database_authentication: Optional[
        "capo_rds.types.boolean_optional.BooleanOptional"
    ] = None,
    enable_cloudwatch_logs_exports: Optional[
        "capo_rds.types.log_type_list.LogTypeList"
    ] = None,
    processor_features: Optional[
        "capo_rds.types.processor_feature_list.ProcessorFeatureList"
    ] = None,
    use_default_processor_features: Optional[
        "capo_rds.types.boolean_optional.BooleanOptional"
    ] = None,
    db_parameter_group_name: Optional["capo_rds.types.string.String"] = None,
    deletion_protection: Optional[
        "capo_rds.types.boolean_optional.BooleanOptional"
    ] = None,
    source_dbi_resource_id: Optional["capo_rds.types.string.String"] = None,
    max_allocated_storage: Optional[
        "capo_rds.types.integer_optional.IntegerOptional"
    ] = None,
    enable_customer_owned_ip: Optional[
        "capo_rds.types.boolean_optional.BooleanOptional"
    ] = None,
    network_type: Optional["capo_rds.types.string.String"] = None,
    source_db_instance_automated_backups_arn: Optional[
        "capo_rds.types.string.String"
    ] = None,
    backup_target: Optional["capo_rds.types.string.String"] = None,
    custom_iam_instance_profile: Optional["capo_rds.types.string.String"] = None,
    allocated_storage: Optional[
        "capo_rds.types.integer_optional.IntegerOptional"
    ] = None,
    backup_retention_period: Optional[
        "capo_rds.types.integer_optional.IntegerOptional"
    ] = None,
    preferred_backup_window: Optional["capo_rds.types.string.String"] = None,
    dedicated_log_volume: Optional[
        "capo_rds.types.boolean_optional.BooleanOptional"
    ] = None,
    ca_certificate_identifier: Optional["capo_rds.types.string.String"] = None,
    engine_lifecycle_support: Optional["capo_rds.types.string.String"] = None,
    additional_storage_volumes: Optional[
        "capo_rds.types.additional_storage_volumes_list.AdditionalStorageVolumesList"
    ] = None,
    tag_specifications: Optional[
        "capo_rds.types.tag_specification_list.TagSpecificationList"
    ] = None,
    manage_master_user_password: Optional[
        "capo_rds.types.boolean_optional.BooleanOptional"
    ] = None,
    master_user_secret_kms_key_id: Optional["capo_rds.types.string.String"] = None,
) -> "capo_rds.types.restore_db_instance_to_point_in_time_result.RestoreDBInstanceToPointInTimeResult":
    """<p>Restores a DB instance to an arbitrary point in time. You can restore to any point in time before the time identified by the <code>LatestRestorableTime</code> property. You can restore to a point up to the number of days specified by the <code>BackupRetentionPeriod</code> property.</p> <p>The target database is created with most of the original configuration, but in a system-selected Availability Zone, with the default security group, the default subnet group, and the default 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 that is associated with mirroring; in this case, the instance becomes a mirrored deployment and not a single-AZ deployment.</p> <note> <p>This operation doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use <code>RestoreDBClusterToPointInTime</code>.</p> </note>

    Args:
        source_db_instance_identifier: <p>The identifier of the source DB instance from which to restore.</p> <p>Constraints:</p> <ul> <li> <p>Must match the identifier of an existing DB instance.</p> </li> </ul>
        target_db_instance_identifier: <p>The name of the new DB instance to create.</p> <p>Constraints:</p> <ul> <li> <p>Must contain from 1 to 63 letters, numbers, or hyphens.</p> </li> <li> <p>First character must be a letter.</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive hyphens.</p> </li> </ul>
        restore_time: <p>The date and time to restore from.</p> <p>Constraints:</p> <ul> <li> <p>Must be a time in Universal Coordinated Time (UTC) format.</p> </li> <li> <p>Must be before the latest restorable time for the DB instance.</p> </li> <li> <p>Can't be specified if the <code>UseLatestRestorableTime</code> parameter is enabled.</p> </li> </ul> <p>Example: <code>2009-09-07T23:45:00Z</code> </p>
        use_latest_restorable_time: <p>Specifies whether the DB instance is restored from the latest backup time. By default, the DB instance isn't restored from the latest backup time.</p> <p>Constraints:</p> <ul> <li> <p>Can't be specified if the <code>RestoreTime</code> parameter is provided.</p> </li> </ul>
        db_instance_class: <p>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 <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html">DB Instance Class</a> in the <i>Amazon RDS User Guide</i>.</p> <p>Default: The same DB instance class as the original DB instance.</p>
        port: <p>The port number on which the database accepts connections.</p> <p>Default: The same port as the original DB instance.</p> <p>Constraints:</p> <ul> <li> <p>The value must be <code>1150-65535</code>.</p> </li> </ul>
        availability_zone: <p>The Availability Zone (AZ) where the DB instance will be created.</p> <p>Default: A random, system-chosen Availability Zone.</p> <p>Constraints:</p> <ul> <li> <p>You can't specify the <code>AvailabilityZone</code> parameter if the DB instance is a Multi-AZ deployment.</p> </li> </ul> <p>Example: <code>us-east-1a</code> </p>
        db_subnet_group_name: <p>The DB subnet group name to use for the new instance.</p> <p>Constraints:</p> <ul> <li> <p>If supplied, must match the name of an existing DB subnet group.</p> </li> </ul> <p>Example: <code>mydbsubnetgroup</code> </p>
        multi_az: <p>Secifies whether the DB instance is a Multi-AZ deployment.</p> <p>This setting doesn't apply to RDS Custom.</p> <p>Constraints:</p> <ul> <li> <p>You can't specify the <code>AvailabilityZone</code> parameter if the DB instance is a Multi-AZ deployment.</p> </li> </ul>
        publicly_accessible: <p>Specifies whether the DB instance is publicly accessible.</p> <p>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.</p> <p>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.</p> <p>For more information, see <a>CreateDBInstance</a>.</p>
        auto_minor_version_upgrade: <p>Specifies whether minor version upgrades are applied automatically to the DB instance during the maintenance window.</p> <p>This setting doesn't apply to RDS Custom.</p> <p>For more information about automatic minor version upgrades, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Upgrading.html#USER_UpgradeDBInstance.Upgrading.AutoMinorVersionUpgrades">Automatically upgrading the minor engine version</a>.</p>
        license_model: <p>The license model information for the restored DB instance.</p> <note> <p>License models for RDS for Db2 require additional configuration. The bring your own license (BYOL) model requires a custom parameter group and an Amazon Web Services License Manager self-managed license. The Db2 license through Amazon Web Services Marketplace model requires an Amazon Web Services Marketplace subscription. For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-licensing.html">Amazon RDS for Db2 licensing options</a> in the <i>Amazon RDS User Guide</i>.</p> </note> <p>This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.</p> <p>Valid Values:</p> <ul> <li> <p>RDS for Db2 - <code>bring-your-own-license | marketplace-license</code> </p> </li> <li> <p>RDS for MariaDB - <code>general-public-license</code> </p> </li> <li> <p>RDS for Microsoft SQL Server - <code>license-included | bring-your-own-media</code> </p> </li> <li> <p>RDS for MySQL - <code>general-public-license</code> </p> </li> <li> <p>RDS for Oracle - <code>bring-your-own-license | license-included</code> </p> </li> <li> <p>RDS for PostgreSQL - <code>postgresql-license</code> </p> </li> </ul> <p>Default: Same as the source.</p>
        db_name: <p>The database name for the restored DB instance.</p> <p>This parameter doesn't apply to the following DB instances:</p> <ul> <li> <p>RDS Custom</p> </li> <li> <p>RDS for Db2</p> </li> <li> <p>RDS for MariaDB</p> </li> <li> <p>RDS for MySQL</p> </li> </ul>
        engine: <p>The database engine to use for the new instance.</p> <p>This setting doesn't apply to RDS Custom.</p> <p>Valid Values:</p> <ul> <li> <p> <code>db2-ae</code> </p> </li> <li> <p> <code>db2-ce</code> </p> </li> <li> <p> <code>db2-se</code> </p> </li> <li> <p> <code>mariadb</code> </p> </li> <li> <p> <code>mysql</code> </p> </li> <li> <p> <code>oracle-ee</code> </p> </li> <li> <p> <code>oracle-ee-cdb</code> </p> </li> <li> <p> <code>oracle-se2</code> </p> </li> <li> <p> <code>oracle-se2-cdb</code> </p> </li> <li> <p> <code>postgres</code> </p> </li> <li> <p> <code>sqlserver-ee</code> </p> </li> <li> <p> <code>sqlserver-se</code> </p> </li> <li> <p> <code>sqlserver-ex</code> </p> </li> <li> <p> <code>sqlserver-web</code> </p> </li> </ul> <p>Default: The same as source</p> <p>Constraints:</p> <ul> <li> <p>Must be compatible with the engine of the source.</p> </li> </ul>
        iops: <p>The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB instance.</p> <p>This setting doesn't apply to SQL Server.</p> <p>Constraints:</p> <ul> <li> <p>Must be an integer greater than 1000.</p> </li> </ul>
        storage_throughput: <p>The storage throughput value for the DB instance.</p> <p>This setting doesn't apply to RDS Custom or Amazon Aurora.</p>
        option_group_name: <p>The name of the option group to use for the restored DB instance.</p> <p>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</p> <p>This setting doesn't apply to RDS Custom.</p>
        copy_tags_to_snapshot: <p>Specifies whether to copy all tags from the restored DB instance to snapshots of the DB instance. By default, tags are not copied.</p>
        storage_type: <p>The storage type to associate with the DB instance.</p> <p>Valid Values: <code>gp2 | gp3 | io1 | io2 | standard</code> </p> <p>Default: <code>io1</code>, if the <code>Iops</code> parameter is specified. Otherwise, <code>gp3</code>.</p> <p>Constraints:</p> <ul> <li> <p>If you specify <code>io1</code>, <code>io2</code>, or <code>gp3</code>, you must also include a value for the <code>Iops</code> parameter.</p> </li> </ul>
        tde_credential_arn: <p>The ARN from the key store with which to associate the instance for TDE encryption.</p> <p>This setting doesn't apply to RDS Custom.</p>
        tde_credential_password: <p>The password for the given ARN from the key store in order to access the device.</p> <p>This setting doesn't apply to RDS Custom.</p>
        vpc_security_group_ids: <p>A list of EC2 VPC security groups to associate with this DB instance.</p> <p>Default: The default EC2 VPC security group for the DB subnet group's VPC.</p>
        domain: <p>The Active Directory directory ID to restore the DB instance in. Create the domain before running this command. Currently, you can create only the MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.</p> <p>This setting doesn't apply to RDS Custom.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html"> Kerberos Authentication</a> in the <i>Amazon RDS User Guide</i>.</p>
        domain_iam_role_name: <p>The name of the IAM role to use when making API calls to the Directory Service.</p> <p>This setting doesn't apply to RDS Custom DB instances.</p>
        domain_fqdn: <p>The fully qualified domain name (FQDN) of an Active Directory domain.</p> <p>Constraints:</p> <ul> <li> <p>Can't be longer than 64 characters.</p> </li> </ul> <p>Example: <code>mymanagedADtest.mymanagedAD.mydomain</code> </p>
        domain_ou: <p>The Active Directory organizational unit for your DB instance to join.</p> <p>Constraints:</p> <ul> <li> <p>Must be in the distinguished name format.</p> </li> <li> <p>Can't be longer than 64 characters.</p> </li> </ul> <p>Example: <code>OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain</code> </p>
        domain_auth_secret_arn: <p>The ARN for the Secrets Manager secret with the credentials for the user joining the domain.</p> <p>Constraints:</p> <ul> <li> <p>Can't be longer than 64 characters.</p> </li> </ul> <p>Example: <code>arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456</code> </p>
        domain_dns_ips: <p>The IPv4 DNS IP addresses of your primary and secondary Active Directory domain controllers.</p> <p>Constraints:</p> <ul> <li> <p>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.</p> </li> </ul> <p>Example: <code>123.124.125.126,234.235.236.237</code> </p>
        enable_iam_database_authentication: <p>Specifies whether to enable mapping of Amazon Web Services Identity and Access Management (IAM) accounts to database accounts. By default, mapping isn't enabled.</p> <p>This setting doesn't apply to RDS Custom.</p> <p>For more information about IAM database authentication, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html"> IAM Database Authentication for MySQL and PostgreSQL</a> in the <i>Amazon RDS User Guide.</i> </p>
        enable_cloudwatch_logs_exports: <p>The list of logs that the restored DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch">Publishing Database Logs to Amazon CloudWatch Logs</a> in the <i>Amazon RDS User Guide</i>.</p> <p>This setting doesn't apply to RDS Custom.</p>
        processor_features: <p>The number of CPU cores and the number of threads per core for the DB instance class of the DB instance.</p> <p>This setting doesn't apply to RDS Custom.</p>
        use_default_processor_features: <p>Specifies whether the DB instance class of the DB instance uses its default processor features.</p> <p>This setting doesn't apply to RDS Custom.</p>
        db_parameter_group_name: <p>The name of the DB parameter group to associate with this DB instance.</p> <p>If you do not specify a value for <code>DBParameterGroupName</code>, then the default <code>DBParameterGroup</code> for the specified DB engine is used.</p> <p>This setting doesn't apply to RDS Custom.</p> <p>Constraints:</p> <ul> <li> <p>If supplied, must match the name of an existing DB parameter group.</p> </li> <li> <p>Must be 1 to 255 letters, numbers, or hyphens.</p> </li> <li> <p>First character must be a letter.</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive hyphens.</p> </li> </ul>
        deletion_protection: <p>Specifies whether the DB instance has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection isn't enabled. For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html"> Deleting a DB Instance</a>.</p>
        source_dbi_resource_id: <p>The resource ID of the source DB instance from which to restore.</p>
        max_allocated_storage: <p>The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance.</p> <p>For more information about this setting, including limitations that apply to it, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.Autoscaling"> Managing capacity automatically with Amazon RDS storage autoscaling</a> in the <i>Amazon RDS User Guide</i>.</p> <p>This setting doesn't apply to RDS Custom.</p>
        enable_customer_owned_ip: <p>Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts DB instance.</p> <p>A <i>CoIP</i> 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.</p> <p>This setting doesn't apply to RDS Custom.</p> <p>For more information about RDS on Outposts, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html">Working with Amazon RDS on Amazon Web Services Outposts</a> in the <i>Amazon RDS User Guide</i>.</p> <p>For more information about CoIPs, see <a href="https://docs.aws.amazon.com/outposts/latest/userguide/routing.html#ip-addressing">Customer-owned IP addresses</a> in the <i>Amazon Web Services Outposts User Guide</i>.</p>
        network_type: <p>The network type of the DB instance.</p> <p>The network type is determined by the <code>DBSubnetGroup</code> specified for the DB instance. A <code>DBSubnetGroup</code> can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (<code>DUAL</code>).</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html"> Working with a DB instance in a VPC</a> in the <i>Amazon RDS User Guide.</i> </p> <p>Valid Values:</p> <ul> <li> <p> <code>IPV4</code> </p> </li> <li> <p> <code>DUAL</code> </p> </li> </ul>
        source_db_instance_automated_backups_arn: <p>The Amazon Resource Name (ARN) of the replicated automated backups from which to restore, for example, <code>arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE</code>.</p> <p>This setting doesn't apply to RDS Custom.</p>
        backup_target: <p>The location for storing automated backups and manual snapshots for the restored DB instance.</p> <p>Valid Values:</p> <ul> <li> <p> <code>local</code> (Dedicated Local Zone)</p> </li> <li> <p> <code>outposts</code> (Amazon Web Services Outposts)</p> </li> <li> <p> <code>region</code> (Amazon Web Services Region)</p> </li> </ul> <p>Default: <code>region</code> </p> <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html">Working with Amazon RDS on Amazon Web Services Outposts</a> in the <i>Amazon RDS User Guide</i>.</p>
        custom_iam_instance_profile: <p>The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. The instance profile must meet the following requirements:</p> <ul> <li> <p>The profile must exist in your account.</p> </li> <li> <p>The profile must have an IAM role that Amazon EC2 has permissions to assume.</p> </li> <li> <p>The instance profile name and the associated IAM role name must start with the prefix <code>AWSRDSCustom</code>.</p> </li> </ul> <p>For the list of permissions required for the IAM role, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-setup-orcl.html#custom-setup-orcl.iam-vpc"> Configure IAM and your VPC</a> in the <i>Amazon RDS User Guide</i>.</p> <p>This setting is required for RDS Custom.</p>
        allocated_storage: <p>The amount of storage (in gibibytes) to allocate initially for the DB instance. Follow the allocation rules specified in <code>CreateDBInstance</code>.</p> <p>This setting isn't valid for RDS for SQL Server.</p> <note> <p>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.</p> </note>
        backup_retention_period: <p>The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.</p> <note> <p>Enabling and disabling backups can result in a brief I/O suspension that lasts from a few seconds to a few minutes, depending on the size and class of your DB instance.</p> </note> <p>This setting doesn't apply to Amazon Aurora DB instances. The retention period for automated backups is managed by the DB cluster. For more information, see <code>ModifyDBCluster</code>.</p> <p>Default: Uses existing setting</p> <p>Constraints:</p> <ul> <li> <p>Must be a value from 0 to 35.</p> </li> <li> <p>Can't be set to 0 if the DB instance is a source to read replicas.</p> </li> <li> <p>Can't be set to 0 for an RDS Custom for Oracle DB instance.</p> </li> </ul>
        preferred_backup_window: <p>The daily time range during which automated backups are created if automated backups are enabled, as determined by the <code>BackupRetentionPeriod</code> parameter. Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html#USER_WorkingWithAutomatedBackups.BackupWindow">Backup window</a> in the <i>Amazon RDS User Guide</i>.</p> <p>This setting doesn't apply to Amazon Aurora DB instances. The daily time range for creating automated backups is managed by the DB cluster. For more information, see <code>ModifyDBCluster</code>.</p> <p>Constraints:</p> <ul> <li> <p>Must be in the format <code>hh24:mi-hh24:mi</code>.</p> </li> <li> <p>Must be in Universal Coordinated Time (UTC).</p> </li> <li> <p>Must not conflict with the preferred maintenance window.</p> </li> <li> <p>Must be at least 30 minutes.</p> </li> </ul>
        dedicated_log_volume: <p>Specifies whether to enable a dedicated log volume (DLV) for the DB instance.</p>
        ca_certificate_identifier: <p>The CA certificate identifier to use for the DB instance's server certificate.</p> <p>This setting doesn't apply to RDS Custom DB instances.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html">Using SSL/TLS to encrypt a connection to a DB instance</a> in the <i>Amazon RDS User Guide</i> and <a href="https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL.html"> Using SSL/TLS to encrypt a connection to a DB cluster</a> in the <i>Amazon Aurora User Guide</i>.</p>
        engine_lifecycle_support: <p>The lifecycle type for this DB instance.</p> <note> <p>By default, this value is set to <code>open-source-rds-extended-support</code>, which enrolls your DB instance into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to <code>open-source-rds-extended-support-disabled</code>. In this case, RDS automatically upgrades your restored DB instance to a higher engine version, if the major engine version is past its end of standard support date.</p> </note> <p>You can use this setting to enroll your DB instance into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your DB instance past the end of standard support for that engine version. For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html">Amazon RDS Extended Support with Amazon RDS</a> in the <i>Amazon RDS User Guide</i>.</p> <p>This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the engine lifecycle support is managed by the DB cluster.</p> <p>Valid Values: <code>open-source-rds-extended-support | open-source-rds-extended-support-disabled</code> </p> <p>Default: <code>open-source-rds-extended-support</code> </p>
        additional_storage_volumes: <p>A list of additional storage volumes to restore to the DB instance. You can restore up to three additional storage volumes using the names <code>rdsdbdata2</code>, <code>rdsdbdata3</code>, and <code>rdsdbdata4</code>. Additional storage volumes are supported for RDS for Oracle and RDS for SQL Server DB instances only.</p>
        tag_specifications: <p>Tags to assign to resources associated with the DB instance.</p> <p>Valid Values: </p> <ul> <li> <p> <code>auto-backup</code> - The DB instance's automated backup.</p> </li> </ul>
        manage_master_user_password: <p>Specifies whether to manage the master user password with Amazon Web Services Secrets Manager in the restored DB instance.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html">Password management with Amazon Web Services Secrets Manager</a> in the <i>Amazon RDS User Guide</i>.</p> <p>Constraints:</p> <ul> <li> <p>Applies to RDS for Oracle only.</p> </li> </ul>
        master_user_secret_kms_key_id: <p>The Amazon Web Services KMS key identifier to encrypt a secret that is automatically generated and managed in Amazon Web Services Secrets Manager.</p> <p>This setting is valid only if the master user password is managed by RDS in Amazon Web Services Secrets Manager for the DB instance.</p> <p>The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.</p> <p>If you don't specify <code>MasterUserSecretKmsKeyId</code>, then the <code>aws/secretsmanager</code> KMS key is used to encrypt the secret. If the secret is in a different Amazon Web Services account, then you can't use the <code>aws/secretsmanager</code> KMS key to encrypt the secret, and you must use a customer managed KMS key.</p> <p>There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.</p>

    Raises:
        capo_rds.errors.authorization_not_found_fault.AuthorizationNotFoundFault: <p>The specified CIDR IP range or Amazon EC2 security group might not be authorized for the specified DB security group.</p> <p>Or, RDS might not be authorized to perform necessary actions using IAM on your behalf.</p>
        capo_rds.errors.backup_policy_not_found_fault.BackupPolicyNotFoundFault: <p/>
        capo_rds.errors.certificate_not_found_fault.CertificateNotFoundFault: <p> <code>CertificateIdentifier</code> doesn't refer to an existing certificate.</p>
        capo_rds.errors.db_instance_already_exists_fault.DBInstanceAlreadyExistsFault: <p>The user already has a DB instance with the given identifier.</p>
        capo_rds.errors.db_instance_automated_backup_not_found_fault.DBInstanceAutomatedBackupNotFoundFault: <p>No automated backup for this DB instance was found.</p>
        capo_rds.errors.db_instance_not_found_fault.DBInstanceNotFoundFault: <p> <code>DBInstanceIdentifier</code> doesn't refer to an existing DB instance.</p>
        capo_rds.errors.db_parameter_group_not_found_fault.DBParameterGroupNotFoundFault: <p> <code>DBParameterGroupName</code> doesn't refer to an existing DB parameter group.</p>
        capo_rds.errors.db_security_group_not_found_fault.DBSecurityGroupNotFoundFault: <p> <code>DBSecurityGroupName</code> doesn't refer to an existing DB security group.</p>
        capo_rds.errors.db_subnet_group_does_not_cover_enough_a_zs.DBSubnetGroupDoesNotCoverEnoughAZs: <p>Subnets in the DB subnet group should cover at least two Availability Zones unless there is only one Availability Zone.</p>
        capo_rds.errors.db_subnet_group_not_found_fault.DBSubnetGroupNotFoundFault: <p> <code>DBSubnetGroupName</code> doesn't refer to an existing DB subnet group.</p>
        capo_rds.errors.domain_not_found_fault.DomainNotFoundFault: <p> <code>Domain</code> doesn't refer to an existing Active Directory domain.</p>
        capo_rds.errors.instance_quota_exceeded_fault.InstanceQuotaExceededFault: <p>The request would result in the user exceeding the allowed number of DB instances.</p>
        capo_rds.errors.insufficient_db_instance_capacity_fault.InsufficientDBInstanceCapacityFault: <p>The specified DB instance class isn't available in the specified Availability Zone.</p>
        capo_rds.errors.invalid_db_instance_state_fault.InvalidDBInstanceStateFault: <p>The DB instance isn't in a valid state.</p>
        capo_rds.errors.invalid_restore_fault.InvalidRestoreFault: <p>Cannot restore from VPC backup to non-VPC DB instance.</p>
        capo_rds.errors.invalid_subnet.InvalidSubnet: <p>The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.</p>
        capo_rds.errors.invalid_vpc_network_state_fault.InvalidVPCNetworkStateFault: <p>The DB subnet group doesn't cover all Availability Zones after it's created because of users' change.</p>
        capo_rds.errors.kms_key_not_accessible_fault.KMSKeyNotAccessibleFault: <p>An error occurred accessing an Amazon Web Services KMS key.</p>
        capo_rds.errors.network_type_not_supported.NetworkTypeNotSupported: <p>The network type is invalid for the DB instance. Valid nework type values are <code>IPV4</code> and <code>DUAL</code>.</p>
        capo_rds.errors.option_group_not_found_fault.OptionGroupNotFoundFault: <p>The specified option group could not be found.</p>
        capo_rds.errors.point_in_time_restore_not_enabled_fault.PointInTimeRestoreNotEnabledFault: <p> <code>SourceDBInstanceIdentifier</code> refers to a DB instance with <code>BackupRetentionPeriod</code> equal to 0.</p>
        capo_rds.errors.provisioned_iops_not_available_in_az_fault.ProvisionedIopsNotAvailableInAZFault: <p>Provisioned IOPS not available in the specified Availability Zone.</p>
        capo_rds.errors.storage_quota_exceeded_fault.StorageQuotaExceededFault: <p>The request would result in the user exceeding the allowed amount of storage available across all DB instances.</p>
        capo_rds.errors.storage_type_not_supported_fault.StorageTypeNotSupportedFault: <p>The specified <code>StorageType</code> can't be associated with the DB instance.</p>
        capo_rds.errors.tenant_database_quota_exceeded_fault.TenantDatabaseQuotaExceededFault: <p>You attempted to create more tenant databases than are permitted in your Amazon Web Services account.</p>
        capo_rds.errors.vpc_encryption_control_violation_exception.VpcEncryptionControlViolationException: <p>The operation violates VPC encryption control settings. Make sure that your DB instance type supports the Nitro encryption-in-transit capability, or modify your VPC's encryption controls to not enforce encryption-in-transit.</p>
        capo_rds.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        To restore a DB instance to a point in time
        The following example restores test-instance to a new DB instance named restored-test-instance, as of the specified time.

        >>> await client.restore_db_instance_to_point_in_time(source_db_instance_identifier='test-instance', target_db_instance_identifier='restored-test-instance', restore_time='2018-07-30T23:45:00.000Z')
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_rds.types.restore_db_instance_to_point_in_time_message.RestoreDBInstanceToPointInTimeMessage]",
    ) -> AsyncOperationResponse[
        "capo_rds.types.restore_db_instance_to_point_in_time_result.RestoreDBInstanceToPointInTimeResult"
    ]:
        import capo_rds._operations.amazon_rd_sv19.restore_db_instance_to_point_in_time

        (
            output,
            http_response,
        ) = await capo_rds._operations.amazon_rd_sv19.restore_db_instance_to_point_in_time.async_restore_db_instance_to_point_in_time(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    def _redact_input(
        input_: "capo_rds.types.restore_db_instance_to_point_in_time_message.RestoreDBInstanceToPointInTimeMessage",
    ) -> dict[str, Any]:
        import capo_rds.types.restore_db_instance_to_point_in_time_message

        return capo_rds.types.restore_db_instance_to_point_in_time_message.redact_sensitive(
            input_
        )

    def _redact_output(
        output: "capo_rds.types.restore_db_instance_to_point_in_time_result.RestoreDBInstanceToPointInTimeResult",
    ) -> dict[str, Any]:
        import capo_rds.types.restore_db_instance_to_point_in_time_result

        return capo_rds.types.restore_db_instance_to_point_in_time_result.redact_sensitive(
            output
        )

    interceptors_, options_ = self.operation_options(
        config_overrides,
        OperationLogging(
            "RestoreDBInstanceToPointInTime",
            redact_input=_redact_input,
            redact_output=_redact_output,
        ),
    )
    input_: capo_rds.types.restore_db_instance_to_point_in_time_message.RestoreDBInstanceToPointInTimeMessage = {}
    if source_db_instance_identifier is not None:
        input_["source_db_instance_identifier"] = source_db_instance_identifier
    if target_db_instance_identifier is not None:
        input_["target_db_instance_identifier"] = target_db_instance_identifier
    if restore_time is not None:
        input_["restore_time"] = restore_time
    if use_latest_restorable_time is not None:
        input_["use_latest_restorable_time"] = use_latest_restorable_time
    if db_instance_class is not None:
        input_["db_instance_class"] = db_instance_class
    if port is not None:
        input_["port"] = port
    if availability_zone is not None:
        input_["availability_zone"] = availability_zone
    if db_subnet_group_name is not None:
        input_["db_subnet_group_name"] = db_subnet_group_name
    if multi_az is not None:
        input_["multi_az"] = multi_az
    if publicly_accessible is not None:
        input_["publicly_accessible"] = publicly_accessible
    if auto_minor_version_upgrade is not None:
        input_["auto_minor_version_upgrade"] = auto_minor_version_upgrade
    if license_model is not None:
        input_["license_model"] = license_model
    if db_name is not None:
        input_["db_name"] = db_name
    if engine is not None:
        input_["engine"] = engine
    if iops is not None:
        input_["iops"] = iops
    if storage_throughput is not None:
        input_["storage_throughput"] = storage_throughput
    if option_group_name is not None:
        input_["option_group_name"] = option_group_name
    if copy_tags_to_snapshot is not None:
        input_["copy_tags_to_snapshot"] = copy_tags_to_snapshot
    if tags is not None:
        input_["tags"] = tags
    if storage_type is not None:
        input_["storage_type"] = storage_type
    if tde_credential_arn is not None:
        input_["tde_credential_arn"] = tde_credential_arn
    if tde_credential_password is not None:
        input_["tde_credential_password"] = tde_credential_password
    if vpc_security_group_ids is not None:
        input_["vpc_security_group_ids"] = vpc_security_group_ids
    if domain is not None:
        input_["domain"] = domain
    if domain_iam_role_name is not None:
        input_["domain_iam_role_name"] = domain_iam_role_name
    if domain_fqdn is not None:
        input_["domain_fqdn"] = domain_fqdn
    if domain_ou is not None:
        input_["domain_ou"] = domain_ou
    if domain_auth_secret_arn is not None:
        input_["domain_auth_secret_arn"] = domain_auth_secret_arn
    if domain_dns_ips is not None:
        input_["domain_dns_ips"] = domain_dns_ips
    if enable_iam_database_authentication is not None:
        input_["enable_iam_database_authentication"] = (
            enable_iam_database_authentication
        )
    if enable_cloudwatch_logs_exports is not None:
        input_["enable_cloudwatch_logs_exports"] = enable_cloudwatch_logs_exports
    if processor_features is not None:
        input_["processor_features"] = processor_features
    if use_default_processor_features is not None:
        input_["use_default_processor_features"] = use_default_processor_features
    if db_parameter_group_name is not None:
        input_["db_parameter_group_name"] = db_parameter_group_name
    if deletion_protection is not None:
        input_["deletion_protection"] = deletion_protection
    if source_dbi_resource_id is not None:
        input_["source_dbi_resource_id"] = source_dbi_resource_id
    if max_allocated_storage is not None:
        input_["max_allocated_storage"] = max_allocated_storage
    if enable_customer_owned_ip is not None:
        input_["enable_customer_owned_ip"] = enable_customer_owned_ip
    if network_type is not None:
        input_["network_type"] = network_type
    if source_db_instance_automated_backups_arn is not None:
        input_["source_db_instance_automated_backups_arn"] = (
            source_db_instance_automated_backups_arn
        )
    if backup_target is not None:
        input_["backup_target"] = backup_target
    if custom_iam_instance_profile is not None:
        input_["custom_iam_instance_profile"] = custom_iam_instance_profile
    if allocated_storage is not None:
        input_["allocated_storage"] = allocated_storage
    if backup_retention_period is not None:
        input_["backup_retention_period"] = backup_retention_period
    if preferred_backup_window is not None:
        input_["preferred_backup_window"] = preferred_backup_window
    if dedicated_log_volume is not None:
        input_["dedicated_log_volume"] = dedicated_log_volume
    if ca_certificate_identifier is not None:
        input_["ca_certificate_identifier"] = ca_certificate_identifier
    if engine_lifecycle_support is not None:
        input_["engine_lifecycle_support"] = engine_lifecycle_support
    if additional_storage_volumes is not None:
        input_["additional_storage_volumes"] = additional_storage_volumes
    if tag_specifications is not None:
        input_["tag_specifications"] = tag_specifications
    if manage_master_user_password is not None:
        input_["manage_master_user_password"] = manage_master_user_password
    if master_user_secret_kms_key_id is not None:
        input_["master_user_secret_kms_key_id"] = master_user_secret_kms_key_id

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output