AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

IAmazonRDS

Interface

Search:

Interface for accessing RDS
Amazon Relational Database Service

Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier
to set up, operate, and scale a relational database in the cloud. It provides cost-efficient,
resizable capacity for an industry-standard relational database and manages common
database administration tasks, freeing up developers to focus on what makes their
applications and businesses unique.

Amazon RDS gives you access to the capabilities of a MySQL, MariaDB, PostgreSQL, Microsoft
SQL Server, Oracle, or Amazon Aurora database server. These capabilities mean that
the code, applications, and tools you already use today with your existing databases
work with Amazon RDS without modification. Amazon RDS automatically backs up your
database and maintains the database software that powers your DB instance. Amazon
RDS is flexible: you can scale your DB instance's compute resources and storage capacity
to meet your application's demand. As with all Amazon Web Services, there are no up-front
investments, and you pay only for the resources you use.

This interface reference for Amazon RDS contains documentation for a programming or
command line interface you can use to manage Amazon RDS. Note that Amazon RDS is asynchronous,
which means that some interfaces might require techniques such as polling or callback
functions to determine when a command has been applied. In this reference, the parameter
descriptions indicate whether a command is applied immediately, on the next instance
reboot, or during the maintenance window. The reference structure is as follows, and
we list following some related topics from the user guide.

Inheritance Hierarchy

Syntax

Methods

Name

Description

Note:

Asynchronous operations (methods ending with Async) in the table below are for .NET 4.5 or higher. For .NET 3.5 the SDK follows the standard naming convention of BeginMethodName and EndMethodName to indicate asynchronous operations - these method pairs are not shown in the table below.

Adds metadata tags to an Amazon RDS resource. These tags can also be used with cost
allocation reporting to track cost associated with Amazon RDS resources, or used in
a Condition statement in an IAM policy for Amazon RDS.

Enables ingress to a DBSecurityGroup using one of two forms of authorization. First,
EC2 or VPC security groups can be added to the DBSecurityGroup if the application
using the database is running on EC2 or VPC instances. Second, IP ranges are available
if the application accessing your database is running on the Internet. Required parameters
for this API are one of CIDR range, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId
and either EC2SecurityGroupName or EC2SecurityGroupId for non-VPC).

You can't authorize ingress from an EC2 security group in one AWS Region to an Amazon
RDS DB instance in another. You can't authorize ingress from a VPC security group
in one VPC to an Amazon RDS DB instance in another.

To copy a DB cluster snapshot from a shared manual DB cluster snapshot, SourceDBClusterSnapshotIdentifier
must be the Amazon Resource Name (ARN) of the shared DB cluster snapshot.

You can copy an encrypted DB cluster snapshot from another AWS Region. In that case,
the AWS Region where you call the CopyDBClusterSnapshot action is the
destination AWS Region for the encrypted DB cluster snapshot to be copied to. To copy
an encrypted DB cluster snapshot from another AWS Region, you must provide the following
values:

KmsKeyId - The AWS Key Management System (AWS KMS) key identifier for
the key to use to encrypt the copy of the DB cluster snapshot in the destination AWS
Region.

PreSignedUrl - A URL that contains a Signature Version 4 signed request
for the CopyDBClusterSnapshot action to be called in the source AWS Region
where the DB cluster snapshot is copied from. The pre-signed URL must be a valid request
for the CopyDBClusterSnapshot API action that can be executed in the
source AWS Region that contains the encrypted DB cluster snapshot to be copied.

The pre-signed URL request must contain the following parameter values:

KmsKeyId - The KMS key identifier for the key to use to encrypt the
copy of the DB cluster snapshot in the destination AWS Region. This is the same identifier
for both the CopyDBClusterSnapshot action that is called in the destination
AWS Region, and the action contained in the pre-signed URL.

DestinationRegion - The name of the AWS Region that the DB cluster snapshot
will be created in.

SourceDBClusterSnapshotIdentifier - The DB cluster snapshot identifier
for the encrypted DB cluster snapshot to be copied. This identifier must be in the
Amazon Resource Name (ARN) format for the source AWS Region. For example, if you are
copying an encrypted DB cluster snapshot from the us-west-2 AWS Region, then your
SourceDBClusterSnapshotIdentifier looks like the following example: arn:aws:rds:us-west-2:123456789012:cluster-snapshot:aurora-cluster1-snapshot-20161115.

