Skip to content

RDS  >  Operations  >  modify_db_instance

modify_db_instance

Operation

modify_db_instance async

modify_db_instance(input: ModifyDBInstanceInput, plugins: list[Plugin] | None = None) -> ModifyDBInstanceOutput

Modifies settings for a DB instance. You can change one or more database configuration parameters by specifying these parameters and the new values in the request. To learn what modifications you can make to your DB instance, call DescribeValidDBInstanceModifications before you call ModifyDBInstance.

Parameters:

Name Type Description Default
input ModifyDBInstanceInput

An instance of ModifyDBInstanceInput.

required
plugins list[Plugin] | None

A list of callables that modify the configuration dynamically. Changes made by these plugins only apply for the duration of the operation execution and will not affect any other operation invocations.

None

Returns:

Type Description
ModifyDBInstanceOutput

An instance of ModifyDBInstanceOutput.

Input

ModifyDBInstanceInput dataclass

Bases: _SerdeShape

Attributes

additional_storage_volumes class-attribute instance-attribute
additional_storage_volumes: list[ModifyAdditionalStorageVolume] | None = ...

A list of additional storage volumes to modify or delete for the DB instance. You can create up to 3 additional storage volumes. Additional storage volumes are supported for RDS for Oracle and RDS for SQL Server DB instances only.

allocated_storage class-attribute instance-attribute
allocated_storage: int | None = ...

The new amount of storage in gibibytes (GiB) to allocate for the DB instance.

For RDS for Db2, MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL, the value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

For the valid values for allocated storage for each engine, see CreateDBInstance.

Constraints:

  • When you increase the allocated storage for a DB instance that uses Provisioned IOPS (gp3, io1, or io2 storage type), you must also specify the Iops parameter. You can use the current value for Iops.
allow_major_version_upgrade class-attribute instance-attribute
allow_major_version_upgrade: bool | None = ...

Specifies whether major version upgrades are allowed. Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible.

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

Constraints:

  • Major version upgrades must be allowed when specifying a value for the EngineVersion parameter that's a different major version than the DB instance's current version.
apply_immediately class-attribute instance-attribute
apply_immediately: bool | None = ...

Specifies whether the modifications in this request and any pending modifications are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow setting for the DB instance. By default, this parameter is disabled.

If this parameter is disabled, changes to the DB instance are applied during the next maintenance window. Some parameter changes can cause an outage and are applied on the next call to RebootDBInstance, or the next failure reboot. Review the table of parameters in Modifying a DB Instance in the Amazon RDS User Guide to see the impact of enabling or disabling ApplyImmediately for each modified parameter and to determine when the changes are applied.

auto_minor_version_upgrade class-attribute instance-attribute
auto_minor_version_upgrade: bool | None = ...

Specifies whether minor version upgrades are applied automatically to the DB instance during the maintenance window. An outage occurs when all the following conditions are met:

  • The automatic upgrade is enabled for the maintenance window.

  • A newer minor version is available.

  • RDS has enabled automatic patching for the engine version.

If any of the preceding conditions isn't met, Amazon RDS applies the change as soon as possible and doesn't cause an outage.

For an RDS Custom DB instance, don't enable this setting. Otherwise, the operation returns an error.

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

automation_mode class-attribute instance-attribute
automation_mode: str | None = ...

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

aws_backup_recovery_point_arn class-attribute instance-attribute
aws_backup_recovery_point_arn: str | None = ...

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

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

backup_retention_period class-attribute instance-attribute
backup_retention_period: int | 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.

Note

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.

These changes are applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request. If you change the parameter from one non-zero value to another non-zero value, the change is asynchronously applied as soon as possible.

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.

ca_certificate_identifier class-attribute instance-attribute
ca_certificate_identifier: str | 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.

certificate_rotation_restart class-attribute instance-attribute
certificate_rotation_restart: bool | None = ...

Specifies whether the DB instance is restarted when you rotate your SSL/TLS certificate.

By default, the DB instance is restarted when you rotate your SSL/TLS certificate. The certificate is not updated until the DB instance is restarted.

Warning

Set this parameter only if you are not using SSL/TLS to connect to the DB instance.

If you are using SSL/TLS to connect to the DB instance, follow the appropriate instructions for your DB engine to rotate your SSL/TLS certificate:

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

