Amazon Relational Database Service
API Reference (API Version 2014-09-01)
« PreviousNext »
View the PDF for this guide.Go to the AWS Discussion Forum for this product.Did this page help you?  Yes | No |  Tell us about it...

ModifyDBInstance

Description

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

Request Parameters

For information about the common parameters that all actions use, see Common Parameters.

AllocatedStorage

The new storage capacity of the RDS instance. Changing this setting does not result in an outage and the change is applied during the next maintenance window unless ApplyImmediately is set to true for this request.

MySQL

Default: Uses existing setting

Valid Values: 5-3072

Constraints: 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.

Type: Integer

PostgreSQL

Default: Uses existing setting

Valid Values: 5-3072

Constraints: 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.

Type: Integer

Oracle

Default: Uses existing setting

Valid Values: 10-3072

Constraints: 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.

SQL Server

Cannot be modified.

If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using 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 will be available for use, but may experience performance degradation. While the migration takes place, nightly backups for the instance will be 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.

Type: Integer

Required: No

AllowMajorVersionUpgrade

Indicates that major version upgrades are allowed. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

Constraints: This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the DB instance's current version.

Type: Boolean

Required: No

ApplyImmediately

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.

If this parameter is set to false, changes to the DB instance are applied during the next maintenance window. Some parameter changes can cause an outage and will be applied on the next call to RebootDBInstance, or the next failure reboot. Review the table of parameters in Modifying a DB Instance and Using the Apply Immediately Parameter to see the impact that setting ApplyImmediately to true or false has for each modified parameter and to determine when the changes will be applied.

Default: false

Type: Boolean

Required: No

AutoMinorVersionUpgrade

Indicates that minor version upgrades will be applied automatically to the DB instance during the maintenance window. Changing this parameter does not result in an outage except in the following case and the change is asynchronously applied as soon as possible. An outage will result if this parameter is set to true during the maintenance window, and a newer minor version is available, and RDS has enabled auto patching for that engine version.

Type: Boolean

Required: No

BackupRetentionPeriod

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.

Changing this parameter can result in an outage if you change from 0 to a non-zero value or from a non-zero value to 0. These changes are applied during the next maintenance window unless the ApplyImmediately parameter is set to true 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.

Default: Uses existing setting

Constraints:

  • Must be a value from 0 to 35
  • Can be specified for a read replica only if the source is running MySQL 5.6
  • Cannot be set to 0 if the DB instance is a source to read replicas

Type: Integer

Required: No

DBInstanceClass

The new compute and memory capacity of the DB instance. To determine the instance classes that are available for a particular DB engine, use the DescribeOrderableDBInstanceOptions action.

Passing a value for this setting causes an outage during the change and is applied during the next maintenance window, unless ApplyImmediately is specified as true for this request.

Default: Uses existing setting

Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge | db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge | db.m3.2xlarge | db.r3.large | db.r3.xlarge | db.r3.2xlarge | db.r3.4xlarge | db.r3.8xlarge | db.t2.micro | db.t2.small | db.t2.medium

Type: String

Required: No

DBInstanceIdentifier

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

Constraints:

  • Must be the identifier for an existing DB instance
  • Must contain from 1 to 63 alphanumeric characters or hyphens
  • First character must be a letter
  • Cannot end with a hyphen or contain two consecutive hyphens

Type: String

Required: Yes

DBParameterGroupName

The name of the DB parameter group to apply to the DB instance. Changing this setting does not 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. The db instance will NOT be rebooted automatically and the parameter changes will NOT be applied during the next maintenance window.

Default: Uses existing setting

Constraints: The DB parameter group must be in the same DB parameter group family as this DB instance.

Type: String

Required: No

DBSecurityGroups.member.N

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

Constraints:

  • Must be 1 to 255 alphanumeric characters
  • First character must be a letter
  • Cannot end with a hyphen or contain two consecutive hyphens

Type: String list

Required: No

EngineVersion

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 set to true for this request.

For major version upgrades, if a non-default 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.

For a list of valid engine versions, see CreateDBInstance.

Type: String

Required: No

Iops

The new Provisioned IOPS (I/O operations per second) value for the RDS instance. Changing this setting does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

Default: Uses existing setting