TargetDBClusterSnapshotIdentifier - The identifier for the new copy
of the DB cluster snapshot in the destination AWS Region.

SourceDBClusterSnapshotIdentifier - The DB cluster snapshot identifier
for the encrypted DB cluster snapshot to be copied. This identifier must be in the
ARN format for the source AWS Region and is the same value as the SourceDBClusterSnapshotIdentifier
in the pre-signed URL.

To cancel the copy operation once it is in progress, delete the target DB cluster
snapshot identified by TargetDBClusterSnapshotIdentifier while that DB
cluster snapshot is in "copying" status.

You can use the ReplicationSourceIdentifier parameter to create the DB
cluster as a Read Replica of another DB cluster or Amazon RDS MySQL DB instance. For
cross-region replication where the DB cluster identified by ReplicationSourceIdentifier
is encrypted, you must also specify the PreSignedUrl parameter.

Parameters in a DB cluster parameter group apply to all of the instances in a DB cluster.

A DB cluster parameter group is initially created with the default parameters for
the database engine used by instances in the DB cluster. To provide custom values
for any of the parameters, you must modify the group after creating it using ModifyDBClusterParameterGroup.
Once you've created a DB cluster parameter group, you need to associate it with your
DB cluster using ModifyDBCluster. When you associate a new DB cluster parameter
group with a running DB cluster, you need to reboot the DB instances in the DB cluster
without failover for the new DB cluster parameter group and associated settings to
take effect.

After you create a DB cluster parameter group, you should wait at least 5 minutes
before creating your first DB cluster that uses that DB cluster parameter group as
the default parameter group. This allows Amazon RDS to fully complete the create action
before the DB cluster parameter group is used as the default for a new DB cluster.
This is especially important for parameters that are critical when creating the default
database for a DB cluster, such as the character set for the default database defined
by the character_set_database parameter. You can use the Parameter
Groups option of the Amazon RDS
console or the DescribeDBClusterParameters command to verify that your
DB cluster parameter group has been created or modified.

Amazon Aurora doesn't support this action. You must call the CreateDBInstance
action to create a DB instance for an Aurora DB cluster.

All Read Replica DB instances are created with backups disabled. All other DB instance
attributes (including DB security groups and DB parameter groups) are inherited from
the source DB instance, except as specified following.

A DB parameter group is initially created with the default parameters for the database
engine used by the DB instance. To provide custom values for any of the parameters,
you must modify the group after creating it using ModifyDBParameterGroup. Once
you've created a DB parameter group, you need to associate it with your DB instance
using ModifyDBInstance. When you associate a new DB parameter group with a
running DB instance, you need to reboot the DB instance without failover for the new
DB parameter group and associated settings to take effect.

After you create a DB parameter group, you should wait at least 5 minutes before creating
your first DB instance that uses that DB parameter group as the default parameter
group. This allows Amazon RDS to fully complete the create action before the parameter
group is used as the default for a new DB instance. This is especially important for
parameters that are critical when creating the default database for a DB instance,
such as the character set for the default database defined by the character_set_database
parameter. You can use the Parameter Groups option of the Amazon
RDS console or the DescribeDBParameters command to verify that your DB
parameter group has been created or modified.

Creates an RDS event notification subscription. This action requires a topic ARN (Amazon
Resource Name) created by either the RDS console, the SNS console, or the SNS API.
To obtain an ARN with SNS, you must create a topic in Amazon SNS and subscribe to
the topic. The ARN is displayed in the SNS console.

You can specify the type of source (SourceType) you want to be notified of, provide
a list of RDS sources (SourceIds) that triggers the events, and provide a list of
event categories (EventCategories) for events you want to be notified of. For example,
you can specify SourceType = db-instance, SourceIds = mydbinstance1, mydbinstance2
and EventCategories = Availability, Backup.

If you specify both the SourceType and SourceIds, such as SourceType = db-instance
and SourceIdentifier = myDBInstance1, you are notified of all the db-instance events
for the specified source. If you specify a SourceType but do not specify a SourceIdentifier,
you receive notice of the events for that source type for all your RDS sources. If
you do not specify either the SourceType nor the SourceIdentifier, you are notified
of events generated from all RDS sources belonging to your customer account.

The DeleteDBCluster action deletes a previously provisioned DB cluster. When you delete
a DB cluster, all automated backups for that DB cluster are deleted and can't be recovered.
Manual DB cluster snapshots of the specified DB cluster are not deleted.