cloudwatch_logs_export_configuration class-attribute instance-attribute
cloudwatch_logs_export_configuration: CloudwatchLogsExportConfiguration | None = ...

The log types to be enabled for export to CloudWatch Logs for a specific DB instance.

A change to the CloudwatchLogsExportConfiguration parameter is always applied to the DB instance immediately. Therefore, the ApplyImmediately parameter has no effect.

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

The following values are valid for each DB engine:

  • Aurora MySQL - audit | error | general | slowquery | iam-db-auth-error

  • Aurora PostgreSQL - postgresql | iam-db-auth-error

  • RDS for MySQL - error | general | slowquery | iam-db-auth-error

  • RDS for PostgreSQL - postgresql | upgrade | iam-db-auth-error

For more information about exporting CloudWatch Logs for Amazon RDS, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

For more information about exporting CloudWatch Logs for Amazon Aurora, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon Aurora User Guide.

copy_tags_to_snapshot class-attribute instance-attribute
copy_tags_to_snapshot: bool | None = ...

Specifies whether to copy all tags from the DB instance to snapshots of the DB instance. By default, tags aren't copied.

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

database_insights_mode class-attribute instance-attribute
database_insights_mode: str | None = ...

Specifies the mode of Database Insights to enable for the DB instance.

Note

Aurora DB instances inherit this value from the DB cluster, so you can't change this value.

db_capacity_reservation_identifier class-attribute instance-attribute
db_capacity_reservation_identifier: str | None = ...

The identifier or the name of the DB capacity reservation for the DB instance to use. You can specify the identifier, which has the prefix dbcr-, or the reservation name. After the modification completes, the DB instance uses reserved capacity from this reservation.

You can't change the DB capacity reservation of a DB instance on its own. A request that changes the reservation must also change the DB instance class, the Multi-AZ setting, the license model, or the engine. Therefore, this request always changes the configuration of the DB instance.

If the DB instance already uses the reservation that you specify, this requirement doesn't apply. You can then change another setting, such as the Multi-AZ setting, and keep the reservation.

For a DB instance that uses no reservation, change DBInstanceClass to the DB instance class that the reservation reserves. A reservation reserves capacity for one DB instance class, so that change moves the DB instance onto the reserved capacity. That change also resizes the DB instance, which interrupts it.

If the DB instance already runs the DB instance class that the reservation reserves, change MultiAZ or LicenseModel instead. Only RDS for Oracle and RDS for Microsoft SQL Server accept a change of license model, so MultiAZ is the remaining choice for every other engine.

Warning

If you don't specify this parameter, Amazon RDS moves the DB instance to unreserved capacity, and it releases the reserved capacity that the DB instance holds. A request that changes the DB instance class, the Multi-AZ setting, the license model, or the engine moves the DB instance to different hardware, and Amazon RDS places the DB instance on unreserved capacity. Therefore, to keep the DB instance on reserved capacity, specify this parameter in every request that changes any of those settings.

The DB instance keeps its current reservation until Amazon RDS applies the modification. Until then, the DBCapacityReservationIdentifier field of the DB instance still reports that reservation, and PendingModifiedValues reports no reservation. Amazon RDS releases the reserved capacity when it moves the DB instance.