Constraints: 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. 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.

SQL Server

Setting the IOPS value for the SQL Server database engine is not supported.

Type: Integer

If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using 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 will be available for use, but may experience performance degradation. While the migration takes place, nightly backups for the instance will be 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.

Type: Integer

Required: No

MasterUserPassword

The new password for the DB instance master user. Can be any printable ASCII character except "/", """, or "@".

Changing this parameter does not 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.

Default: Uses existing setting

Constraints: Must be 8 to 41 alphanumeric characters (MySQL), 8 to 30 alphanumeric characters (Oracle), or 8 to 128 alphanumeric characters (SQL Server).

Note

Amazon RDS API actions never return the password, so this action provides a way to regain access to a master instance user if the password is lost. This includes restoring privileges that may have been accidentally revoked.

Type: String

Required: No

MultiAZ

Specifies if the DB instance is a Multi-AZ deployment. Changing this parameter does not result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request.

Constraints: Cannot be specified if the DB instance is a read replica.

Type: Boolean

Required: No

NewDBInstanceIdentifier

The new DB instance identifier for the DB instance when renaming a DB instance. When you change the DB instance identifier, an instance reboot will occur immediately if you set Apply Immediately to true, or will occur during the next maintenance window if Apply Immediately to false. This value is stored as a lowercase string.

Constraints:

  • Must contain from 1 to 63 alphanumeric characters or hyphens
  • First character must be a letter
  • Cannot end with a hyphen or contain two consecutive hyphens

Type: String

Required: No

OptionGroupName

Indicates that the DB instance should be associated with the specified option group. Changing this parameter does not result in an outage except in the following case and the change is applied during the next maintenance window unless the ApplyImmediately parameter is set to true for this request. If the parameter change results in an option group that enables OEM, this change can cause a brief (sub-second) period during which new connections are rejected but existing connections are not interrupted.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, cannot be removed from an option group, and that option group cannot be removed from a DB instance once it is associated with a DB instance

Type: String

Required: No

PreferredBackupWindow

The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod. Changing this parameter does not result in an outage and the change is asynchronously applied as soon as possible.

Constraints:

  • Must be in the format hh24:mi-hh24:mi
  • Times should be Universal Time Coordinated (UTC)
  • Must not conflict with the preferred maintenance window
  • Must be at least 30 minutes

Type: String

Required: No

PreferredMaintenanceWindow

The weekly time range (in UTC) during which system maintenance can occur, which may result in an outage. Changing this parameter does not 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 will cause a reboot of the DB instance. If moving 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.

Default: Uses existing setting

Format: ddd:hh24:mi-ddd:hh24:mi

Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

Constraints: Must be at least 30 minutes

Type: String

Required: No

StorageType

Specifies storage type to be associated with the DB Instance.

Valid values: standard | gp2 | io1

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

Default: io1 if the Iops parameter is specified; otherwise standard

Type: String

Required: No

TdeCredentialArn

The ARN from the Key Store with which to associate the instance for TDE encryption.

Type: String

Required: No

TdeCredentialPassword

The password for the given ARN from the Key Store in order to access the device.

Type: String

Required: No

VpcSecurityGroupIds.member.N

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

Constraints:

  • Must be 1 to 255 alphanumeric characters
  • First character must be a letter
  • Cannot end with a hyphen or contain two consecutive hyphens

Type: String list

Required: No

Response Elements

The following elements are returned in a structure named DBInstance.

AllocatedStorage

Specifies the allocated storage size specified in gigabytes.

Type: Integer

AutoMinorVersionUpgrade

Indicates that minor version patches are applied automatically.

Type: Boolean

AvailabilityZone

Specifies the name of the Availability Zone the DB instance is located in.

Type: String

BackupRetentionPeriod

Specifies the number of days for which automatic DB snapshots are retained.

Type: Integer

CharacterSetName

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

Type: String

DBInstanceClass

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

Type: String

DBInstanceIdentifier

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

Type: String

DBInstanceStatus

Specifies the current state of this database.

Type: String

DBName

The meaning of this parameter differs according to the database engine you use. For example, this value returns only MySQL information when returning values from CreateDBInstanceReadReplica since read replicas are only supported for MySQL.

MySQL

Contains the name of the initial database of this instance that was provided at create time, if one was specified when the DB instance was created. This same name is returned for the life of the DB instance.

Type: String

Oracle

Contains the Oracle System ID (SID) of the created DB instance. Not shown when the returned parameters do not apply to an Oracle DB instance.

Type: String

DBParameterGroups

Provides the list of DB parameter groups applied to this DB instance.

Type: DBParameterGroupStatus list

DBSecurityGroups

Provides List of DB security group elements containing only DBSecurityGroup.Name and DBSecurityGroup.Status subelements.

Type: DBSecurityGroupMembership list

DBSubnetGroup

Specifies information on the subnet group associated with the DB instance, including the name, description, and subnets in the subnet group.

Type: DBSubnetGroup

Endpoint

Specifies the connection endpoint.

Type: Endpoint

Engine

Provides the name of the database engine to be used for this DB instance.

Type: String

EngineVersion

Indicates the database engine version.

Type: String

InstanceCreateTime

Provides the date and time the DB instance was created.

Type: DateTime

Iops

Specifies the Provisioned IOPS (I/O operations per second) value.

Type: Integer

LatestRestorableTime

Specifies the latest time to which a database can be restored with point-in-time restore.

Type: DateTime

LicenseModel

License model information for this DB instance.

Type: String

MasterUsername

Contains the master username for the DB instance.

Type: String

MultiAZ

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

Type: Boolean

OptionGroupMemberships

Provides the list of option group memberships for this DB instance.

Type: OptionGroupMembership list

PendingModifiedValues

Specifies that changes to the DB instance are pending. This element is only included when changes are pending. Specific changes are identified by subelements.

Type: PendingModifiedValues

PreferredBackupWindow

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

Type: String

PreferredMaintenanceWindow

Specifies the weekly time range (in UTC) during which system maintenance can occur.

Type: String

PubliclyAccessible

Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.

Default: The default behavior varies depending on whether a VPC has been requested or not. The following list shows the default behavior in each case.

  • Default VPC:true
  • VPC:false

If no DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be publicly accessible. If a specific DB subnet group has been specified as part of the request and the PubliclyAccessible value has not been set, the DB instance will be private.

Type: Boolean

ReadReplicaDBInstanceIdentifiers

Contains one or more identifiers of the read replicas associated with this DB instance.

Type: String list

ReadReplicaSourceDBInstanceIdentifier

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

Type: String

SecondaryAvailabilityZone

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

Type: String

StatusInfos

The status of a read replica. If the instance is not a read replica, this will be blank.

Type: DBInstanceStatusInfo list

StorageType

Specifies storage type associated with DB Instance.

Type: String

TdeCredentialArn

The ARN from the Key Store with which the instance is associated for TDE encryption.

Type: String

VpcSecurityGroups

Provides List of VPC security group elements that the DB instance belongs to.

Type: VpcSecurityGroupMembership list

Errors

For information about the errors that are common to all actions, see Common Errors.

AuthorizationNotFound

Specified CIDRIP or EC2 security group is not authorized for the specified DB security group.

RDS may not also be authorized via IAM to perform necessary actions on your behalf.

HTTP Status Code: 404

DBInstanceAlreadyExists

User already has a DB instance with the given identifier.

HTTP Status Code: 400

DBInstanceNotFound

DBInstanceIdentifier does not refer to an existing DB instance.

HTTP Status Code: 404

DBParameterGroupNotFound

DBParameterGroupName does not refer to an existing DB parameter group.

HTTP Status Code: 404

DBSecurityGroupNotFound

DBSecurityGroupName does not refer to an existing DB security group.

HTTP Status Code: 404

DBUpgradeDependencyFailure

The DB upgrade failed because a resource the DB depends on could not be modified.

HTTP Status Code: 400

InsufficientDBInstanceCapacity

Specified DB instance class is not available in the specified Availability Zone.

HTTP Status Code: 400

InvalidDBInstanceState

The specified DB instance is not in the available state.

HTTP Status Code: 400

InvalidDBSecurityGroupState

The state of the DB security group does not allow deletion.

HTTP Status Code: 400

InvalidVPCNetworkState

DB subnet group does not cover all Availability Zones after it is created because users' change.

HTTP Status Code: 400

OptionGroupNotFound

The specified option group could not be found.

HTTP Status Code: 400

ProvisionedIopsNotAvailableInAZ

Provisioned IOPS not available in the specified Availability Zone.

HTTP Status Code: 400

StorageQuotaExceeded

Request would result in user exceeding the allowed amount of storage available across all DB instances.

HTTP Status Code: 400

StorageTypeNotSupported

StorageType specified cannot be associated with the DB Instance.

HTTP Status Code: 400

Examples

Sample Request

https://rds.us-east-1.amazonaws.com/
   ?Action=ModifyDBInstance
   &AllocatedStorage=20
   &DBInstanceIdentifier=myawsuser-dbi04
   &SignatureMethod=HmacSHA256
   &SignatureVersion=4
   &Version=2014-09-01
   &X-Amz-Algorithm=AWS4-HMAC-SHA256
   &X-Amz-Credential=AKIADQKE4SARGYLE/20140425/us-east-1/rds/aws4_request
   &X-Amz-Date=20140425T192732Z
   &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date
   &X-Amz-Signature=1dc9dd716f4855e9bdf188c70f1cf9f6251b070b68b81103b59ec70c3e7854b3

            

Sample Response


<ModifyDBInstanceResponse xmlns="http://rds.amazonaws.com/doc/2014-09-01/">
  <ModifyDBInstanceResult>
    <DBInstance>
      <BackupRetentionPeriod>7</BackupRetentionPeriod>
      <DBInstanceStatus>available</DBInstanceStatus>
      <MultiAZ>true</MultiAZ>
      <VpcSecurityGroups/>
      <DBInstanceIdentifier>myawsuser-dbi04</DBInstanceIdentifier>
      <PreferredBackupWindow>10:03-10:33</PreferredBackupWindow>
      <PreferredMaintenanceWindow>wed:03:32-wed:04:02</PreferredMaintenanceWindow>
      <AvailabilityZone>us-east-1a</AvailabilityZone>
      <ReadReplicaDBInstanceIdentifiers/>
      <LatestRestorableTime>2014-04-25T19:25:00Z</LatestRestorableTime>
      <Engine>mysql</Engine>
      <PendingModifiedValues>
        <AllocatedStorage>20</AllocatedStorage>
      </PendingModifiedValues>
      <LicenseModel>general-public-license</LicenseModel>
      <DBParameterGroups>
        <DBParameterGroup>
          <ParameterApplyStatus>in-sync</ParameterApplyStatus>
          <DBParameterGroupName>default.mysql5.6</DBParameterGroupName>
        </DBParameterGroup>
      </DBParameterGroups>
      <Endpoint>
        <Port>3306</Port>
        <Address>myawsuser-dbi04.cg037hpkuyjt.us-east-1.rds.amazonaws.com</Address>
      </Endpoint>
      <EngineVersion>5.6.13</EngineVersion>
      <SecondaryAvailabilityZone>us-east-1b</SecondaryAvailabilityZone>
      <OptionGroupMemberships>
        <OptionGroupMembership>
          <OptionGroupName>default:mysql-5-6</OptionGroupName>
          <Status>in-sync</Status>
        </OptionGroupMembership>
      </OptionGroupMemberships>
      <PubliclyAccessible>true</PubliclyAccessible>
      <DBSecurityGroups>
        <DBSecurityGroup>
          <Status>active</Status>
          <DBSecurityGroupName>default</DBSecurityGroupName>
        </DBSecurityGroup>
      </DBSecurityGroups>
      <DBName>myawsuser_db04</DBName>
      <AutoMinorVersionUpgrade>true</AutoMinorVersionUpgrade>
      <InstanceCreateTime>2014-04-25T18:07:51.508Z</InstanceCreateTime>
      <AllocatedStorage>15</AllocatedStorage>
      <MasterUsername>myawsuser</MasterUsername>
      <DBInstanceClass>db.m1.small</DBInstanceClass>
    </DBInstance>
  </ModifyDBInstanceResult>
  <ResponseMetadata>
    <RequestId>f643f1ac-bbfe-11d3-f4c6-37db295f7674</RequestId>
  </ResponseMetadata>
</ModifyDBInstanceResponse>