The DeleteDBInstance action deletes a previously provisioned DB instance. When you
delete a DB instance, all automated backups for that instance are deleted and can't
be recovered. Manual DB snapshots of the DB instance to be deleted by DeleteDBInstance
are not deleted.

If you request a final DB snapshot the status of the Amazon RDS DB instance is deleting
until the DB snapshot is created. The API action DescribeDBInstance is
used to monitor the status of this operation. The action can't be canceled or reverted
once submitted.

Note that when a DB instance is in a failure state and has a status of failed,
incompatible-restore, or incompatible-network, you can only
delete it when the SkipFinalSnapshot parameter is set to true.

If the specified DB instance is part of an Amazon Aurora DB cluster, you can't delete
the DB instance if both of the following conditions are true:

The DB cluster is a Read Replica of another Amazon Aurora DB cluster.

The DB instance is the only instance in the DB cluster.

To delete a DB instance in this case, first call the PromoteReadReplicaDBCluster
API action to promote the DB cluster so it's no longer a Read Replica. After the promotion
completes, then call the DeleteDBInstance API action to delete the final
instance in the DB cluster.

Lists all of the attributes for a customer account. The attributes include Amazon
RDS quotas for the account, such as the number of DB instances allowed. The description
for a quota includes the quota name, current usage toward that quota, and the quota's
maximum value.

Lists all of the attributes for a customer account. The attributes include Amazon
RDS quotas for the account, such as the number of DB instances allowed. The description
for a quota includes the quota name, current usage toward that quota, and the quota's
maximum value.

Lists all of the attributes for a customer account. The attributes include Amazon
RDS quotas for the account, such as the number of DB instances allowed. The description
for a quota includes the quota name, current usage toward that quota, and the quota's
maximum value.

When sharing snapshots with other AWS accounts, DescribeDBClusterSnapshotAttributes
returns the restore attribute and a list of IDs for the AWS accounts
that are authorized to copy or restore the manual DB cluster snapshot. If all
is included in the list of values for the restore attribute, then the
manual DB cluster snapshot is public and can be copied or restored by all AWS accounts.

To add or remove access for an AWS account to copy or restore a manual DB cluster
snapshot, or to make the manual DB cluster snapshot public or private, use the ModifyDBClusterSnapshotAttribute
API action.

Returns a list of DB snapshot attribute names and values for a manual DB snapshot.

When sharing snapshots with other AWS accounts, DescribeDBSnapshotAttributes
returns the restore attribute and a list of IDs for the AWS accounts
that are authorized to copy or restore the manual DB snapshot. If all
is included in the list of values for the restore attribute, then the
manual DB snapshot is public and can be copied or restored by all AWS accounts.

To add or remove access for an AWS account to copy or restore a manual DB snapshot,
or to make the manual DB snapshot public or private, use the ModifyDBSnapshotAttribute
API action.

Displays a list of categories for all event source types, or, if specified, for a
specified source type. You can see a list of the event categories and source types
in the
Events topic in the Amazon RDS User Guide.

Displays a list of categories for all event source types, or, if specified, for a
specified source type. You can see a list of the event categories and source types
in the
Events topic in the Amazon RDS User Guide.

Displays a list of categories for all event source types, or, if specified, for a
specified source type. You can see a list of the event categories and source types
in the
Events topic in the Amazon RDS User Guide.

Returns events related to DB instances, DB security groups, DB snapshots, and DB parameter
groups for the past 14 days. Events specific to a particular DB instance, DB security
group, database snapshot, or DB parameter group can be obtained by providing the name
as a parameter. By default, the past hour of events are returned.

Returns events related to DB instances, DB security groups, DB snapshots, and DB parameter
groups for the past 14 days. Events specific to a particular DB instance, DB security
group, database snapshot, or DB parameter group can be obtained by providing the name
as a parameter. By default, the past hour of events are returned.

Returns events related to DB instances, DB security groups, DB snapshots, and DB parameter
groups for the past 14 days. Events specific to a particular DB instance, DB security
group, database snapshot, or DB parameter group can be obtained by providing the name
as a parameter. By default, the past hour of events are returned.

A failover for a DB cluster promotes one of the Aurora Replicas (read-only instances)
in the DB cluster to be the primary instance (the cluster writer).