Constraints:

  • If the request changes which DB capacity reservation the DB instance uses, it must also set a new value for DBInstanceClass, MultiAZ, LicenseModel, or Engine. The new value must differ from the current value. The only engine change that ModifyDBInstance supports is a conversion to the CDB architecture. Repeating the current value doesn't satisfy this requirement. This requirement applies both when the DB instance uses no reservation, and when it moves to a different reservation.

  • The reservation must reserve capacity for the DB instance class that the DB instance uses after the modification, and for the database engine of the DB instance. Therefore, when the request changes DBInstanceClass, the reservation reserves capacity for a DB instance class that the DB instance doesn't use today.

  • The reservation must be in the active state, and it must not be past its end date.

  • The reservation must have available capacity in each Availability Zone that the DB instance uses after the modification.

  • The reservation must cover the Availability Zone of the DB instance, except when the request changes the DB instance from Multi-AZ to Single-AZ.

  • For a Multi-AZ DB instance, the reservation must cover two or more Availability Zones. A Multi-AZ DB instance uses one unit of reserved capacity in each of two Availability Zones.

  • If the DB instance is already Multi-AZ, the reservation must cover both of its Availability Zones. If the request converts the DB instance to Multi-AZ, the reservation must cover the current Availability Zone of the DB instance, and Amazon RDS chooses the second Availability Zone from the reservation.

  • If the reservation reserves capacity for a specific license model, the license model of the DB instance must match it. Amazon RDS checks the license model only when the request specifies LicenseModel.

  • You can't specify this parameter together with a change to DBSubnetGroupName.

  • You can't specify this parameter together with a change to both DBInstanceClass and LicenseModel. Submit those changes as two separate requests.

  • Can't be specified together with a change to DBInstanceClass when the request also changes the DB instance from Multi-AZ to Single-AZ.

  • When the request changes the DB instance from Multi-AZ to Single-AZ, the reservation must cover either the primary or the secondary Availability Zone of the DB instance. Amazon RDS keeps the DB instance in its primary Availability Zone, and it removes the standby replica. Therefore, the primary Availability Zone keeps its unit of reserved capacity, and the secondary Availability Zone releases its unit.

  • Can't be specified together with LicenseModel while a modification of the DB instance class or the Multi-AZ setting is pending.

  • Can't be specified together with DBInstanceClass or MultiAZ while a modification of the license model is pending.

  • When a modification is already pending, the reservation must reserve capacity for the DB instance as it will be after both the pending modification and the requested modification complete.

  • The DB subnet group must be in a VPC with default tenancy.

  • The DB subnet group must cover each Availability Zone that the DB instance uses.

  • Isn't supported for an RDS on Outposts DB instance.

  • If the reservation expires within one week, you must also enable ApplyImmediately. Otherwise, choose a reservation with a later end date.

  • Amazon RDS holds a unit of reserved capacity for the DB instance when it accepts the request, even when the modification waits for the maintenance window.

db_instance_class class-attribute instance-attribute
db_instance_class: str | None = ...

The new compute and memory capacity of the 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 or Aurora DB instance classes in the Amazon Aurora User Guide. For RDS Custom, see DB instance class support for RDS Custom for Oracle and DB instance class support for RDS Custom for SQL Server.

If you modify the DB instance class, an outage occurs during the change. The change is applied during the next maintenance window, unless you specify ApplyImmediately in your request.

Default: Uses existing setting

Constraints:

  • If you are modifying the DB instance class and upgrading the engine version at the same time, the currently running engine version must be supported on the specified DB instance class. Otherwise, the operation returns an error. In this case, first run the operation to upgrade the engine version, and then run it again to modify the DB instance class.
db_instance_identifier class-attribute instance-attribute
db_instance_identifier: str | None = ...

The identifier of DB instance to modify. This value is stored as a lowercase string.

Constraints:

  • Must match the identifier of an existing DB instance.
db_parameter_group_name class-attribute instance-attribute
db_parameter_group_name: str | None = ...

The name of the DB parameter group to apply to the DB instance.

Changing this setting doesn't result in an outage. The parameter group name itself is changed immediately, but the actual parameter changes are not applied until you reboot the instance without failover. In this case, the DB instance isn't rebooted automatically, and the parameter changes aren't applied during the next maintenance window. However, if you modify dynamic parameters in the newly associated DB parameter group, these changes are applied immediately without a reboot.

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

Default: Uses existing setting

Constraints:

  • Must be in the same DB parameter group family as the DB instance.
db_port_number class-attribute instance-attribute
db_port_number: int | None = ...

The port number on which the database accepts connections.

The value of the DBPortNumber parameter must not match any of the port values specified for options in the option group for the DB instance.

If you change the DBPortNumber value, your database restarts regardless of the value of the ApplyImmediately parameter.

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

Valid Values: 1150-65535

Default:

  • Amazon Aurora - 3306

  • RDS for Db2 - 50000

  • RDS for MariaDB - 3306

  • RDS for Microsoft SQL Server - 1433

  • RDS for MySQL - 3306

  • RDS for Oracle - 1521

  • RDS for PostgreSQL - 5432

Constraints:

  • For RDS for Microsoft SQL Server, the value can't be 1234, 1434, 3260, 3343, 3389, 47001, or 49152-49156.
db_security_groups class-attribute instance-attribute
db_security_groups: list[str] | None = ...