Amazon Aurora will automatically fail over to an Aurora Replica, if one exists, when
the primary instance fails. You can force a failover when you want to simulate a failure
of a primary instance for testing. Because each instance in a DB cluster has its own
endpoint address, you will need to clean up and re-establish any existing connections
that use those endpoint addresses when the failover is complete.

Set the capacity of an Aurora Serverless DB cluster to a specific value.

Aurora Serverless scales seamlessly based on the workload on the DB cluster. In some
cases, the capacity might not scale fast enough to meet a sudden change in workload,
such as a large number of new transactions. Call ModifyCurrentDBClusterCapacity
to set the capacity explicitly.

After this call sets the DB cluster capacity, Aurora Serverless can automatically
scale the DB cluster based on the cooldown period for scaling up and the cooldown
period for scaling down.

If you call ModifyCurrentDBClusterCapacity with the default TimeoutAction,
connections that prevent Aurora Serverless from finding a scaling point might be dropped.
For more information about scaling points, see
Autoscaling for Aurora Serverless in the Amazon RDS User Guide.

Modify a setting for an Amazon Aurora DB cluster. You can change one or more database
configuration parameters by specifying these parameters and the new values in the
request. For more information on Amazon Aurora, see Aurora
on Amazon RDS in the Amazon RDS User Guide.

Modifies the parameters of a DB cluster parameter group. To modify more than one
parameter, submit a list of the following: ParameterName, ParameterValue,
and ApplyMethod. A maximum of 20 parameters can be modified in a single
request.

Changes to dynamic parameters are applied immediately. Changes to static parameters
require a reboot without failover to the DB cluster associated with the parameter
group before the change can take effect.

After you create a DB cluster parameter group, you should wait at least 5 minutes
before creating your first DB cluster that uses that DB cluster parameter group as
the default parameter group. This allows Amazon RDS to fully complete the create action
before the parameter group is used as the default for a new DB cluster. This is especially
important for parameters that are critical when creating the default database for
a DB cluster, such as the character set for the default database defined by the character_set_database
parameter. You can use the Parameter Groups option of the Amazon
RDS console or the DescribeDBClusterParameters command to verify that your
DB cluster parameter group has been created or modified.

Adds an attribute and values to, or removes an attribute and values from, a manual
DB cluster snapshot.

To share a manual DB cluster snapshot with other AWS accounts, specify restore
as the AttributeName and use the ValuesToAdd parameter to
add a list of IDs of the AWS accounts that are authorized to restore the manual DB
cluster snapshot. Use the value all to make the manual DB cluster snapshot
public, which means that it can be copied or restored by all AWS accounts. Do not
add the all value for any manual DB cluster snapshots that contain private
information that you don't want available to all AWS accounts. If a manual DB cluster
snapshot is encrypted, it can be shared, but only by specifying a list of authorized
AWS account IDs for the ValuesToAdd parameter. You can't use all
as a value for that parameter in this case.

To view which AWS accounts have access to copy or restore a manual DB cluster snapshot,
or whether a manual DB cluster snapshot public or private, use the DescribeDBClusterSnapshotAttributes
API action.

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.

Modifies the parameters of a DB parameter group. To modify more than one parameter,
submit a list of the following: ParameterName, ParameterValue,
and ApplyMethod. A maximum of 20 parameters can be modified in a single
request.

Changes to dynamic parameters are applied immediately. Changes to static parameters
require a reboot without failover to the DB instance associated with the parameter
group before the change can take effect.

After you modify a DB parameter group, you should wait at least 5 minutes before creating
your first DB instance that uses that DB parameter group as the default parameter
group. This allows Amazon RDS to fully complete the modify action before the parameter
group is used as the default for a new DB instance. This is especially important for
parameters that are critical when creating the default database for a DB instance,
such as the character set for the default database defined by the character_set_database
parameter. You can use the Parameter Groups option of the Amazon
RDS console or the DescribeDBParameters command to verify that your DB
parameter group has been created or modified.

Adds an attribute and values to, or removes an attribute and values from, a manual
DB snapshot.

To share a manual DB snapshot with other AWS accounts, specify restore
as the AttributeName and use the ValuesToAdd parameter to
add a list of IDs of the AWS accounts that are authorized to restore the manual DB
snapshot. Uses the value all to make the manual DB snapshot public, which
means it can be copied or restored by all AWS accounts. Do not add the all
value for any manual DB snapshots that contain private information that you don't
want available to all AWS accounts. If the manual DB snapshot is encrypted, it can
be shared, but only by specifying a list of authorized AWS account IDs for the ValuesToAdd
parameter. You can't use all as a value for that parameter in this case.