A list of DB security groups to authorize on this DB instance. Changing this setting doesn't result in an outage and the change is asynchronously applied as soon as possible.

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

Constraints:

  • If supplied, must match existing DB security groups.
db_subnet_group_name class-attribute instance-attribute
db_subnet_group_name: str | None = ...

The new DB subnet group for the DB instance. You can use this parameter to move your DB instance to a different VPC. If your DB instance isn't in a VPC, you can also use this parameter to move your DB instance into a VPC. For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

Changing the subnet group causes an outage during the change. The change is applied during the next maintenance window, unless you enable ApplyImmediately.

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

Constraints:

  • If supplied, must match existing DB subnet group.

Example: mydbsubnetgroup

dedicated_log_volume class-attribute instance-attribute
dedicated_log_volume: bool | None = ...

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

deletion_protection class-attribute instance-attribute
deletion_protection: bool | 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.

This setting doesn't apply to Amazon Aurora DB instances. You can enable or disable deletion protection for the DB cluster. For more information, see ModifyDBCluster. DB instances in a DB cluster can be deleted even when deletion protection is enabled for the DB cluster.

disable_domain class-attribute instance-attribute
disable_domain: bool | None = ...

Specifies whether to remove the DB instance from the Active Directory domain.

domain class-attribute instance-attribute
domain: str | None = ...

The Active Directory directory ID to move the DB instance to. Specify none to remove the instance from its current domain. You must create the domain before 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 DB instances.

domain_auth_secret_arn class-attribute instance-attribute
domain_auth_secret_arn: str | None = ...

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

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

domain_dns_ips class-attribute instance-attribute
domain_dns_ips: list[str] | 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

domain_fqdn class-attribute instance-attribute
domain_fqdn: str | 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_iam_role_name class-attribute instance-attribute
domain_iam_role_name: str | 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_ou class-attribute instance-attribute
domain_ou: str | None = ...

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

Constraints:

  • Must be in the distinguished name format.

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

enable_customer_owned_ip class-attribute instance-attribute
enable_customer_owned_ip: bool | 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.

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.

enable_iam_database_authentication class-attribute instance-attribute
enable_iam_database_authentication: bool | 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 Amazon Aurora. Mapping Amazon Web Services IAM accounts to database accounts is managed by the DB cluster.

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 DB instances.

enable_performance_insights class-attribute instance-attribute
enable_performance_insights: bool | None = ...

Specifies whether to enable Performance Insights for the DB instance.

For more information, see Using Amazon Performance Insights in the Amazon RDS User Guide.

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

engine class-attribute instance-attribute
engine: str | None = ...

The target Oracle DB engine when you convert a non-CDB to a CDB. This intermediate step is necessary to upgrade an Oracle Database 19c non-CDB to an Oracle Database 21c CDB.

Note the following requirements:

  • Make sure that you specify oracle-ee-cdb or oracle-se2-cdb.

  • Make sure that your DB engine runs Oracle Database 19c with an April 2021 or later RU.

Note the following limitations:

  • You can't convert a CDB to a non-CDB.

  • You can't convert a replica database.

  • You can't convert a non-CDB to a CDB and upgrade the engine version in the same command.

  • You can't convert the existing custom parameter or option group when it has options or parameters that are permanent or persistent. In this situation, the DB instance reverts to the default option and parameter group. To avoid reverting to the default, specify a new parameter group with --db-parameter-group-name and a new option group with --option-group-name.

engine_lifecycle_support class-attribute instance-attribute
engine_lifecycle_support: str | None = ...

The lifecycle type for this DB instance.

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.

You can use this setting to enroll your DB instance into Amazon RDS Extended Support or to opt out. 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.

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

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

engine_version class-attribute instance-attribute
engine_version: str | None = ...

The version number of the database engine to upgrade to. Changing this parameter results in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request.

For major version upgrades, if a nondefault DB parameter group is currently in use, a new DB parameter group in the DB parameter group family for the new engine version must be specified. The new DB parameter group can be the default for that DB parameter group family.

If you specify only a major version, Amazon RDS updates the DB instance to the default minor version if the current minor version is lower. For information about valid engine versions, see CreateDBInstance, or call DescribeDBEngineVersions.