To view which AWS accounts have access to copy or restore a manual DB snapshot, or
whether a manual DB snapshot public or private, use the DescribeDBSnapshotAttributes
API action.

Backup duration is a function of the amount of changes to the database since the previous
backup. If you plan to promote a Read Replica to a standalone instance, we recommend
that you enable backups and complete at least one backup prior to promotion. In addition,
a Read Replica cannot be promoted to a standalone instance when it is in the backing-up
status. If you have enabled backups on your Read Replica, configure the automated
backup window so that daily backups do not interfere with Read Replica promotion.

You might need to reboot your DB instance, usually for maintenance reasons. For example,
if you make certain modifications, or if you change the DB parameter group associated
with the DB instance, you must reboot the instance for the changes to take effect.

Rebooting a DB instance restarts the database engine service. Rebooting a DB instance
results in a momentary outage, during which the DB instance status is set to rebooting.

Modifies the parameters of a DB cluster parameter group to the default value. To
reset specific parameters submit a list of the following: ParameterName
and ApplyMethod. To reset the entire DB cluster parameter group, specify
the DBClusterParameterGroupName and ResetAllParameters parameters.

When resetting the entire group, dynamic parameters are updated immediately and static
parameters are set to pending-reboot to take effect on the next DB instance
restart or RebootDBInstance request. You must call RebootDBInstance
for every DB instance in your DB cluster that you want the updated static parameter
to apply to.

Modifies the parameters of a DB parameter group to the engine/system default value.
To reset specific parameters, provide a list of the following: ParameterName
and ApplyMethod. To reset the entire DB parameter group, specify the
DBParameterGroup name and ResetAllParameters parameters.
When resetting the entire group, dynamic parameters are updated immediately and static
parameters are set to pending-reboot to take effect on the next DB instance
restart or RebootDBInstance request.

Creates an Amazon Aurora DB cluster from data stored in an Amazon S3 bucket. Amazon
RDS must be authorized to access the Amazon S3 bucket and the data must be created
using the Percona XtraBackup utility as described in Migrating
Data from MySQL by Using an Amazon S3 Bucket.

If a DB snapshot is specified, the target DB cluster is created from the source DB
snapshot with a default configuration and default security group.

If a DB cluster snapshot is specified, the target DB cluster is created from the source
DB cluster restore point with the same configuration as the original source DB cluster,
except that the new DB cluster is created with the default security group.

Restores a DB cluster to an arbitrary point in time. Users can restore to any point
in time before LatestRestorableTime for up to BackupRetentionPeriod
days. The target DB cluster is created from the source DB cluster with the same configuration
as the original DB cluster, except that the new DB cluster is created with the default
DB security group.

This action only restores the DB cluster, not the DB instances for that DB cluster.
You must invoke the CreateDBInstance action to create DB instances for the
restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier.
You can create DB instances only after the RestoreDBClusterToPointInTime
action has completed and the DB cluster is available.

Creates a new DB instance from a DB snapshot. The target database is created from
the source database restore point with the most of original configuration with the
default security 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 AZ deployment and not a single-AZ deployment.

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

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

Amazon Relational Database Service (Amazon RDS) supports importing MySQL databases
by using backup files. You can create a backup of your on-premises database, store
it on Amazon Simple Storage Service (Amazon S3), and then restore the backup file
onto a new Amazon RDS DB instance running MySQL. For more information, see Importing
Data into an Amazon RDS MySQL DB Instance.

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.

Revokes ingress from a DBSecurityGroup for previously authorized IP ranges or EC2
or VPC Security Groups. Required parameters for this API are one of CIDRIP, EC2SecurityGroupId
for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId).

Starts a DB instance that was stopped using the AWS console, the stop-db-instance
AWS CLI command, or the StopDBInstance action. For more information, see Stopping
and Starting a DB instance in the AWS RDS user guide.

Stops a DB instance. When you stop a DB instance, Amazon RDS retains the DB instance's
metadata, including its endpoint, DB parameter group, and option group membership.
Amazon RDS also retains the transaction logs so you can do a point-in-time restore
if necessary. For more information, see Stopping and Starting a DB instance in the
AWS RDS user guide.