If the instance that you're modifying is acting as a read replica, the engine version that you specify must be the same or higher than the version that the source DB instance or cluster is running.

In RDS Custom for Oracle, this parameter is supported for read replicas only if they are in the PATCH_DB_FAILURE lifecycle.

Constraints:

  • If you are upgrading the engine version and modifying the DB instance class at the same time, the currently running engine version must be supported on the specified DB instance class. Otherwise, the operation returns an error. In this case, first run the operation to upgrade the engine version, and then run it again to modify the DB instance class.
iops class-attribute instance-attribute
iops: int | None = ...

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

Changing this setting doesn't result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request. If you are migrating from Provisioned IOPS to standard storage, set this value to 0. The DB instance will require a reboot for the change in storage type to take effect.

If you choose to migrate your DB instance from using standard storage to Provisioned IOPS (io1), or from Provisioned IOPS to standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance is available for use, but might experience performance degradation. While the migration takes place, nightly backups for the instance are suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

Constraints:

  • For RDS for MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL - The value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

  • When you increase the Provisioned IOPS, you must also specify the AllocatedStorage parameter. You can use the current value for AllocatedStorage.

Default: Uses existing setting

license_model class-attribute instance-attribute
license_model: str | None = ...

The license model for the DB instance.

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

Valid Values:

  • RDS for Db2 - bring-your-own-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

manage_master_user_password class-attribute instance-attribute
manage_master_user_password: bool | None = ...

Specifies whether to manage the master user password with Amazon Web Services Secrets Manager.

If the DB instance doesn't manage the master user password with Amazon Web Services Secrets Manager, you can turn on this management. In this case, you can't specify MasterUserPassword.

If the DB instance already manages the master user password with Amazon Web Services Secrets Manager, and you specify that the master user password is not managed with Amazon Web Services Secrets Manager, then you must specify MasterUserPassword. In this case, Amazon RDS deletes the secret and uses the new password for the master user specified by MasterUserPassword.

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

Constraints:

  • Can't manage the master user password with Amazon Web Services Secrets Manager if MasterUserPassword is specified.

  • Can't specify for RDS for Oracle CDB instances in the multi-tenant configuration. Use ModifyTenantDatabase instead.

  • Can't specify the parameters ManageMasterUserPassword and MultiTenant in the same operation.

master_user_authentication_type class-attribute instance-attribute
master_user_authentication_type: str | None = ...

Specifies the authentication type for the master user. With IAM master user authentication, you can change the master DB user to use IAM database authentication.

You can specify one of the following values:

  • password - Use standard database authentication with a password.

  • iam-db-auth - Use IAM database authentication for the master user.

This option is only valid for RDS for PostgreSQL and Aurora PostgreSQL engines.

master_user_password class-attribute instance-attribute
master_user_password: str | None = ...

The new password for the master user.

Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

Note

Amazon RDS API operations never return the password, so this operation provides a way to regain access to a primary instance user if the password is lost. This includes restoring privileges that might have been accidentally revoked.

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

  • Amazon Aurora

The password for the master user is managed by the DB cluster. For more information, see ModifyDBCluster.

  • RDS Custom

  • RDS for Oracle CDBs in the multi-tenant configuration

Specify the master password in ModifyTenantDatabase instead.

Default: Uses existing setting

Constraints:

  • Can't be specified if ManageMasterUserPassword is turned on.

  • Can include any printable ASCII character except "/", """, or "@". For RDS for Oracle, can't include the "&" (ampersand) or the "'" (single quotes) character.

Length Constraints:

  • RDS for Db2 - Must contain from 8 to 255 characters.

  • RDS for MariaDB - Must contain from 8 to 41 characters.

  • RDS for Microsoft SQL Server - Must contain from 8 to 128 characters.

  • RDS for MySQL - Must contain from 8 to 41 characters.

  • RDS for Oracle - Must contain from 8 to 30 characters.

  • RDS for PostgreSQL - Must contain from 8 to 128 characters.

master_user_secret_kms_key_id class-attribute instance-attribute
master_user_secret_kms_key_id: str | 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 both of the following conditions are met:

  • The DB instance doesn't manage the master user password in Amazon Web Services Secrets Manager.

If the DB instance already manages the master user password in Amazon Web Services Secrets Manager, you can't change the KMS key used to encrypt the secret.

  • You are turning on ManageMasterUserPassword to manage the master user password in Amazon Web Services Secrets Manager.

If you are turning on ManageMasterUserPassword and 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.

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.

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.

max_allocated_storage class-attribute instance-attribute
max_allocated_storage: int | 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 DB instances.

monitoring_interval class-attribute instance-attribute
monitoring_interval: int | None = ...

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collection of Enhanced Monitoring metrics, specify 0.

If MonitoringRoleArn is specified, set MonitoringInterval to a value other than 0.

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

Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60

Default: 0

monitoring_role_arn class-attribute instance-attribute
monitoring_role_arn: str | None = ...

The ARN for the IAM role that permits RDS to send enhanced monitoring metrics to Amazon CloudWatch Logs. For example, arn:aws:iam:123456789012:role/emaccess. For information on creating a monitoring role, see To create an IAM role for Amazon RDS Enhanced Monitoring in the Amazon RDS User Guide.

If MonitoringInterval is set to a value other than 0, supply a MonitoringRoleArn value.

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

multi_az class-attribute instance-attribute
multi_az: bool | None = ...

Specifies whether the DB instance is a Multi-AZ deployment. Changing this parameter doesn't result in an outage. The change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request.

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

multi_tenant class-attribute instance-attribute
multi_tenant: bool | None = ...

Specifies whether the to convert your DB instance from the single-tenant configuration to the multi-tenant configuration. This parameter is supported only for RDS for Oracle CDB instances.

During the conversion, RDS creates an initial tenant database and associates the DB name, master user name, character set, and national character set metadata with this database. The tags associated with the instance also propagate to the initial tenant database. You can add more tenant databases to your DB instance by using the CreateTenantDatabase operation.

Warning

The conversion to the multi-tenant configuration is permanent and irreversible, so you can't later convert back to the single-tenant configuration. When you specify this parameter, you must also specify ApplyImmediately.

network_type class-attribute instance-attribute
network_type: str | 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

new_db_instance_identifier class-attribute instance-attribute
new_db_instance_identifier: str | None = ...

The new identifier for the DB instance when renaming a DB instance. When you change the DB instance identifier, an instance reboot occurs immediately if you enable ApplyImmediately, or will occur during the next maintenance window if you disable ApplyImmediately. This value is stored as a lowercase string.

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

Constraints:

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

  • The first character must be a letter.

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

Example: mydbinstance

option_group_name class-attribute instance-attribute
option_group_name: str | None = ...

The option group to associate the DB instance with.

Changing this parameter doesn't result in an outage, with one exception. If the parameter change results in an option group that enables OEM, it can cause a brief period, lasting less than a second, during which new connections are rejected but existing connections aren't interrupted.

The change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request.

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 DB instances.

performance_insights_kms_key_id class-attribute instance-attribute
performance_insights_kms_key_id: str | None = ...

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.

If you don't specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your default 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.

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

performance_insights_retention_period class-attribute instance-attribute
performance_insights_retention_period: int | None = ...

The number of days to retain Performance Insights data.

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

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

If you specify a retention period that isn't valid, such as 94, Amazon RDS returns an error.

preferred_backup_window class-attribute instance-attribute
preferred_backup_window: str | 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.

preferred_maintenance_window class-attribute instance-attribute
preferred_maintenance_window: str | None = ...

The weekly time range during which system maintenance can occur, which might result in an outage. Changing this parameter doesn't result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If there are pending actions that cause a reboot, and the maintenance window is changed to include the current time, then changing this parameter causes a reboot of the DB instance. If you change this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide.

Default: Uses existing setting

Constraints:

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

  • The day values must be mon | tue | wed | thu | fri | sat | sun.

  • Must be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred backup window.

  • Must be at least 30 minutes.

processor_features class-attribute instance-attribute
processor_features: list[ProcessorFeature] | 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 DB instances.

promotion_tier class-attribute instance-attribute
promotion_tier: int | None = ...

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.

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

Default: 1

Valid Values: 0 - 15

publicly_accessible class-attribute instance-attribute
publicly_accessible: bool | None = ...

Specifies whether the DB instance is publicly accessible.

When the DB instance is publicly accessible and you connect from outside of the DB instance's virtual private cloud (VPC), its Domain Name System (DNS) endpoint resolves to the public IP address. When you connect from within the same VPC as the DB instance, the endpoint resolves to the private IP address. Access to the DB instance is ultimately controlled by the security group it uses. That public access isn't 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.

PubliclyAccessible only applies to DB instances in a VPC. The DB instance must be part of a public subnet and PubliclyAccessible must be enabled for it to be publicly accessible.

Changes to the PubliclyAccessible parameter are applied immediately regardless of the value of the ApplyImmediately parameter.

replica_mode class-attribute instance-attribute
replica_mode: str | None = ...

The open mode of a replica database.

This parameter is only supported for Db2 DB instances and Oracle DB instances.

Db2

Standby DB replicas are included in Db2 Advanced Edition (AE), Db2 Community Edition (CE), and Db2 Standard Edition (SE). The main use case for standby replicas is cross-Region disaster recovery. Because it doesn't accept user connections, a standby replica can't serve a read-only workload.

You can create a combination of standby and read-only DB replicas for the same primary DB instance. For more information, see Working with replicas for Amazon RDS for Db2 in the Amazon RDS User Guide.

To create standby DB replicas for RDS for Db2, set this parameter to mounted.

Oracle

Mounted DB replicas are included in Oracle Database Enterprise Edition. The main use case for mounted replicas is cross-Region disaster recovery. The primary database doesn't use Active Data Guard to transmit information to the mounted replica. Because it doesn't accept user connections, a mounted replica can't serve a read-only workload.

You can create a combination of mounted and read-only DB replicas for the same primary DB instance. For more information, see Working with read replicas for Amazon RDS for Oracle in the Amazon RDS User Guide.

For RDS Custom, you must specify this parameter and set it to mounted. The value won't be set by default. After replica creation, you can manage the open mode manually.

resume_full_automation_mode_minutes class-attribute instance-attribute
resume_full_automation_mode_minutes: int | None = ...

The number of minutes to pause the automation. When the time period ends, RDS Custom resumes full automation.

Default: 60

Constraints:

  • Must be at least 60.

  • Must be no more than 1,440.

rotate_master_user_password class-attribute instance-attribute
rotate_master_user_password: bool | None = ...

Specifies whether to rotate the secret managed by Amazon Web Services Secrets Manager for the master user password.

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 secret value contains the updated password.

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

Constraints:

  • You must apply the change immediately when rotating the master user password.
storage_throughput class-attribute instance-attribute
storage_throughput: int | None = ...

The storage throughput value for the DB instance.

This setting applies only to the gp3 storage type.

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

storage_type class-attribute instance-attribute
storage_type: str | None = ...

The storage type to associate with the DB instance.

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

If you choose to migrate your DB instance from using standard storage to gp2 (General Purpose SSD), gp3, or Provisioned IOPS (io1), or from these storage types to standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance is available for use, but might experience performance degradation. While the migration takes place, nightly backups for the instance are suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

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

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

tag_specifications class-attribute instance-attribute
tag_specifications: list[TagSpecification] | None = ...

Tags to assign to resources associated with the DB instance.

Valid Values:

  • auto-backup - The DB instance's automated backup.
tde_credential_arn class-attribute instance-attribute
tde_credential_arn: str | None = ...

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

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

tde_credential_password class-attribute instance-attribute
tde_credential_password: str | 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 DB instances.

use_default_processor_features class-attribute instance-attribute
use_default_processor_features: bool | 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 instances.

vpc_security_group_ids class-attribute instance-attribute
vpc_security_group_ids: list[str] | None = ...

A list of Amazon EC2 VPC security groups to associate with this DB instance. This change is asynchronously applied as soon as possible.

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

  • Amazon Aurora (The associated list of EC2 VPC security groups is managed by the DB cluster. For more information, see ModifyDBCluster.)

  • RDS Custom

Constraints:

  • If supplied, must match existing VPC security group IDs.

Output

ModifyDBInstanceOutput dataclass

Bases: _SerdeShape

Dataclass for ModifyDBInstanceOutput structure.

Attributes

db_instance class-attribute instance-attribute
db_instance: DBInstance | None = ...

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.

response_metadata class-attribute instance-attribute
response_metadata: ResponseMetadata = ...

Metadata about the response that produced this output. Use this to recover the request identifiers a service's support team needs in order to investigate a call. Members of the metadata are individually optional.