Class: Aws::RDS::Client

Inherits:
Seahorse::Client::Base
  • Object
show all
Includes:
ClientStubs
Defined in:
lib/aws-sdk-rds/client.rb

Overview

An API client for RDS. To construct a client, you need to configure a ‘:region` and `:credentials`.

client = Aws::RDS::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).

See #initialize for a full list of supported configuration options.

Class Attribute Summary collapse

API Operations collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :plugins (Array<Seahorse::Client::Plugin>) — default: []]

    A list of plugins to apply to the client. Each plugin is either a class name or an instance of a plugin class.

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials. This can be an instance of any one of the following classes:

    • ‘Aws::Credentials` - Used for configuring static, non-refreshing credentials.

    • ‘Aws::SharedCredentials` - Used for loading static credentials from a shared file, such as `~/.aws/config`.

    • ‘Aws::AssumeRoleCredentials` - Used when you need to assume a role.

    • ‘Aws::AssumeRoleWebIdentityCredentials` - Used when you need to assume a role after providing credentials via the web.

    • ‘Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an access token generated from `aws login`.

    • ‘Aws::ProcessCredentials` - Used for loading credentials from a process that outputs to stdout.

    • ‘Aws::InstanceProfileCredentials` - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • ‘Aws::ECSCredentials` - Used for loading credentials from instances running in ECS.

    • ‘Aws::CognitoIdentityCredentials` - Used for loading credentials from the Cognito Identity service.

    When ‘:credentials` are not configured directly, the following locations will be searched for credentials:

    • Aws.config`

    • The ‘:access_key_id`, `:secret_access_key`, `:session_token`, and `:account_id` options.

    • ENV, ENV, ENV, and ENV

    • ‘~/.aws/credentials`

    • ‘~/.aws/config`

    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of ‘Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV to true.

  • :region (required, String)

    The AWS region to connect to. The configured ‘:region` is used to determine the service `:endpoint`. When not passed, a default `:region` is searched for in the following locations:

  • :access_key_id (String)
  • :account_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to ‘true`, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to `false`.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in ‘adaptive` retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a `RetryCapacityNotAvailableError` and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When ‘true`, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When ‘true`, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in ‘standard` and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :defaults_mode (String) — default: "legacy"

    See DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :disable_request_compression (Boolean) — default: false

    When set to ‘true’ the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the ‘:endpoint` option directly. This is normally constructed from the `:region` option. Configuring `:endpoint` is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to ‘true`, endpoint discovery will be enabled for operations when available.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the ‘:logger` at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in ‘standard` and `adaptive` retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, ‘default’ is used.

  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the ‘legacy` retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the ‘legacy` retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the ‘legacy` retry mode.

    @see www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the ‘legacy` retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the ‘legacy` retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • ‘legacy` - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • ‘standard` - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • ‘adaptive` - An experimental retry mode that includes all the functionality of `standard` mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

  • :secret_access_key (String)
  • :session_token (String)
  • :sigv4a_signing_region_set (Array)

    A list of regions that should be signed with SigV4a signing. When not passed, a default ‘:sigv4a_signing_region_set` is searched for in the following locations:

  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    ** Please note ** When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :telemetry_provider (Aws::Telemetry::TelemetryProviderBase) — default: Aws::Telemetry::NoOpTelemetryProvider

    Allows you to provide a telemetry provider, which is used to emit telemetry data. By default, uses ‘NoOpTelemetryProvider` which will not record or emit any telemetry data. The SDK supports the following telemetry providers:

    • OpenTelemetry (OTel) - To use the OTel provider, install and require the

    ‘opentelemetry-sdk` gem and then, pass in an instance of a `Aws::Telemetry::OTelProvider` for telemetry provider.

  • :token_provider (Aws::TokenProvider)

    A Bearer Token Provider. This can be an instance of any one of the following classes:

    • ‘Aws::StaticTokenProvider` - Used for configuring static, non-refreshing tokens.

    • ‘Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an access token generated from `aws login`.

    When ‘:token_provider` is not configured directly, the `Aws::TokenProviderChain` will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to ‘true`, dualstack enabled endpoints (with `.aws` TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to ‘true`, fips compatible endpoints will be used if available. When a `fips` region is used, the region is normalized and this config is set to `true`.

  • :validate_params (Boolean) — default: true

    When ‘true`, request parameters are validated before sending the request.

  • :endpoint_provider (Aws::RDS::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to ‘#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::RDS::EndpointParameters`.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has “Expect” header set to “100-continue”. Defaults to ‘nil` which disables this behaviour. This value can safely be set per request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_open_timeout (Float) — default: 15

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like ‘proxy.com:123’.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_wire_trace (Boolean) — default: false

    When ‘true`, HTTP debug output will be sent to the `:logger`.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a ‘content-length`).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When ‘true`, response errors are raised.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass ‘:ssl_ca_bundle` or `:ssl_ca_directory` the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass ‘:ssl_ca_bundle` or `:ssl_ca_directory` the the system default will be used if available.

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_cert (OpenSSL::X509::Certificate)

    Sets a client certificate when creating http connections.

  • :ssl_key (OpenSSL::PKey)

    Sets a client key when creating http connections.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

    When ‘true`, SSL peer certificates are verified when establishing a connection.



446
447
448
# File 'lib/aws-sdk-rds/client.rb', line 446

def initialize(*args)
  super
end

Class Attribute Details

.identifierObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



32018
32019
32020
# File 'lib/aws-sdk-rds/client.rb', line 32018

def identifier
  @identifier
end

Class Method Details

.errors_moduleObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



32021
32022
32023
# File 'lib/aws-sdk-rds/client.rb', line 32021

def errors_module
  Errors
end

Instance Method Details

#add_role_to_db_cluster(params = {}) ⇒ Struct

Associates an Identity and Access Management (IAM) role with a DB cluster.

Examples:

Example: To associate an AWS Identity and Access Management (IAM) role with a DB cluster


# The following example associates a role with a DB cluster.

resp = client.add_role_to_db_cluster({
  db_cluster_identifier: "mydbcluster", 
  role_arn: "arn:aws:iam::123456789012:role/RDSLoadFromS3", 
})

Request syntax with placeholder values


resp = client.add_role_to_db_cluster({
  db_cluster_identifier: "String", # required
  role_arn: "String", # required
  feature_name: "String",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The name of the DB cluster to associate the IAM role with.

  • :role_arn (required, String)

    The Amazon Resource Name (ARN) of the IAM role to associate with the Aurora DB cluster, for example ‘arn:aws:iam::123456789012:role/AuroraAccessRole`.

  • :feature_name (String)

    The name of the feature for the DB cluster that the IAM role is to be associated with. For information about supported feature names, see DBEngineVersion.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



492
493
494
495
# File 'lib/aws-sdk-rds/client.rb', line 492

def add_role_to_db_cluster(params = {}, options = {})
  req = build_request(:add_role_to_db_cluster, params)
  req.send_request(options)
end

#add_role_to_db_instance(params = {}) ⇒ Struct

Associates an Amazon Web Services Identity and Access Management (IAM) role with a DB instance.

<note markdown=“1”> To add a role to a DB instance, the status of the DB instance must be ‘available`.

</note>

This command doesn’t apply to RDS Custom.

Examples:

Example: To associate an AWS Identity and Access Management (IAM) role with a DB instance


# The following example adds the role to a DB instance named test-instance.

resp = client.add_role_to_db_instance({
  db_instance_identifier: "test-instance", 
  feature_name: "S3_INTEGRATION", 
  role_arn: "arn:aws:iam::111122223333:role/rds-s3-integration-role", 
})

Request syntax with placeholder values


resp = client.add_role_to_db_instance({
  db_instance_identifier: "String", # required
  role_arn: "String", # required
  feature_name: "String", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The name of the DB instance to associate the IAM role with.

  • :role_arn (required, String)

    The Amazon Resource Name (ARN) of the IAM role to associate with the DB instance, for example ‘arn:aws:iam::123456789012:role/AccessRole`.

  • :feature_name (required, String)

    The name of the feature for the DB instance that the IAM role is to be associated with. For information about supported feature names, see DBEngineVersion.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



544
545
546
547
# File 'lib/aws-sdk-rds/client.rb', line 544

def add_role_to_db_instance(params = {}, options = {})
  req = build_request(:add_role_to_db_instance, params)
  req.send_request(options)
end

#add_source_identifier_to_subscription(params = {}) ⇒ Types::AddSourceIdentifierToSubscriptionResult

Adds a source identifier to an existing RDS event notification subscription.

Examples:

Example: To add a source identifier to a subscription


# The following example adds another source identifier to an existing subscription.

resp = client.add_source_identifier_to_subscription({
  source_identifier: "test-instance-repl", 
  subscription_name: "my-instance-events", 
})

resp.to_h outputs the following:
{
  event_subscription: {
    cust_subscription_id: "my-instance-events", 
    customer_aws_id: "123456789012", 
    enabled: false, 
    event_categories_list: [
      "backup", 
      "recovery", 
    ], 
    event_subscription_arn: "arn:aws:rds:us-east-1:123456789012:es:my-instance-events", 
    sns_topic_arn: "arn:aws:sns:us-east-1:123456789012:interesting-events", 
    source_ids_list: [
      "test-instance", 
      "test-instance-repl", 
    ], 
    source_type: "db-instance", 
    status: "modifying", 
    subscription_creation_time: "Tue Jul 31 23:22:01 UTC 2018", 
  }, 
}

Request syntax with placeholder values


resp = client.add_source_identifier_to_subscription({
  subscription_name: "String", # required
  source_identifier: "String", # required
})

Response structure


resp.event_subscription.customer_aws_id #=> String
resp.event_subscription.cust_subscription_id #=> String
resp.event_subscription.sns_topic_arn #=> String
resp.event_subscription.status #=> String
resp.event_subscription.subscription_creation_time #=> String
resp.event_subscription.source_type #=> String
resp.event_subscription.source_ids_list #=> Array
resp.event_subscription.source_ids_list[0] #=> String
resp.event_subscription.event_categories_list #=> Array
resp.event_subscription.event_categories_list[0] #=> String
resp.event_subscription.enabled #=> Boolean
resp.event_subscription.event_subscription_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :subscription_name (required, String)

    The name of the RDS event notification subscription you want to add a source identifier to.

  • :source_identifier (required, String)

    The identifier of the event source to be added.

    Constraints:

    • If the source type is a DB instance, a ‘DBInstanceIdentifier` value must be supplied.

    • If the source type is a DB cluster, a ‘DBClusterIdentifier` value must be supplied.

    • If the source type is a DB parameter group, a ‘DBParameterGroupName` value must be supplied.

    • If the source type is a DB security group, a ‘DBSecurityGroupName` value must be supplied.

    • If the source type is a DB snapshot, a ‘DBSnapshotIdentifier` value must be supplied.

    • If the source type is a DB cluster snapshot, a ‘DBClusterSnapshotIdentifier` value must be supplied.

    • If the source type is an RDS Proxy, a ‘DBProxyName` value must be supplied.

Returns:

See Also:



644
645
646
647
# File 'lib/aws-sdk-rds/client.rb', line 644

def add_source_identifier_to_subscription(params = {}, options = {})
  req = build_request(:add_source_identifier_to_subscription, params)
  req.send_request(options)
end

#add_tags_to_resource(params = {}) ⇒ Struct

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.

For an overview on tagging your relational database resources, see

Tagging Amazon RDS Resources][1

or [Tagging Amazon Aurora and Amazon

RDS Resources].

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

Examples:

Example: To add tags to a resource


# This example adds a tag to an option group.

resp = client.add_tags_to_resource({
  resource_name: "arn:aws:rds:us-east-1:992648334831:og:mymysqloptiongroup", 
  tags: [
    {
      key: "Staging", 
      value: "LocationDB", 
    }, 
  ], 
})

Request syntax with placeholder values


resp = client.add_tags_to_resource({
  resource_name: "String", # required
  tags: [ # required
    {
      key: "String",
      value: "String",
    },
  ],
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

Returns:

  • (Struct)

    Returns an empty response.

See Also:



708
709
710
711
# File 'lib/aws-sdk-rds/client.rb', line 708

def add_tags_to_resource(params = {}, options = {})
  req = build_request(:add_tags_to_resource, params)
  req.send_request(options)
end

#apply_pending_maintenance_action(params = {}) ⇒ Types::ApplyPendingMaintenanceActionResult

Applies a pending maintenance action to a resource (for example, to a DB instance).

Examples:

Example: To apply pending maintenance actions


# The following example applies the pending maintenance actions for a DB cluster.

resp = client.apply_pending_maintenance_action({
  apply_action: "system-update", 
  opt_in_type: "immediate", 
  resource_identifier: "arn:aws:rds:us-east-1:123456789012:cluster:my-db-cluster", 
})

resp.to_h outputs the following:
{
  resource_pending_maintenance_actions: {
    pending_maintenance_action_details: [
      {
        action: "system-update", 
        current_apply_date: Time.parse("2021-01-23T01:07:36.100Z"), 
        description: "Upgrade to Aurora PostgreSQL 3.3.2", 
        opt_in_status: "immediate", 
      }, 
    ], 
    resource_identifier: "arn:aws:rds:us-east-1:123456789012:cluster:my-db-cluster", 
  }, 
}

Request syntax with placeholder values


resp = client.apply_pending_maintenance_action({
  resource_identifier: "String", # required
  apply_action: "String", # required
  opt_in_type: "String", # required
})

Response structure


resp.resource_pending_maintenance_actions.resource_identifier #=> String
resp.resource_pending_maintenance_actions.pending_maintenance_action_details #=> Array
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].action #=> String
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].auto_applied_after_date #=> Time
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].forced_apply_date #=> Time
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].opt_in_status #=> String
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].current_apply_date #=> Time
resp.resource_pending_maintenance_actions.pending_maintenance_action_details[0].description #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

Returns:

See Also:



815
816
817
818
# File 'lib/aws-sdk-rds/client.rb', line 815

def apply_pending_maintenance_action(params = {}, options = {})
  req = build_request(:apply_pending_maintenance_action, params)
  req.send_request(options)
end

#authorize_db_security_group_ingress(params = {}) ⇒ Types::AuthorizeDBSecurityGroupIngressResult

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 Amazon Web Services 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.

For an overview of CIDR ranges, go to the [Wikipedia Tutorial].

<note markdown=“1”> EC2-Classic was retired on August 15, 2022. If you haven’t migrated from EC2-Classic to a VPC, we recommend that you migrate as soon as possible. For more information, see [Migrate from EC2-Classic to a VPC] in the *Amazon EC2 User Guide*, the blog [EC2-Classic Networking is Retiring – Here’s How to Prepare], and [Moving a DB instance not in a VPC into a VPC] in the *Amazon RDS User Guide*.

</note>

[1]: en.wikipedia.org/wiki/Classless_Inter-Domain_Routing [2]: docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html [3]: aws.amazon.com/blogs/aws/ec2-classic-is-retiring-heres-how-to-prepare/ [4]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.Non-VPC2VPC.html

Examples:

Example: To authorize DB security group integress


# This example authorizes access to the specified security group by the specified CIDR block.

resp = client.authorize_db_security_group_ingress({
  cidrip: "203.0.113.5/32", 
  db_security_group_name: "mydbsecuritygroup", 
})

resp.to_h outputs the following:
{
  db_security_group: {
  }, 
}

Request syntax with placeholder values


resp = client.authorize_db_security_group_ingress({
  db_security_group_name: "String", # required
  cidrip: "String",
  ec2_security_group_name: "String",
  ec2_security_group_id: "String",
  ec2_security_group_owner_id: "String",
})

Response structure


resp.db_security_group.owner_id #=> String
resp.db_security_group.db_security_group_name #=> String
resp.db_security_group.db_security_group_description #=> String
resp.db_security_group.vpc_id #=> String
resp.db_security_group.ec2_security_groups #=> Array
resp.db_security_group.ec2_security_groups[0].status #=> String
resp.db_security_group.ec2_security_groups[0].ec2_security_group_name #=> String
resp.db_security_group.ec2_security_groups[0].ec2_security_group_id #=> String
resp.db_security_group.ec2_security_groups[0].ec2_security_group_owner_id #=> String
resp.db_security_group.ip_ranges #=> Array
resp.db_security_group.ip_ranges[0].status #=> String
resp.db_security_group.ip_ranges[0].cidrip #=> String
resp.db_security_group.db_security_group_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_security_group_name (required, String)

    The name of the DB security group to add authorization to.

  • :cidrip (String)

    The IP range to authorize.

  • :ec2_security_group_name (String)

    Name of the EC2 security group to authorize. For VPC DB security groups, ‘EC2SecurityGroupId` must be provided. Otherwise, `EC2SecurityGroupOwnerId` and either `EC2SecurityGroupName` or `EC2SecurityGroupId` must be provided.

  • :ec2_security_group_id (String)

    Id of the EC2 security group to authorize. For VPC DB security groups, ‘EC2SecurityGroupId` must be provided. Otherwise, `EC2SecurityGroupOwnerId` and either `EC2SecurityGroupName` or `EC2SecurityGroupId` must be provided.

  • :ec2_security_group_owner_id (String)

    Amazon Web Services account number of the owner of the EC2 security group specified in the ‘EC2SecurityGroupName` parameter. The Amazon Web Services access key ID isn’t an acceptable value. For VPC DB security groups, ‘EC2SecurityGroupId` must be provided. Otherwise, `EC2SecurityGroupOwnerId` and either `EC2SecurityGroupName` or `EC2SecurityGroupId` must be provided.

Returns:

See Also:



928
929
930
931
# File 'lib/aws-sdk-rds/client.rb', line 928

def authorize_db_security_group_ingress(params = {}, options = {})
  req = build_request(:authorize_db_security_group_ingress, params)
  req.send_request(options)
end

#backtrack_db_cluster(params = {}) ⇒ Types::DBClusterBacktrack

Backtracks a DB cluster to a specific time, without creating a new DB cluster.

For more information on backtracking, see [ Backtracking an Aurora DB Cluster] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This action applies only to Aurora MySQL DB clusters.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Managing.Backtrack.html

Examples:

Request syntax with placeholder values


resp = client.backtrack_db_cluster({
  db_cluster_identifier: "String", # required
  backtrack_to: Time.now, # required
  force: false,
  use_earliest_time_on_point_in_time_unavailable: false,
})

Response structure


resp.db_cluster_identifier #=> String
resp.backtrack_identifier #=> String
resp.backtrack_to #=> Time
resp.backtracked_from #=> Time
resp.backtrack_request_creation_time #=> Time
resp.status #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The DB cluster identifier of the DB cluster to be backtracked. This parameter is stored as a lowercase string.

    Constraints:

    • Must contain from 1 to 63 alphanumeric characters or hyphens.

    • First character must be a letter.

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

    Example: ‘my-cluster1`

  • :backtrack_to (required, Time, DateTime, Date, Integer, String)

    The timestamp of the time to backtrack the DB cluster to, specified in ISO 8601 format. For more information about ISO 8601, see the [ISO8601 Wikipedia page.]

    <note markdown=“1”> If the specified time isn’t a consistent time for the DB cluster, Aurora automatically chooses the nearest possible consistent time for the DB cluster.

    </note>
    

    Constraints:

    • Must contain a valid ISO 8601 timestamp.

    • Can’t contain a timestamp set in the future.

    Example: ‘2017-07-08T18:00Z`

    [1]: en.wikipedia.org/wiki/ISO_8601

  • :force (Boolean)

    Specifies whether to force the DB cluster to backtrack when binary logging is enabled. Otherwise, an error occurs when binary logging is enabled.

  • :use_earliest_time_on_point_in_time_unavailable (Boolean)

    Specifies whether to backtrack the DB cluster to the earliest possible backtrack time when BacktrackTo is set to a timestamp earlier than the earliest backtrack time. When this parameter is disabled and BacktrackTo is set to a timestamp earlier than the earliest backtrack time, an error occurs.

Returns:

See Also:



1027
1028
1029
1030
# File 'lib/aws-sdk-rds/client.rb', line 1027

def backtrack_db_cluster(params = {}, options = {})
  req = build_request(:backtrack_db_cluster, params)
  req.send_request(options)
end

#build_request(operation_name, params = {}) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Parameters:

  • params ({}) (defaults to: {})


31860
31861
31862
31863
31864
31865
31866
31867
31868
31869
31870
31871
31872
31873
31874
31875
31876
# File 'lib/aws-sdk-rds/client.rb', line 31860

def build_request(operation_name, params = {})
  handlers = @handlers.for(operation_name)
  tracer = config.telemetry_provider.tracer_provider.tracer(
    Aws::Telemetry.module_to_tracer_name('Aws::RDS')
  )
  context = Seahorse::Client::RequestContext.new(
    operation_name: operation_name,
    operation: config.api.operation(operation_name),
    client: self,
    params: params,
    config: config,
    tracer: tracer
  )
  context[:gem_name] = 'aws-sdk-rds'
  context[:gem_version] = '1.265.0'
  Seahorse::Client::Request.new(handlers, context)
end

#cancel_export_task(params = {}) ⇒ Types::ExportTask

Cancels an export task in progress that is exporting a snapshot or cluster to Amazon S3. Any data that has already been written to the S3 bucket isn’t removed.

Examples:

Example: To cancel a snapshot export to Amazon S3


# The following example cancels an export task in progress that is exporting a snapshot to Amazon S3.

resp = client.cancel_export_task({
  export_task_identifier: "my-s3-export-1", 
})

resp.to_h outputs the following:
{
  export_task_identifier: "my-s3-export-1", 
  iam_role_arn: "arn:aws:iam::123456789012:role/service-role/export-snap-S3-role", 
  kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/abcd0000-7bfd-4594-af38-aabbccddeeff", 
  percent_progress: 0, 
  s3_bucket: "mybucket", 
  s3_prefix: "", 
  snapshot_time: Time.parse("2019-03-24T20:01:09.815Z"), 
  source_arn: "arn:aws:rds:us-east-1:123456789012:snapshot:publisher-final-snapshot", 
  status: "CANCELING", 
  total_extracted_data_in_gb: 0, 
}

Request syntax with placeholder values


resp = client.cancel_export_task({
  export_task_identifier: "String", # required
})

Response structure


resp.export_task_identifier #=> String
resp.source_arn #=> String
resp.export_only #=> Array
resp.export_only[0] #=> String
resp.snapshot_time #=> Time
resp.task_start_time #=> Time
resp.task_end_time #=> Time
resp.s3_bucket #=> String
resp.s3_prefix #=> String
resp.iam_role_arn #=> String
resp.kms_key_id #=> String
resp.status #=> String
resp.percent_progress #=> Integer
resp.total_extracted_data_in_gb #=> Integer
resp.failure_cause #=> String
resp.warning_message #=> String
resp.source_type #=> String, one of "SNAPSHOT", "CLUSTER"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :export_task_identifier (required, String)

    The identifier of the snapshot or cluster export task to cancel.

Returns:

See Also:



1111
1112
1113
1114
# File 'lib/aws-sdk-rds/client.rb', line 1111

def cancel_export_task(params = {}, options = {})
  req = build_request(:cancel_export_task, params)
  req.send_request(options)
end

#copy_db_cluster_parameter_group(params = {}) ⇒ Types::CopyDBClusterParameterGroupResult

Copies the specified DB cluster parameter group.

<note markdown=“1”> You can’t copy a default DB cluster parameter group. Instead, create a new custom DB cluster parameter group, which copies the default parameters and values for the specified DB cluster parameter group family.

</note>

Examples:

Example: To copy a DB cluster parameter group


# This example copies a DB cluster parameter group.

resp = client.copy_db_cluster_parameter_group({
  source_db_cluster_parameter_group_identifier: "mydbclusterparametergroup", 
  target_db_cluster_parameter_group_description: "My DB cluster parameter group copy", 
  target_db_cluster_parameter_group_identifier: "mydbclusterparametergroup-copy", 
})

resp.to_h outputs the following:
{
  db_cluster_parameter_group: {
    db_cluster_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:cluster-pg:mydbclusterparametergroup-copy", 
    db_cluster_parameter_group_name: "mydbclusterparametergroup-copy", 
    db_parameter_group_family: "aurora-mysql5.7", 
    description: "My DB cluster parameter group copy", 
  }, 
}

Request syntax with placeholder values


resp = client.copy_db_cluster_parameter_group({
  source_db_cluster_parameter_group_identifier: "String", # required
  target_db_cluster_parameter_group_identifier: "String", # required
  target_db_cluster_parameter_group_description: "String", # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_cluster_parameter_group.db_cluster_parameter_group_name #=> String
resp.db_cluster_parameter_group.db_parameter_group_family #=> String
resp.db_cluster_parameter_group.description #=> String
resp.db_cluster_parameter_group.db_cluster_parameter_group_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

Returns:

See Also:



1221
1222
1223
1224
# File 'lib/aws-sdk-rds/client.rb', line 1221

def copy_db_cluster_parameter_group(params = {}, options = {})
  req = build_request(:copy_db_cluster_parameter_group, params)
  req.send_request(options)
end

#copy_db_cluster_snapshot(params = {}) ⇒ Types::CopyDBClusterSnapshotResult

Copies a snapshot of a DB cluster.

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 Amazon Web Services Region. In that case, the Amazon Web Services Region where you call the ‘CopyDBClusterSnapshot` operation is the destination Amazon Web Services Region for the encrypted DB cluster snapshot to be copied to. To copy an encrypted DB cluster snapshot from another Amazon Web Services Region, you must provide the following values:

  • ‘KmsKeyId` - The Amazon Web Services Key Management System (Amazon Web Services KMS) key identifier for the key to use to encrypt the copy of the DB cluster snapshot in the destination Amazon Web Services Region.

  • ‘TargetDBClusterSnapshotIdentifier` - The identifier for the new copy of the DB cluster snapshot in the destination Amazon Web Services 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 Amazon Web Services Region and is the same value as the `SourceDBClusterSnapshotIdentifier` in the presigned 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.

For more information on copying encrypted Amazon Aurora DB cluster snapshots from one Amazon Web Services Region to another, see [ Copying a Snapshot] in the *Amazon Aurora User Guide*.

For more information on Amazon Aurora DB clusters, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_CopySnapshot.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To copy a DB cluster snapshot


# The following example creates a copy of a DB cluster snapshot, including its tags.

resp = client.copy_db_cluster_snapshot({
  copy_tags: true, 
  source_db_cluster_snapshot_identifier: "arn:aws:rds:us-east-1:123456789012:cluster-snapshot:rds:myaurora-2019-06-04-09-16", 
  target_db_cluster_snapshot_identifier: "myclustersnapshotcopy", 
})

resp.to_h outputs the following:
{
  db_cluster_snapshot: {
    allocated_storage: 0, 
    availability_zones: [
      "us-east-1a", 
      "us-east-1b", 
      "us-east-1e", 
    ], 
    cluster_create_time: Time.parse("2019-04-15T14:18:42.785Z"), 
    db_cluster_identifier: "myaurora", 
    db_cluster_snapshot_arn: "arn:aws:rds:us-east-1:123456789012:cluster-snapshot:myclustersnapshotcopy", 
    db_cluster_snapshot_identifier: "myclustersnapshotcopy", 
    engine: "aurora-mysql", 
    engine_version: "5.7.mysql_aurora.2.04.2", 
    iam_database_authentication_enabled: false, 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE", 
    license_model: "aurora-mysql", 
    master_username: "myadmin", 
    percent_progress: 100, 
    port: 0, 
    snapshot_create_time: Time.parse("2019-06-04T09:16:42.649Z"), 
    snapshot_type: "manual", 
    status: "available", 
    storage_encrypted: true, 
    vpc_id: "vpc-123example", 
  }, 
}

Request syntax with placeholder values


resp = client.copy_db_cluster_snapshot({
  source_db_cluster_snapshot_identifier: "String", # required
  target_db_cluster_snapshot_identifier: "String", # required
  kms_key_id: "String",
  pre_signed_url: "String",
  copy_tags: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  source_region: "String",
})

Response structure


resp.db_cluster_snapshot.availability_zones #=> Array
resp.db_cluster_snapshot.availability_zones[0] #=> String
resp.db_cluster_snapshot.db_cluster_snapshot_identifier #=> String
resp.db_cluster_snapshot.db_cluster_identifier #=> String
resp.db_cluster_snapshot.snapshot_create_time #=> Time
resp.db_cluster_snapshot.engine #=> String
resp.db_cluster_snapshot.engine_mode #=> String
resp.db_cluster_snapshot.allocated_storage #=> Integer
resp.db_cluster_snapshot.status #=> String
resp.db_cluster_snapshot.port #=> Integer
resp.db_cluster_snapshot.vpc_id #=> String
resp.db_cluster_snapshot.cluster_create_time #=> Time
resp.db_cluster_snapshot.master_username #=> String
resp.db_cluster_snapshot.engine_version #=> String
resp.db_cluster_snapshot.license_model #=> String
resp.db_cluster_snapshot.snapshot_type #=> String
resp.db_cluster_snapshot.percent_progress #=> Integer
resp.db_cluster_snapshot.storage_encrypted #=> Boolean
resp.db_cluster_snapshot.kms_key_id #=> String
resp.db_cluster_snapshot.db_cluster_snapshot_arn #=> String
resp.db_cluster_snapshot.source_db_cluster_snapshot_arn #=> String
resp.db_cluster_snapshot.iam_database_authentication_enabled #=> Boolean
resp.db_cluster_snapshot.tag_list #=> Array
resp.db_cluster_snapshot.tag_list[0].key #=> String
resp.db_cluster_snapshot.tag_list[0].value #=> String
resp.db_cluster_snapshot.db_system_id #=> String
resp.db_cluster_snapshot.storage_type #=> String
resp.db_cluster_snapshot.db_cluster_resource_id #=> String
resp.db_cluster_snapshot.storage_throughput #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_db_cluster_snapshot_identifier (required, String)

    The identifier of the DB cluster snapshot to copy. This parameter isn’t case-sensitive.

    You can’t copy an encrypted, shared DB cluster snapshot from one Amazon Web Services Region to another.

    Constraints:

    • Must specify a valid system snapshot in the “available” state.

    • If the source snapshot is in the same Amazon Web Services Region as the copy, specify a valid DB snapshot identifier.

    • If the source snapshot is in a different Amazon Web Services Region than the copy, specify a valid DB cluster snapshot ARN. For more information, go to [ Copying Snapshots Across Amazon Web Services Regions] in the *Amazon Aurora User Guide*.

    Example: ‘my-cluster-snapshot1`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_CopySnapshot.html#USER_CopySnapshot.AcrossRegions

  • :target_db_cluster_snapshot_identifier (required, String)

    The identifier of the new DB cluster snapshot to create from the source DB cluster snapshot. This parameter isn’t case-sensitive.

    Constraints:

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

    • First character must be a letter.

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

    Example: ‘my-cluster-snapshot2`

  • :kms_key_id (String)

    The Amazon Web Services KMS key identifier for an encrypted DB cluster snapshot. The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the Amazon Web Services KMS key.

    If you copy an encrypted DB cluster snapshot from your Amazon Web Services account, you can specify a value for ‘KmsKeyId` to encrypt the copy with a new KMS key. If you don’t specify a value for ‘KmsKeyId`, then the copy of the DB cluster snapshot is encrypted with the same KMS key as the source DB cluster snapshot.

    If you copy an encrypted DB cluster snapshot that is shared from another Amazon Web Services account, then you must specify a value for ‘KmsKeyId`.

    To copy an encrypted DB cluster snapshot to another Amazon Web Services Region, you must set ‘KmsKeyId` to the Amazon Web Services KMS key identifier you want to use to encrypt the copy of the DB cluster snapshot in the destination Amazon Web Services Region. KMS keys are specific to the Amazon Web Services Region that they are created in, and you can’t use KMS keys from one Amazon Web Services Region in another Amazon Web Services Region.

    If you copy an unencrypted DB cluster snapshot and specify a value for the ‘KmsKeyId` parameter, an error is returned.

  • :pre_signed_url (String)

    When you are copying a DB cluster snapshot from one Amazon Web Services GovCloud (US) Region to another, the URL that contains a Signature Version 4 signed request for the ‘CopyDBClusterSnapshot` API operation in the Amazon Web Services Region that contains the source DB cluster snapshot to copy. Use the `PreSignedUrl` parameter when copying an encrypted DB cluster snapshot from another Amazon Web Services Region. Don’t specify ‘PreSignedUrl` when copying an encrypted DB cluster snapshot in the same Amazon Web Services Region.

    This setting applies only to Amazon Web Services GovCloud (US) Regions. It’s ignored in other Amazon Web Services Regions.

    The presigned URL must be a valid request for the ‘CopyDBClusterSnapshot` API operation that can run in the source Amazon Web Services Region that contains the encrypted DB cluster snapshot to copy. The presigned URL request must contain the following parameter values:

    • ‘KmsKeyId` - The KMS key identifier for the KMS key to use to encrypt the copy of the DB cluster snapshot in the destination Amazon Web Services Region. This is the same identifier for both the `CopyDBClusterSnapshot` operation that is called in the destination Amazon Web Services Region, and the operation contained in the presigned URL.

    • ‘DestinationRegion` - The name of the Amazon Web Services Region that the DB cluster snapshot is to 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 Amazon Web Services Region. For example, if you are copying an encrypted DB cluster snapshot from the us-west-2 Amazon Web Services Region, then your `SourceDBClusterSnapshotIdentifier` looks like the following example: `arn:aws:rds:us-west-2:123456789012:cluster-snapshot:aurora-cluster1-snapshot-20161115`.

    To learn how to generate a Signature Version 4 signed request, see [ Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4)] and [ Signature Version 4 Signing Process].

    <note markdown=“1”> If you are using an Amazon Web Services SDK tool or the CLI, you can specify ‘SourceRegion` (or `–source-region` for the CLI) instead of specifying `PreSignedUrl` manually. Specifying `SourceRegion` autogenerates a presigned URL that is a valid request for the operation that can run in the source Amazon Web Services Region.

    </note>
    

    [1]: docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html [2]: docs.aws.amazon.com/general/latest/gr/signature-version-4.html

  • :copy_tags (Boolean)

    Specifies whether to copy all tags from the source DB cluster snapshot to the target DB cluster snapshot. By default, tags are not copied.

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

  • :source_region (String)

    The source region of the snapshot. This is only needed when the shapshot is encrypted and in a different region.

Returns:

See Also:



1512
1513
1514
1515
# File 'lib/aws-sdk-rds/client.rb', line 1512

def copy_db_cluster_snapshot(params = {}, options = {})
  req = build_request(:copy_db_cluster_snapshot, params)
  req.send_request(options)
end

#copy_db_parameter_group(params = {}) ⇒ Types::CopyDBParameterGroupResult

Copies the specified DB parameter group.

<note markdown=“1”> You can’t copy a default DB parameter group. Instead, create a new custom DB parameter group, which copies the default parameters and values for the specified DB parameter group family.

</note>

Examples:

Example: To copy a DB parameter group


# The following example makes a copy of a DB parameter group.

resp = client.copy_db_parameter_group({
  source_db_parameter_group_identifier: "mydbpg", 
  target_db_parameter_group_description: "Copy of mydbpg parameter group", 
  target_db_parameter_group_identifier: "mydbpgcopy", 
})

resp.to_h outputs the following:
{
  db_parameter_group: {
    db_parameter_group_arn: "arn:aws:rds:us-east-1:814387698303:pg:mydbpgcopy", 
    db_parameter_group_family: "mysql5.7", 
    db_parameter_group_name: "mydbpgcopy", 
    description: "Copy of mydbpg parameter group", 
  }, 
}

Request syntax with placeholder values


resp = client.copy_db_parameter_group({
  source_db_parameter_group_identifier: "String", # required
  target_db_parameter_group_identifier: "String", # required
  target_db_parameter_group_description: "String", # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_parameter_group.db_parameter_group_name #=> String
resp.db_parameter_group.db_parameter_group_family #=> String
resp.db_parameter_group.description #=> String
resp.db_parameter_group.db_parameter_group_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

Returns:

See Also:



1620
1621
1622
1623
# File 'lib/aws-sdk-rds/client.rb', line 1620

def copy_db_parameter_group(params = {}, options = {})
  req = build_request(:copy_db_parameter_group, params)
  req.send_request(options)
end

#copy_db_snapshot(params = {}) ⇒ Types::CopyDBSnapshotResult

Copies the specified DB snapshot. The source DB snapshot must be in the ‘available` state.

You can copy a snapshot from one Amazon Web Services Region to another. In that case, the Amazon Web Services Region where you call the ‘CopyDBSnapshot` operation is the destination Amazon Web Services Region for the DB snapshot copy.

This command doesn’t apply to RDS Custom.

For more information about copying snapshots, see [Copying a DB Snapshot] in the *Amazon RDS User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CopySnapshot.html#USER_CopyDBSnapshot

Examples:

Example: To copy a DB snapshot


# The following example creates a copy of a DB snapshot.

resp = client.copy_db_snapshot({
  source_db_snapshot_identifier: "rds:database-mysql-2019-06-06-08-38", 
  target_db_snapshot_identifier: "mydbsnapshotcopy", 
})

resp.to_h outputs the following:
{
  db_snapshot: {
    allocated_storage: 100, 
    availability_zone: "us-east-1f", 
    db_instance_identifier: "database-mysql", 
    db_snapshot_arn: "arn:aws:rds:us-east-1:123456789012:snapshot:mydbsnapshotcopy", 
    db_snapshot_identifier: "mydbsnapshotcopy", 
    dbi_resource_id: "db-ZI7UJ5BLKMBYFGX7FDENCKADC4", 
    encrypted: true, 
    engine: "mysql", 
    engine_version: "5.6.40", 
    iam_database_authentication_enabled: false, 
    instance_create_time: Time.parse("2019-04-30T15:45:53.663Z"), 
    iops: 1000, 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE", 
    license_model: "general-public-license", 
    master_username: "admin", 
    option_group_name: "default:mysql-5-6", 
    percent_progress: 0, 
    port: 3306, 
    processor_features: [
    ], 
    snapshot_type: "manual", 
    source_db_snapshot_identifier: "arn:aws:rds:us-east-1:123456789012:snapshot:rds:database-mysql-2019-06-06-08-38", 
    source_region: "us-east-1", 
    status: "creating", 
    storage_type: "io1", 
    vpc_id: "vpc-6594f31c", 
  }, 
}

Request syntax with placeholder values


resp = client.copy_db_snapshot({
  source_db_snapshot_identifier: "String", # required
  target_db_snapshot_identifier: "String", # required
  kms_key_id: "String",
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  copy_tags: false,
  pre_signed_url: "String",
  option_group_name: "String",
  target_custom_availability_zone: "String",
  copy_option_group: false,
  source_region: "String",
})

Response structure


resp.db_snapshot.db_snapshot_identifier #=> String
resp.db_snapshot.db_instance_identifier #=> String
resp.db_snapshot.snapshot_create_time #=> Time
resp.db_snapshot.engine #=> String
resp.db_snapshot.allocated_storage #=> Integer
resp.db_snapshot.status #=> String
resp.db_snapshot.port #=> Integer
resp.db_snapshot.availability_zone #=> String
resp.db_snapshot.vpc_id #=> String
resp.db_snapshot.instance_create_time #=> Time
resp.db_snapshot.master_username #=> String
resp.db_snapshot.engine_version #=> String
resp.db_snapshot.license_model #=> String
resp.db_snapshot.snapshot_type #=> String
resp.db_snapshot.iops #=> Integer
resp.db_snapshot.option_group_name #=> String
resp.db_snapshot.percent_progress #=> Integer
resp.db_snapshot.source_region #=> String
resp.db_snapshot.source_db_snapshot_identifier #=> String
resp.db_snapshot.storage_type #=> String
resp.db_snapshot.tde_credential_arn #=> String
resp.db_snapshot.encrypted #=> Boolean
resp.db_snapshot.kms_key_id #=> String
resp.db_snapshot.db_snapshot_arn #=> String
resp.db_snapshot.timezone #=> String
resp.db_snapshot.iam_database_authentication_enabled #=> Boolean
resp.db_snapshot.processor_features #=> Array
resp.db_snapshot.processor_features[0].name #=> String
resp.db_snapshot.processor_features[0].value #=> String
resp.db_snapshot.dbi_resource_id #=> String
resp.db_snapshot.tag_list #=> Array
resp.db_snapshot.tag_list[0].key #=> String
resp.db_snapshot.tag_list[0].value #=> String
resp.db_snapshot.original_snapshot_create_time #=> Time
resp.db_snapshot.snapshot_database_time #=> Time
resp.db_snapshot.snapshot_target #=> String
resp.db_snapshot.storage_throughput #=> Integer
resp.db_snapshot.db_system_id #=> String
resp.db_snapshot.dedicated_log_volume #=> Boolean
resp.db_snapshot.multi_tenant #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_db_snapshot_identifier (required, String)

    The identifier for the source DB snapshot.

    If the source snapshot is in the same Amazon Web Services Region as the copy, specify a valid DB snapshot identifier. For example, you might specify ‘rds:mysql-instance1-snapshot-20130805`.

    If the source snapshot is in a different Amazon Web Services Region than the copy, specify a valid DB snapshot ARN. For example, you might specify ‘arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805`.

    If you are copying from a shared manual DB snapshot, this parameter must be the Amazon Resource Name (ARN) of the shared DB snapshot.

    If you are copying an encrypted snapshot this parameter must be in the ARN format for the source Amazon Web Services Region.

    Constraints:

    • Must specify a valid system snapshot in the “available” state.

    ^

    Example: ‘rds:mydb-2012-04-02-00-01`

    Example: ‘arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805`

  • :target_db_snapshot_identifier (required, String)

    The identifier for the copy of the snapshot.

    Constraints:

    • Can’t be null, empty, or blank

    • Must contain from 1 to 255 letters, numbers, or hyphens

    • First character must be a letter

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

    Example: ‘my-db-snapshot`

  • :kms_key_id (String)

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

    If you copy an encrypted DB snapshot from your Amazon Web Services account, you can specify a value for this parameter to encrypt the copy with a new KMS key. If you don’t specify a value for this parameter, then the copy of the DB snapshot is encrypted with the same Amazon Web Services KMS key as the source DB snapshot.

    If you copy an encrypted DB snapshot that is shared from another Amazon Web Services account, then you must specify a value for this parameter.

    If you specify this parameter when you copy an unencrypted snapshot, the copy is encrypted.

    If you copy an encrypted snapshot to a different Amazon Web Services Region, then you must specify an Amazon Web Services KMS key identifier for the destination Amazon Web Services Region. KMS keys are specific to the Amazon Web Services Region that they are created in, and you can’t use KMS keys from one Amazon Web Services Region in another Amazon Web Services Region.

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

  • :copy_tags (Boolean)

    Specifies whether to copy all tags from the source DB snapshot to the target DB snapshot. By default, tags aren’t copied.

  • :pre_signed_url (String)

    When you are copying a snapshot from one Amazon Web Services GovCloud (US) Region to another, the URL that contains a Signature Version 4 signed request for the ‘CopyDBSnapshot` API operation in the source Amazon Web Services Region that contains the source DB snapshot to copy.

    This setting applies only to Amazon Web Services GovCloud (US) Regions. It’s ignored in other Amazon Web Services Regions.

    You must specify this parameter when you copy an encrypted DB snapshot from another Amazon Web Services Region by using the Amazon RDS API. Don’t specify ‘PreSignedUrl` when you are copying an encrypted DB snapshot in the same Amazon Web Services Region.

    The presigned URL must be a valid request for the ‘CopyDBClusterSnapshot` API operation that can run in the source Amazon Web Services Region that contains the encrypted DB cluster snapshot to copy. The presigned URL request must contain the following parameter values:

    • ‘DestinationRegion` - The Amazon Web Services Region that the encrypted DB snapshot is copied to. This Amazon Web Services Region is the same one where the `CopyDBSnapshot` operation is called that contains this presigned URL.

      For example, if you copy an encrypted DB snapshot from the us-west-2 Amazon Web Services Region to the us-east-1 Amazon Web Services Region, then you call the ‘CopyDBSnapshot` operation in the us-east-1 Amazon Web Services Region and provide a presigned URL that contains a call to the `CopyDBSnapshot` operation in the us-west-2 Amazon Web Services Region. For this example, the `DestinationRegion` in the presigned URL must be set to the us-east-1 Amazon Web Services Region.

    • ‘KmsKeyId` - The KMS key identifier for the KMS key to use to encrypt the copy of the DB snapshot in the destination Amazon Web Services Region. This is the same identifier for both the `CopyDBSnapshot` operation that is called in the destination Amazon Web Services Region, and the operation contained in the presigned URL.

    • ‘SourceDBSnapshotIdentifier` - The DB snapshot identifier for the encrypted snapshot to be copied. This identifier must be in the Amazon Resource Name (ARN) format for the source Amazon Web Services Region. For example, if you are copying an encrypted DB snapshot from the us-west-2 Amazon Web Services Region, then your `SourceDBSnapshotIdentifier` looks like the following example: `arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20161115`.

    To learn how to generate a Signature Version 4 signed request, see [Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4)] and [Signature Version 4 Signing Process].

    <note markdown=“1”> If you are using an Amazon Web Services SDK tool or the CLI, you can specify ‘SourceRegion` (or `–source-region` for the CLI) instead of specifying `PreSignedUrl` manually. Specifying `SourceRegion` autogenerates a presigned URL that is a valid request for the operation that can run in the source Amazon Web Services Region.

    </note>
    

    [1]: docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html [2]: docs.aws.amazon.com/general/latest/gr/signature-version-4.html

  • :option_group_name (String)

    The name of an option group to associate with the copy of the snapshot.

    Specify this option if you are copying a snapshot from one Amazon Web Services Region to another, and your DB instance uses a nondefault option group. If your source DB instance uses Transparent Data Encryption for Oracle or Microsoft SQL Server, you must specify this option when copying across Amazon Web Services Regions. For more information, see [Option group considerations] in the *Amazon RDS User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CopySnapshot.html#USER_CopySnapshot.Options

  • :target_custom_availability_zone (String)

    The external custom Availability Zone (CAZ) identifier for the target CAZ.

    Example: ‘rds-caz-aiqhTgQv`.

  • :copy_option_group (Boolean)

    Specifies whether to copy the DB option group associated with the source DB snapshot to the target Amazon Web Services account and associate with the target DB snapshot. The associated option group can be copied only with cross-account snapshot copy calls.

  • :source_region (String)

    The source region of the snapshot. This is only needed when the shapshot is encrypted and in a different region.

Returns:

See Also:



1939
1940
1941
1942
# File 'lib/aws-sdk-rds/client.rb', line 1939

def copy_db_snapshot(params = {}, options = {})
  req = build_request(:copy_db_snapshot, params)
  req.send_request(options)
end

#copy_option_group(params = {}) ⇒ Types::CopyOptionGroupResult

Copies the specified option group.

Examples:

Example: To copy an option group


# The following example makes a copy of an option group.

resp = client.copy_option_group({
  source_option_group_identifier: "myoptiongroup", 
  target_option_group_description: "My option group copy", 
  target_option_group_identifier: "new-option-group", 
})

resp.to_h outputs the following:
{
  option_group: {
    allows_vpc_and_non_vpc_instance_memberships: true, 
    engine_name: "oracle-ee", 
    major_engine_version: "11.2", 
    option_group_arn: "arn:aws:rds:us-east-1:123456789012:og:new-option-group", 
    option_group_description: "My option group copy", 
    option_group_name: "new-option-group", 
    options: [
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.copy_option_group({
  source_option_group_identifier: "String", # required
  target_option_group_identifier: "String", # required
  target_option_group_description: "String", # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.option_group.option_group_name #=> String
resp.option_group.option_group_description #=> String
resp.option_group.engine_name #=> String
resp.option_group.major_engine_version #=> String
resp.option_group.options #=> Array
resp.option_group.options[0].option_name #=> String
resp.option_group.options[0].option_description #=> String
resp.option_group.options[0].persistent #=> Boolean
resp.option_group.options[0].permanent #=> Boolean
resp.option_group.options[0].port #=> Integer
resp.option_group.options[0].option_version #=> String
resp.option_group.options[0].option_settings #=> Array
resp.option_group.options[0].option_settings[0].name #=> String
resp.option_group.options[0].option_settings[0].value #=> String
resp.option_group.options[0].option_settings[0].default_value #=> String
resp.option_group.options[0].option_settings[0].description #=> String
resp.option_group.options[0].option_settings[0].apply_type #=> String
resp.option_group.options[0].option_settings[0].data_type #=> String
resp.option_group.options[0].option_settings[0].allowed_values #=> String
resp.option_group.options[0].option_settings[0].is_modifiable #=> Boolean
resp.option_group.options[0].option_settings[0].is_collection #=> Boolean
resp.option_group.options[0].db_security_group_memberships #=> Array
resp.option_group.options[0].db_security_group_memberships[0].db_security_group_name #=> String
resp.option_group.options[0].db_security_group_memberships[0].status #=> String
resp.option_group.options[0].vpc_security_group_memberships #=> Array
resp.option_group.options[0].vpc_security_group_memberships[0].vpc_security_group_id #=> String
resp.option_group.options[0].vpc_security_group_memberships[0].status #=> String
resp.option_group.allows_vpc_and_non_vpc_instance_memberships #=> Boolean
resp.option_group.vpc_id #=> String
resp.option_group.option_group_arn #=> String
resp.option_group.source_option_group #=> String
resp.option_group. #=> String
resp.option_group.copy_timestamp #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_option_group_identifier (required, String)

    The identifier for the source option group.

    Constraints:

    • Must specify a valid option group.

    ^

  • :target_option_group_identifier (required, String)

    The identifier for the copied option group.

    Constraints:

    • Can’t be null, empty, or blank

    • Must contain from 1 to 255 letters, numbers, or hyphens

    • First character must be a letter

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

    Example: ‘my-option-group`

  • :target_option_group_description (required, String)

    The description for the copied option group.

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

Returns:

See Also:



2068
2069
2070
2071
# File 'lib/aws-sdk-rds/client.rb', line 2068

def copy_option_group(params = {}, options = {})
  req = build_request(:copy_option_group, params)
  req.send_request(options)
end

#create_blue_green_deployment(params = {}) ⇒ Types::CreateBlueGreenDeploymentResponse

Creates a blue/green deployment.

A blue/green deployment creates a staging environment that copies the production environment. In a blue/green deployment, the blue environment is the current production environment. The green environment is the staging environment, and it stays in sync with the current production environment.

You can make changes to the databases in the green environment without affecting production workloads. For example, you can upgrade the major or minor DB engine version, change database parameters, or make schema changes in the staging environment. You can thoroughly test changes in the green environment. When ready, you can switch over the environments to promote the green environment to be the new production environment. The switchover typically takes under a minute.

For more information, see [Using Amazon RDS Blue/Green Deployments for database updates] in the *Amazon RDS User Guide* and [ Using Amazon RDS Blue/Green Deployments for database updates] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/blue-green-deployments.html

Examples:

Example: To create a blue/green deployment for an RDS for MySQL DB instance


# The following example creates a blue/green deployment for a MySQL DB instance.

resp = client.create_blue_green_deployment({
  blue_green_deployment_name: "bgd-test-instance", 
  source: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance", 
  target_db_parameter_group_name: "mysql-80-group", 
  target_engine_version: "8.0", 
})

resp.to_h outputs the following:
{
  blue_green_deployment: {
    blue_green_deployment_identifier: "bgd-v53303651eexfake", 
    blue_green_deployment_name: "bgd-cli-test-instance", 
    create_time: Time.parse("2022-02-25T21:18:51.183000+00:00"), 
    source: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance", 
    status: "PROVISIONING", 
    switchover_details: [
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-1", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-2", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-3", 
      }, 
    ], 
    tasks: [
      {
        name: "CREATING_READ_REPLICA_OF_SOURCE", 
        status: "PENDING", 
      }, 
      {
        name: "DB_ENGINE_VERSION_UPGRADE", 
        status: "PENDING", 
      }, 
      {
        name: "CONFIGURE_BACKUPS", 
        status: "PENDING", 
      }, 
      {
        name: "CREATING_TOPOLOGY_OF_SOURCE", 
        status: "PENDING", 
      }, 
    ], 
  }, 
}

Example: To create a blue/green deployment for an Aurora MySQL DB cluster


# The following example creates a blue/green deployment for an Aurora MySQL DB cluster.

resp = client.create_blue_green_deployment({
  blue_green_deployment_name: "my-blue-green-deployment", 
  source: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
  target_db_cluster_parameter_group_name: "mysql-80-cluster-group", 
  target_db_parameter_group_name: "ams-80-binlog-enabled", 
  target_engine_version: "8.0", 
})

resp.to_h outputs the following:
{
  blue_green_deployment: {
    blue_green_deployment_identifier: "bgd-wi89nwzglccsfake", 
    blue_green_deployment_name: "my-blue-green-deployment", 
    create_time: Time.parse("2022-02-25T21:12:00.288000+00:00"), 
    source: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
    status: "PROVISIONING", 
    switchover_details: [
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
        status: "PROVISIONING", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-1", 
        status: "PROVISIONING", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-2", 
        status: "PROVISIONING", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-3", 
        status: "PROVISIONING", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-excluded-member-endpoint", 
        status: "PROVISIONING", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-reader-endpoint", 
        status: "PROVISIONING", 
      }, 
    ], 
    tasks: [
      {
        name: "CREATING_READ_REPLICA_OF_SOURCE", 
        status: "PENDING", 
      }, 
      {
        name: "DB_ENGINE_VERSION_UPGRADE", 
        status: "PENDING", 
      }, 
      {
        name: "CREATE_DB_INSTANCES_FOR_CLUSTER", 
        status: "PENDING", 
      }, 
      {
        name: "CREATE_CUSTOM_ENDPOINTS", 
        status: "PENDING", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.create_blue_green_deployment({
  blue_green_deployment_name: "BlueGreenDeploymentName", # required
  source: "DatabaseArn", # required
  target_engine_version: "TargetEngineVersion",
  target_db_parameter_group_name: "TargetDBParameterGroupName",
  target_db_cluster_parameter_group_name: "TargetDBClusterParameterGroupName",
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  target_db_instance_class: "TargetDBInstanceClass",
  upgrade_target_storage_config: false,
  target_iops: 1,
  target_storage_type: "TargetStorageType",
  target_allocated_storage: 1,
  target_storage_throughput: 1,
})

Response structure


resp.blue_green_deployment.blue_green_deployment_identifier #=> String
resp.blue_green_deployment.blue_green_deployment_name #=> String
resp.blue_green_deployment.source #=> String
resp.blue_green_deployment.target #=> String
resp.blue_green_deployment.switchover_details #=> Array
resp.blue_green_deployment.switchover_details[0].source_member #=> String
resp.blue_green_deployment.switchover_details[0].target_member #=> String
resp.blue_green_deployment.switchover_details[0].status #=> String
resp.blue_green_deployment.tasks #=> Array
resp.blue_green_deployment.tasks[0].name #=> String
resp.blue_green_deployment.tasks[0].status #=> String
resp.blue_green_deployment.status #=> String
resp.blue_green_deployment.status_details #=> String
resp.blue_green_deployment.create_time #=> Time
resp.blue_green_deployment.delete_time #=> Time
resp.blue_green_deployment.tag_list #=> Array
resp.blue_green_deployment.tag_list[0].key #=> String
resp.blue_green_deployment.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :blue_green_deployment_name (required, String)

    The name of the blue/green deployment.

    Constraints:

    • Can’t be the same as an existing blue/green deployment name in the same account and Amazon Web Services Region.

    ^

  • :source (required, String)

    The Amazon Resource Name (ARN) of the source production database.

    Specify the database that you want to clone. The blue/green deployment creates this database in the green environment. You can make updates to the database in the green environment, such as an engine version upgrade. When you are ready, you can switch the database in the green environment to be the production database.

  • :target_engine_version (String)

    The engine version of the database in the green environment.

    Specify the engine version to upgrade to in the green environment.

  • :target_db_parameter_group_name (String)

    The DB parameter group associated with the DB instance in the green environment.

    To test parameter changes, specify a DB parameter group that is different from the one associated with the source DB instance.

  • :target_db_cluster_parameter_group_name (String)

    The DB cluster parameter group associated with the Aurora DB cluster in the green environment.

    To test parameter changes, specify a DB cluster parameter group that is different from the one associated with the source DB cluster.

  • :tags (Array<Types::Tag>)

    Tags to assign to the blue/green deployment.

  • :target_db_instance_class (String)

    Specify the DB instance class for the databases in the green environment.

    This parameter only applies to RDS DB instances, because DB instances within an Aurora DB cluster can have multiple different instance classes. If you’re creating a blue/green deployment from an Aurora DB cluster, don’t specify this parameter. After the green environment is created, you can individually modify the instance classes of the DB instances within the green DB cluster.

  • :upgrade_target_storage_config (Boolean)

    Whether to upgrade the storage file system configuration on the green database. This option migrates the green DB instance from the older 32-bit file system to the preferred configuration. For more information, see [Upgrading the storage file system for a DB instance].

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.UpgradeFileSystem

  • :target_iops (Integer)

    The amount of Provisioned IOPS (input/output operations per second) to allocate for the green DB instance. For information about valid IOPS values, see [Amazon RDS DB instance storage] in the *Amazon RDS User Guide*.

    This setting doesn’t apply to Amazon Aurora blue/green deployments.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html

  • :target_storage_type (String)

    The storage type to associate with the green DB instance.

    Valid Values: ‘gp2 | gp3 | io1 | io2`

    This setting doesn’t apply to Amazon Aurora blue/green deployments.

  • :target_allocated_storage (Integer)

    The amount of storage in gibibytes (GiB) to allocate for the green DB instance. You can choose to increase or decrease the allocated storage on the green DB instance.

    This setting doesn’t apply to Amazon Aurora blue/green deployments.

  • :target_storage_throughput (Integer)

    The storage throughput value for the green DB instance.

    This setting applies only to the ‘gp3` storage type.

    This setting doesn’t apply to Amazon Aurora blue/green deployments.

Returns:

See Also:



2368
2369
2370
2371
# File 'lib/aws-sdk-rds/client.rb', line 2368

def create_blue_green_deployment(params = {}, options = {})
  req = build_request(:create_blue_green_deployment, params)
  req.send_request(options)
end

#create_custom_db_engine_version(params = {}) ⇒ Types::DBEngineVersion

Creates a custom DB engine version (CEV).

Examples:

Request syntax with placeholder values


resp = client.create_custom_db_engine_version({
  engine: "CustomEngineName", # required
  engine_version: "CustomEngineVersion", # required
  database_installation_files_s3_bucket_name: "BucketName",
  database_installation_files_s3_prefix: "String255",
  image_id: "String255",
  kms_key_id: "KmsKeyIdOrArn",
  description: "Description",
  manifest: "CustomDBEngineVersionManifest",
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  source_custom_db_engine_version_identifier: "String255",
  use_aws_provided_latest_image: false,
})

Response structure


resp.engine #=> String
resp.engine_version #=> String
resp.db_parameter_group_family #=> String
resp.db_engine_description #=> String
resp.db_engine_version_description #=> String
resp.default_character_set.character_set_name #=> String
resp.default_character_set.character_set_description #=> String
resp.image.image_id #=> String
resp.image.status #=> String
resp.db_engine_media_type #=> String
resp.supported_character_sets #=> Array
resp.supported_character_sets[0].character_set_name #=> String
resp.supported_character_sets[0].character_set_description #=> String
resp.supported_nchar_character_sets #=> Array
resp.supported_nchar_character_sets[0].character_set_name #=> String
resp.supported_nchar_character_sets[0].character_set_description #=> String
resp.valid_upgrade_target #=> Array
resp.valid_upgrade_target[0].engine #=> String
resp.valid_upgrade_target[0].engine_version #=> String
resp.valid_upgrade_target[0].description #=> String
resp.valid_upgrade_target[0].auto_upgrade #=> Boolean
resp.valid_upgrade_target[0].is_major_version_upgrade #=> Boolean
resp.valid_upgrade_target[0].supported_engine_modes #=> Array
resp.valid_upgrade_target[0].supported_engine_modes[0] #=> String
resp.valid_upgrade_target[0].supports_parallel_query #=> Boolean
resp.valid_upgrade_target[0].supports_global_databases #=> Boolean
resp.valid_upgrade_target[0].supports_babelfish #=> Boolean
resp.valid_upgrade_target[0].supports_limitless_database #=> Boolean
resp.valid_upgrade_target[0].supports_local_write_forwarding #=> Boolean
resp.valid_upgrade_target[0].supports_integrations #=> Boolean
resp.supported_timezones #=> Array
resp.supported_timezones[0].timezone_name #=> String
resp.exportable_log_types #=> Array
resp.exportable_log_types[0] #=> String
resp.supports_log_exports_to_cloudwatch_logs #=> Boolean
resp.supports_read_replica #=> Boolean
resp.supported_engine_modes #=> Array
resp.supported_engine_modes[0] #=> String
resp.supported_feature_names #=> Array
resp.supported_feature_names[0] #=> String
resp.status #=> String
resp.supports_parallel_query #=> Boolean
resp.supports_global_databases #=> Boolean
resp.major_engine_version #=> String
resp.database_installation_files_s3_bucket_name #=> String
resp.database_installation_files_s3_prefix #=> String
resp.db_engine_version_arn #=> String
resp.kms_key_id #=> String
resp.create_time #=> Time
resp.tag_list #=> Array
resp.tag_list[0].key #=> String
resp.tag_list[0].value #=> String
resp.supports_babelfish #=> Boolean
resp.custom_db_engine_version_manifest #=> String
resp.supports_limitless_database #=> Boolean
resp.supports_certificate_rotation_without_restart #=> Boolean
resp.supported_ca_certificate_identifiers #=> Array
resp.supported_ca_certificate_identifiers[0] #=> String
resp.supports_local_write_forwarding #=> Boolean
resp.supports_integrations #=> Boolean
resp.serverless_v2_features_support.min_capacity #=> Float
resp.serverless_v2_features_support.max_capacity #=> Float

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :engine (required, String)

    The database engine. RDS Custom for Oracle supports the following values:

    • ‘custom-oracle-ee`

    • ‘custom-oracle-ee-cdb`

    • ‘custom-oracle-se2`

    • ‘custom-oracle-se2-cdb`

  • :engine_version (required, String)

    The name of your CEV. The name format is 19.customized_string. For example, a valid CEV name is ‘19.my_cev1`. This setting is required for RDS Custom for Oracle, but optional for Amazon RDS. The combination of `Engine` and `EngineVersion` is unique per customer per Region.

  • :database_installation_files_s3_bucket_name (String)

    The name of an Amazon S3 bucket that contains database installation files for your CEV. For example, a valid bucket name is ‘my-custom-installation-files`.

  • :database_installation_files_s3_prefix (String)

    The Amazon S3 directory that contains the database installation files for your CEV. For example, a valid bucket name is ‘123456789012/cev1`. If this setting isn’t specified, no prefix is assumed.

  • :image_id (String)

    The ID of the Amazon Machine Image (AMI). For RDS Custom for SQL Server, an AMI ID is required to create a CEV. For RDS Custom for Oracle, the default is the most recent AMI available, but you can specify an AMI ID that was used in a different Oracle CEV. Find the AMIs used by your CEVs by calling the [DescribeDBEngineVersions] operation.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBEngineVersions.html

  • :kms_key_id (String)

    The Amazon Web Services KMS key identifier for an encrypted CEV. A symmetric encryption KMS key is required for RDS Custom, but optional for Amazon RDS.

    If you have an existing symmetric encryption KMS key in your account, you can use it with RDS Custom. No further action is necessary. If you don’t already have a symmetric encryption KMS key in your account, follow the instructions in [ Creating a symmetric encryption KMS key] in the *Amazon Web Services Key Management Service Developer Guide*.

    You can choose the same symmetric encryption key when you create a CEV and a DB instance, or choose different keys.

    [1]: docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk

  • :description (String)

    An optional description of your CEV.

  • :manifest (String)

    The CEV manifest, which is a JSON document that describes the installation .zip files stored in Amazon S3. Specify the name/value pairs in a file or a quoted string. RDS Custom applies the patches in the order in which they are listed.

    The following JSON fields are valid:

    MediaImportTemplateVersion

    : Version of the CEV manifest. The date is in the format ‘YYYY-MM-DD`.

    databaseInstallationFileNames

    : Ordered list of installation files for the CEV.

    opatchFileNames

    : Ordered list of OPatch installers used for the Oracle DB engine.

    psuRuPatchFileNames

    : The PSU and RU patches for this CEV.

    OtherPatchFileNames

    : The patches that are not in the list of PSU and RU patches. Amazon

    RDS applies these patches after applying the PSU and RU patches.
    

    For more information, see [ Creating the CEV manifest] in the *Amazon RDS User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-cev.html#custom-cev.preparing.manifest

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

  • :source_custom_db_engine_version_identifier (String)

    The ARN of a CEV to use as a source for creating a new CEV. You can specify a different Amazon Machine Imagine (AMI) by using either ‘Source` or `UseAwsProvidedLatestImage`. You can’t specify a different JSON manifest when you specify ‘SourceCustomDbEngineVersionIdentifier`.

  • :use_aws_provided_latest_image (Boolean)

    Specifies whether to use the latest service-provided Amazon Machine Image (AMI) for the CEV. If you specify ‘UseAwsProvidedLatestImage`, you can’t also specify ‘ImageId`.

Returns:

See Also:



2626
2627
2628
2629
# File 'lib/aws-sdk-rds/client.rb', line 2626

def create_custom_db_engine_version(params = {}, options = {})
  req = build_request(:create_custom_db_engine_version, params)
  req.send_request(options)
end

#create_db_cluster(params = {}) ⇒ Types::CreateDBClusterResult

Creates a new Amazon Aurora DB cluster or Multi-AZ DB cluster.

If you create an Aurora DB cluster, the request creates an empty cluster. You must explicitly create the writer instance for your DB cluster using the [CreateDBInstance] operation. If you create a Multi-AZ DB cluster, the request creates a writer and two reader DB instances for you, each in a different Availability Zone.

You can use the ‘ReplicationSourceIdentifier` parameter to create an Amazon Aurora DB cluster as a read replica of another DB cluster or Amazon RDS for MySQL or PostgreSQL DB instance. For more information about Amazon Aurora, see [What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

You can also use the ‘ReplicationSourceIdentifier` parameter to create a Multi-AZ DB cluster read replica with an RDS for MySQL or PostgreSQL DB instance as the source. For more information about Multi-AZ DB clusters, see [Multi-AZ DB cluster deployments] in the *Amazon RDS User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To create a MySQL 5.7-compatible DB cluster


# The following example creates a MySQL 5.7-compatible Aurora DB cluster.

resp = client.create_db_cluster({
  db_cluster_identifier: "sample-cluster", 
  db_subnet_group_name: "default", 
  engine: "aurora-mysql", 
  engine_version: "5.7.12", 
  master_user_password: "mypassword", 
  master_username: "admin", 
  vpc_security_group_ids: [
    "sg-0b91305example", 
  ], 
})

resp.to_h outputs the following:
{
  db_cluster: {
    allocated_storage: 1, 
    associated_roles: [
    ], 
    availability_zones: [
      "us-east-1a", 
      "us-east-1b", 
      "us-east-1e", 
    ], 
    backup_retention_period: 1, 
    cluster_create_time: Time.parse("2019-06-07T23:21:33.048Z"), 
    copy_tags_to_snapshot: false, 
    db_cluster_arn: "arn:aws:rds:us-east-1:123456789012:cluster:sample-cluster", 
    db_cluster_identifier: "sample-cluster", 
    db_cluster_members: [
    ], 
    db_cluster_parameter_group: "default.aurora-mysql5.7", 
    db_subnet_group: "default", 
    db_cluster_resource_id: "cluster-ANPAJ4AE5446DAEXAMPLE", 
    deletion_protection: false, 
    endpoint: "sample-cluster.cluster-cnpexample.us-east-1.rds.amazonaws.com", 
    engine: "aurora-mysql", 
    engine_mode: "provisioned", 
    engine_version: "5.7.12", 
    hosted_zone_id: "Z2R2ITUGPM61AM", 
    http_endpoint_enabled: false, 
    iam_database_authentication_enabled: false, 
    master_username: "master", 
    multi_az: false, 
    port: 3306, 
    preferred_backup_window: "09:12-09:42", 
    preferred_maintenance_window: "mon:04:31-mon:05:01", 
    read_replica_identifiers: [
    ], 
    reader_endpoint: "sample-cluster.cluster-ro-cnpexample.us-east-1.rds.amazonaws.com", 
    status: "creating", 
    storage_encrypted: false, 
    vpc_security_groups: [
      {
        status: "active", 
        vpc_security_group_id: "sg-0b91305example", 
      }, 
    ], 
  }, 
}

Example: To create a PostgreSQL-compatible DB cluster


# The following example creates a PostgreSQL-compatible Aurora DB cluster.

resp = client.create_db_cluster({
  db_cluster_identifier: "sample-pg-cluster", 
  db_subnet_group_name: "default", 
  engine: "aurora-postgresql", 
  master_user_password: "mypassword", 
  master_username: "admin", 
  vpc_security_group_ids: [
    "sg-0b91305example", 
  ], 
})

resp.to_h outputs the following:
{
  db_cluster: {
    allocated_storage: 1, 
    associated_roles: [
    ], 
    availability_zones: [
      "us-east-1a", 
      "us-east-1b", 
      "us-east-1c", 
    ], 
    backup_retention_period: 1, 
    cluster_create_time: Time.parse("2019-06-07T23:26:08.371Z"), 
    copy_tags_to_snapshot: false, 
    db_cluster_arn: "arn:aws:rds:us-east-1:123456789012:cluster:sample-pg-cluster", 
    db_cluster_identifier: "sample-pg-cluster", 
    db_cluster_members: [
    ], 
    db_cluster_parameter_group: "default.aurora-postgresql9.6", 
    db_subnet_group: "default", 
    db_cluster_resource_id: "cluster-ANPAJ4AE5446DAEXAMPLE", 
    deletion_protection: false, 
    endpoint: "sample-pg-cluster.cluster-cnpexample.us-east-1.rds.amazonaws.com", 
    engine: "aurora-postgresql", 
    engine_mode: "provisioned", 
    engine_version: "9.6.9", 
    hosted_zone_id: "Z2R2ITUGPM61AM", 
    http_endpoint_enabled: false, 
    iam_database_authentication_enabled: false, 
    master_username: "master", 
    multi_az: false, 
    port: 5432, 
    preferred_backup_window: "09:56-10:26", 
    preferred_maintenance_window: "wed:03:33-wed:04:03", 
    read_replica_identifiers: [
    ], 
    reader_endpoint: "sample-pg-cluster.cluster-ro-cnpexample.us-east-1.rds.amazonaws.com", 
    status: "creating", 
    storage_encrypted: false, 
    vpc_security_groups: [
      {
        status: "active", 
        vpc_security_group_id: "sg-0b91305example", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.create_db_cluster({
  availability_zones: ["String"],
  backup_retention_period: 1,
  character_set_name: "String",
  database_name: "String",
  db_cluster_identifier: "String", # required
  db_cluster_parameter_group_name: "String",
  vpc_security_group_ids: ["String"],
  db_subnet_group_name: "String",
  engine: "String", # required
  engine_version: "String",
  port: 1,
  master_username: "String",
  master_user_password: "String",
  option_group_name: "String",
  preferred_backup_window: "String",
  preferred_maintenance_window: "String",
  replication_source_identifier: "String",
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  storage_encrypted: false,
  kms_key_id: "String",
  pre_signed_url: "String",
  enable_iam_database_authentication: false,
  backtrack_window: 1,
  enable_cloudwatch_logs_exports: ["String"],
  engine_mode: "String",
  scaling_configuration: {
    min_capacity: 1,
    max_capacity: 1,
    auto_pause: false,
    seconds_until_auto_pause: 1,
    timeout_action: "String",
    seconds_before_timeout: 1,
  },
  rds_custom_cluster_configuration: {
    interconnect_subnet_id: "String",
    transit_gateway_multicast_domain_id: "String",
    replica_mode: "open-read-only", # accepts open-read-only, mounted
  },
  deletion_protection: false,
  global_cluster_identifier: "String",
  enable_http_endpoint: false,
  copy_tags_to_snapshot: false,
  domain: "String",
  domain_iam_role_name: "String",
  enable_global_write_forwarding: false,
  db_cluster_instance_class: "String",
  allocated_storage: 1,
  storage_type: "String",
  iops: 1,
  publicly_accessible: false,
  auto_minor_version_upgrade: false,
  monitoring_interval: 1,
  monitoring_role_arn: "String",
  database_insights_mode: "standard", # accepts standard, advanced
  enable_performance_insights: false,
  performance_insights_kms_key_id: "String",
  performance_insights_retention_period: 1,
  enable_limitless_database: false,
  serverless_v2_scaling_configuration: {
    min_capacity: 1.0,
    max_capacity: 1.0,
    seconds_until_auto_pause: 1,
  },
  network_type: "String",
  cluster_scalability_type: "standard", # accepts standard, limitless
  db_system_id: "String",
  manage_master_user_password: false,
  master_user_secret_kms_key_id: "String",
  enable_local_write_forwarding: false,
  ca_certificate_identifier: "String",
  engine_lifecycle_support: "String",
  source_region: "String",
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :availability_zones (Array<String>)

    A list of Availability Zones (AZs) where you specifically want to create DB instances in the DB cluster.

    For information on AZs, see [Availability Zones] in the *Amazon Aurora User Guide*.

    Valid for Cluster Type: Aurora DB clusters only

    Constraints:

    • Can’t specify more than three AZs.

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.RegionsAndAvailabilityZones.html#Concepts.RegionsAndAvailabilityZones.AvailabilityZones

  • :backup_retention_period (Integer)

    The number of days for which automated backups are retained.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Default: ‘1`

    Constraints:

    • Must be a value from 1 to 35.

    ^

  • :character_set_name (String)

    The name of the character set (‘CharacterSet`) to associate the DB cluster with.

    Valid for Cluster Type: Aurora DB clusters only

  • :database_name (String)

    The name for your database of up to 64 alphanumeric characters. A database named ‘postgres` is always created. If this parameter is specified, an additional database with this name is created.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :db_cluster_identifier (required, String)

    The identifier for this DB cluster. This parameter is stored as a lowercase string.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Constraints:

    • Must contain from 1 to 63 (for Aurora DB clusters) or 1 to 52 (for Multi-AZ DB clusters) letters, numbers, or hyphens.

    • First character must be a letter.

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

    Example: ‘my-cluster1`

  • :db_cluster_parameter_group_name (String)

    The name of the DB cluster parameter group to associate with this DB cluster. If you don’t specify a value, then the default DB cluster parameter group for the specified DB engine and version is used.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Constraints:

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

    ^

  • :vpc_security_group_ids (Array<String>)

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

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :db_subnet_group_name (String)

    A DB subnet group to associate with this DB cluster.

    This setting is required to create a Multi-AZ DB cluster.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Constraints:

    • Must match the name of an existing DB subnet group.

    ^

    Example: ‘mydbsubnetgroup`

  • :engine (required, String)

    The database engine to use for this DB cluster.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Valid Values:

    • ‘aurora-mysql`

    • ‘aurora-postgresql`

    • ‘mysql`

    • ‘postgres`

    • ‘neptune` - For information about using Amazon Neptune, see the [ *Amazon Neptune User Guide* ][1].

    [1]: docs.aws.amazon.com/neptune/latest/userguide/intro.html

  • :engine_version (String)

    The version number of the database engine to use.

    To list all of the available engine versions for Aurora MySQL version 2 (5.7-compatible) and version 3 (MySQL 8.0-compatible), use the following command:

    ‘aws rds describe-db-engine-versions –engine aurora-mysql –query “DBEngineVersions[].EngineVersion”`

    You can supply either ‘5.7` or `8.0` to use the default engine version for Aurora MySQL version 2 or version 3, respectively.

    To list all of the available engine versions for Aurora PostgreSQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine aurora-postgresql –query “DBEngineVersions[].EngineVersion”`

    To list all of the available engine versions for RDS for MySQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine mysql –query “DBEngineVersions[].EngineVersion”`

    To list all of the available engine versions for RDS for PostgreSQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine postgres –query “DBEngineVersions[].EngineVersion”`

    For information about a specific engine, see the following topics:

    • Aurora MySQL - see [Database engine updates for Amazon Aurora MySQL] in the *Amazon Aurora User Guide*.

    • Aurora PostgreSQL - see [Amazon Aurora PostgreSQL releases and engine versions] in the *Amazon Aurora User Guide*.

    • RDS for MySQL - see [Amazon RDS for MySQL] in the *Amazon RDS User Guide*.

    • RDS for PostgreSQL - see [Amazon RDS for PostgreSQL] in the *Amazon RDS User Guide*.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Updates.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Updates.20180305.html [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html#MySQL.Concepts.VersionMgmt [4]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts

  • :port (Integer)

    The port number on which the instances in the DB cluster accept connections.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Valid Values: ‘1150-65535`

    Default:

    • RDS for MySQL and Aurora MySQL - ‘3306`

    • RDS for PostgreSQL and Aurora PostgreSQL - ‘5432`

  • :master_username (String)

    The name of the master user for the DB cluster.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Constraints:

    • Must be 1 to 16 letters or numbers.

    • First character must be a letter.

    • Can’t be a reserved word for the chosen database engine.

  • :master_user_password (String)

    The password for the master database user.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Constraints:

    • Must contain from 8 to 41 characters.

    • Can contain any printable ASCII character except “/”, “”“, or ”@“.

    • Can’t be specified if ‘ManageMasterUserPassword` is turned on.

  • :option_group_name (String)

    The option group to associate the DB cluster with.

    DB clusters are associated with a default option group that can’t be modified.

  • :preferred_backup_window (String)

    The daily time range during which automated backups are created if automated backups are enabled using the ‘BackupRetentionPeriod` parameter.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. To view the time blocks available, see [ Backup window] in the *Amazon Aurora User Guide*.

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Managing.Backups.html#Aurora.Managing.Backups.BackupWindow

  • :preferred_maintenance_window (String)

    The weekly time range during which system maintenance can occur.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week. To see the time blocks available, see [ Adjusting the Preferred DB Cluster Maintenance Window] in the *Amazon Aurora User Guide*.

    Constraints:

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

    • Days must be one of ‘Mon | Tue | Wed | Thu | Fri | Sat | Sun`.

    • Must be in Universal Coordinated Time (UTC).

    • Must be at least 30 minutes.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_UpgradeDBInstance.Maintenance.html#AdjustingTheMaintenanceWindow.Aurora

  • :replication_source_identifier (String)

    The Amazon Resource Name (ARN) of the source DB instance or DB cluster if this DB cluster is created as a read replica.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :tags (Array<Types::Tag>)

    Tags to assign to the DB cluster.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :storage_encrypted (Boolean)

    Specifies whether the DB cluster is encrypted.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :kms_key_id (String)

    The Amazon Web Services KMS key identifier for an encrypted DB cluster.

    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.

    When a KMS key isn’t specified in ‘KmsKeyId`:

    • If ‘ReplicationSourceIdentifier` identifies an encrypted source, then Amazon RDS uses the KMS key used to encrypt the source. Otherwise, Amazon RDS uses your default KMS key.

    • If the ‘StorageEncrypted` parameter is enabled and `ReplicationSourceIdentifier` isn’t specified, 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.

    If you create a read replica of an encrypted DB cluster in another Amazon Web Services Region, make sure to set ‘KmsKeyId` to a KMS key identifier that is valid in the destination Amazon Web Services Region. This KMS key is used to encrypt the read replica in that Amazon Web Services Region.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :pre_signed_url (String)

    When you are replicating a DB cluster from one Amazon Web Services GovCloud (US) Region to another, an URL that contains a Signature Version 4 signed request for the ‘CreateDBCluster` operation to be called in the source Amazon Web Services Region where the DB cluster is replicated from. Specify `PreSignedUrl` only when you are performing cross-Region replication from an encrypted DB cluster.

    The presigned URL must be a valid request for the ‘CreateDBCluster` API operation that can run in the source Amazon Web Services Region that contains the encrypted DB cluster to copy.

    The presigned URL request must contain the following parameter values:

    • ‘KmsKeyId` - The KMS key identifier for the KMS key to use to encrypt the copy of the DB cluster in the destination Amazon Web Services Region. This should refer to the same KMS key for both the `CreateDBCluster` operation that is called in the destination Amazon Web Services Region, and the operation contained in the presigned URL.

    • ‘DestinationRegion` - The name of the Amazon Web Services Region that Aurora read replica will be created in.

    • ‘ReplicationSourceIdentifier` - The DB cluster identifier for the encrypted DB cluster to be copied. This identifier must be in the Amazon Resource Name (ARN) format for the source Amazon Web Services Region. For example, if you are copying an encrypted DB cluster from the us-west-2 Amazon Web Services Region, then your `ReplicationSourceIdentifier` would look like Example: `arn:aws:rds:us-west-2:123456789012:cluster:aurora-cluster1`.

    To learn how to generate a Signature Version 4 signed request, see [ Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4)] and [ Signature Version 4 Signing Process].

    <note markdown=“1”> If you are using an Amazon Web Services SDK tool or the CLI, you can specify ‘SourceRegion` (or `–source-region` for the CLI) instead of specifying `PreSignedUrl` manually. Specifying `SourceRegion` autogenerates a presigned URL that is a valid request for the operation that can run in the source Amazon Web Services Region.

    </note>
    

    Valid for Cluster Type: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html [2]: docs.aws.amazon.com/general/latest/gr/signature-version-4.html

  • :enable_iam_database_authentication (Boolean)

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

    For more information, see [ IAM Database Authentication] in the *Amazon Aurora User Guide* or [IAM database authentication for MariaDB, MySQL, and PostgreSQL] in the *Amazon RDS User Guide*.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html

  • :backtrack_window (Integer)

    The target backtrack window, in seconds. To disable backtracking, set this value to ‘0`.

    Valid for Cluster Type: Aurora MySQL DB clusters only

    Default: ‘0`

    Constraints:

    • If specified, this value must be set to a number from 0 to 259,200 (72 hours).

    ^

  • :enable_cloudwatch_logs_exports (Array<String>)

    The list of log types that need to be enabled for exporting to CloudWatch Logs.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    The following values are valid for each DB engine:

    • Aurora MySQL - ‘audit | error | general | slowquery`

    • Aurora PostgreSQL - ‘postgresql`

    • RDS for MySQL - ‘error | general | slowquery`

    • RDS for PostgreSQL - ‘postgresql | upgrade`

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :engine_mode (String)

    The DB engine mode of the DB cluster, either ‘provisioned` or `serverless`.

    The ‘serverless` engine mode only applies for Aurora Serverless v1 DB clusters. Aurora Serverless v2 DB clusters use the `provisioned` engine mode.

    For information about limitations and requirements for Serverless DB clusters, see the following sections in the *Amazon Aurora User Guide*:

    • Limitations of Aurora Serverless v1][1
    • Requirements for Aurora Serverless v2][2

    Valid for Cluster Type: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.html#aurora-serverless.limitations [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.requirements.html

  • :scaling_configuration (Types::ScalingConfiguration)

    For DB clusters in ‘serverless` DB engine mode, the scaling properties of the DB cluster.

    Valid for Cluster Type: Aurora DB clusters only

  • :rds_custom_cluster_configuration (Types::RdsCustomClusterConfiguration)

    Reserved for future use.

  • :deletion_protection (Boolean)

    Specifies whether the DB cluster has deletion protection enabled. The database can’t be deleted when deletion protection is enabled. By default, deletion protection isn’t enabled.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :global_cluster_identifier (String)

    The global cluster ID of an Aurora cluster that becomes the primary cluster in the new global database cluster.

    Valid for Cluster Type: Aurora DB clusters only

  • :enable_http_endpoint (Boolean)

    Specifies whether to enable the HTTP endpoint for the DB cluster. By default, the HTTP endpoint isn’t enabled.

    When enabled, the HTTP endpoint provides a connectionless web service API (RDS Data API) for running SQL queries on the DB cluster. You can also query your database from inside the RDS console with the RDS query editor.

    For more information, see [Using RDS Data API] in the *Amazon Aurora User Guide*.

    Valid for Cluster Type: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html

  • :copy_tags_to_snapshot (Boolean)

    Specifies whether to copy all tags from the DB cluster to snapshots of the DB cluster. The default is not to copy them.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :domain (String)

    The Active Directory directory ID to create the DB cluster in.

    For Amazon Aurora DB clusters, Amazon RDS can use Kerberos authentication to authenticate users that connect to the DB cluster.

    For more information, see [Kerberos authentication] in the *Amazon Aurora User Guide*.

    Valid for Cluster Type: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/kerberos-authentication.html

  • :domain_iam_role_name (String)

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

    Valid for Cluster Type: Aurora DB clusters only

  • :enable_global_write_forwarding (Boolean)

    Specifies whether to enable this DB cluster to forward write operations to the primary cluster of a global cluster (Aurora global database). By default, write operations are not allowed on Aurora DB clusters that are secondary clusters in an Aurora global database.

    You can set this value only on Aurora DB clusters that are members of an Aurora global database. With this parameter enabled, a secondary cluster can forward writes to the current primary cluster, and the resulting changes are replicated back to this cluster. For the primary DB cluster of an Aurora global database, this value is used immediately if the primary is demoted by a global cluster API operation, but it does nothing until then.

    Valid for Cluster Type: Aurora DB clusters only

  • :db_cluster_instance_class (String)

    The compute and memory capacity of each DB instance in the Multi-AZ DB cluster, for example ‘db.m6gd.xlarge`. 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*.

    This setting is required to create a Multi-AZ DB cluster.

    Valid for Cluster Type: Multi-AZ DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html

  • :allocated_storage (Integer)

    The amount of storage in gibibytes (GiB) to allocate to each DB instance in the Multi-AZ DB cluster.

    Valid for Cluster Type: Multi-AZ DB clusters only

    This setting is required to create a Multi-AZ DB cluster.

  • :storage_type (String)

    The storage type to associate with the DB cluster.

    For information on storage types for Aurora DB clusters, see [Storage configurations for Amazon Aurora DB clusters]. For information on storage types for Multi-AZ DB clusters, see [Settings for creating Multi-AZ DB clusters].

    This setting is required to create a Multi-AZ DB cluster.

    When specified for a Multi-AZ DB cluster, a value for the ‘Iops` parameter is required.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Valid Values:

    • Aurora DB clusters - ‘aurora | aurora-iopt1`

    • Multi-AZ DB clusters - ‘io1 | io2 | gp3`

    Default:

    • Aurora DB clusters - ‘aurora`

    • Multi-AZ DB clusters - ‘io1`

    <note markdown=“1”> When you create an Aurora DB cluster with the storage type set to ‘aurora-iopt1`, the storage type is returned in the response. The storage type isn’t returned when you set it to ‘aurora`.

    </note>
    

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Overview.StorageReliability.html#aurora-storage-type [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/create-multi-az-db-cluster.html#create-multi-az-db-cluster-settings

  • :iops (Integer)

    The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster.

    For information about valid IOPS values, see [Provisioned IOPS storage] in the *Amazon RDS User Guide*.

    This setting is required to create a Multi-AZ DB cluster.

    Valid for Cluster Type: Multi-AZ DB clusters only

    Constraints:

    • Must be a multiple between .5 and 50 of the storage amount for the DB cluster.

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS

  • :publicly_accessible (Boolean)

    Specifies whether the DB cluster is publicly accessible.

    When the DB cluster is publicly accessible and you connect from outside of the DB cluster’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 cluster, the endpoint resolves to the private IP address. Access to the DB cluster is ultimately controlled by the security group it uses. That public access isn’t permitted if the security group assigned to the DB cluster doesn’t permit it.

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

    Valid for Cluster Type: Multi-AZ DB clusters only

    Default: The default behavior varies depending on whether ‘DBSubnetGroupName` is specified.

    If ‘DBSubnetGroupName` isn’t specified, and ‘PubliclyAccessible` isn’t specified, the following applies:

    • If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB cluster is private.

    • If the default VPC in the target Region has an internet gateway attached to it, the DB cluster is public.

    If ‘DBSubnetGroupName` is specified, and `PubliclyAccessible` isn’t specified, the following applies:

    • If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB cluster is private.

    • If the subnets are part of a VPC that has an internet gateway attached to it, the DB cluster is public.

  • :auto_minor_version_upgrade (Boolean)

    Specifies whether minor engine upgrades are applied automatically to the DB cluster during the maintenance window. By default, minor engine upgrades are applied automatically.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB cluster

  • :monitoring_interval (Integer)

    The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. To turn off collecting Enhanced Monitoring metrics, specify ‘0`.

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

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

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

    Default: ‘0`

  • :monitoring_role_arn (String)

    The Amazon Resource Name (ARN) for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs. An example is ‘arn:aws:iam:123456789012:role/emaccess`. For information on creating a monitoring role, see [Setting up and enabling Enhanced Monitoring] in the *Amazon RDS User Guide*.

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

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html#USER_Monitoring.OS.Enabling

  • :database_insights_mode (String)

    The mode of Database Insights to enable for the DB cluster.

    If you set this value to ‘advanced`, you must also set the `PerformanceInsightsEnabled` parameter to `true` and the `PerformanceInsightsRetentionPeriod` parameter to 465.

    Valid for Cluster Type: Aurora DB clusters only

  • :enable_performance_insights (Boolean)

    Specifies whether to turn on Performance Insights for the DB cluster.

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

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html

  • :performance_insights_kms_key_id (String)

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

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

    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.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :performance_insights_retention_period (Integer)

    The number of days to retain Performance Insights data.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    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 issues an error.

  • :enable_limitless_database (Boolean)

    Specifies whether to enable Aurora Limitless Database. You must enable Aurora Limitless Database to create a DB shard group.

    Valid for: Aurora DB clusters only

    <note markdown=“1”> This setting is no longer used. Instead use the ‘ClusterScalabilityType` setting.

    </note>
    
  • :serverless_v2_scaling_configuration (Types::ServerlessV2ScalingConfiguration)

    Contains the scaling configuration of an Aurora Serverless v2 DB cluster.

    For more information, see [Using Amazon Aurora Serverless v2] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.html

  • :network_type (String)

    The network type of the DB cluster.

    The network type is determined by the ‘DBSubnetGroup` specified for the DB cluster. 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 Aurora User Guide.*

    Valid for Cluster Type: Aurora DB clusters only

    Valid Values: ‘IPV4 | DUAL`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :cluster_scalability_type (String)

    Specifies the scalability mode of the Aurora DB cluster. When set to ‘limitless`, the cluster operates as an Aurora Limitless Database. When set to `standard` (the default), the cluster uses normal DB instance creation.

    Valid for: Aurora DB clusters only

    <note markdown=“1”> You can’t modify this setting after you create the DB cluster.

    </note>
    
  • :db_system_id (String)

    Reserved for future use.

  • :manage_master_user_password (Boolean)

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

    For more information, see [Password management with Amazon Web Services Secrets Manager] in the *Amazon RDS User Guide* and

    Password management with Amazon Web Services Secrets Manager][2

    in

    the *Amazon Aurora User Guide.*

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Constraints:

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

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html

  • :master_user_secret_kms_key_id (String)

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

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

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

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

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

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :enable_local_write_forwarding (Boolean)

    Specifies whether read replicas can forward write operations to the writer DB instance in the DB cluster. By default, write operations aren’t allowed on reader DB instances.

    Valid for: Aurora DB clusters only

  • :ca_certificate_identifier (String)

    The CA certificate identifier to use for the DB cluster’s server certificate.

    For more information, see [Using SSL/TLS to encrypt a connection to a DB instance] in the *Amazon RDS User Guide*.

    Valid for Cluster Type: Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html

  • :engine_lifecycle_support (String)

    The life cycle type for this DB cluster.

    <note markdown=“1”> By default, this value is set to ‘open-source-rds-extended-support`, which enrolls your DB cluster into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to `open-source-rds-extended-support-disabled`. In this case, creating the DB cluster will fail if the DB major version is past its end of standard support date.

    </note>
    

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

    • Amazon Aurora - [Using Amazon RDS Extended Support] in the *Amazon Aurora User Guide*

    • Amazon RDS - [Using Amazon RDS Extended Support] in the *Amazon RDS User Guide*

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

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

    Default: ‘open-source-rds-extended-support`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/extended-support.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html

  • :source_region (String)

    The source region of the snapshot. This is only needed when the shapshot is encrypted and in a different region.

Returns:

See Also:



3932
3933
3934
3935
# File 'lib/aws-sdk-rds/client.rb', line 3932

def create_db_cluster(params = {}, options = {})
  req = build_request(:create_db_cluster, params)
  req.send_request(options)
end

#create_db_cluster_endpoint(params = {}) ⇒ Types::DBClusterEndpoint

Creates a new custom endpoint and associates it with an Amazon Aurora DB cluster.

<note markdown=“1”> This action applies only to Aurora DB clusters.

</note>

Examples:

Example: To create a custom DB cluster endpoint


# The following example creates a custom DB cluster endpoint and associate it with the specified Aurora DB cluster.

resp = client.create_db_cluster_endpoint({
  db_cluster_endpoint_identifier: "mycustomendpoint", 
  db_cluster_identifier: "mydbcluster", 
  endpoint_type: "reader", 
  static_members: [
    "dbinstance1", 
    "dbinstance2", 
  ], 
})

resp.to_h outputs the following:
{
  custom_endpoint_type: "READER", 
  db_cluster_endpoint_arn: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:mycustomendpoint", 
  db_cluster_endpoint_identifier: "mycustomendpoint", 
  db_cluster_endpoint_resource_identifier: "cluster-endpoint-ANPAJ4AE5446DAEXAMPLE", 
  db_cluster_identifier: "mydbcluster", 
  endpoint: "mycustomendpoint.cluster-custom-cnpexample.us-east-1.rds.amazonaws.com", 
  endpoint_type: "CUSTOM", 
  excluded_members: [
  ], 
  static_members: [
    "dbinstance1", 
    "dbinstance2", 
  ], 
  status: "creating", 
}

Request syntax with placeholder values


resp = client.create_db_cluster_endpoint({
  db_cluster_identifier: "String", # required
  db_cluster_endpoint_identifier: "String", # required
  endpoint_type: "String", # required
  static_members: ["String"],
  excluded_members: ["String"],
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_cluster_endpoint_identifier #=> String
resp.db_cluster_identifier #=> String
resp.db_cluster_endpoint_resource_identifier #=> String
resp.endpoint #=> String
resp.status #=> String
resp.endpoint_type #=> String
resp.custom_endpoint_type #=> String
resp.static_members #=> Array
resp.static_members[0] #=> String
resp.excluded_members #=> Array
resp.excluded_members[0] #=> String
resp.db_cluster_endpoint_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The DB cluster identifier of the DB cluster associated with the endpoint. This parameter is stored as a lowercase string.

  • :db_cluster_endpoint_identifier (required, String)

    The identifier to use for the new endpoint. This parameter is stored as a lowercase string.

  • :endpoint_type (required, String)

    The type of the endpoint, one of: ‘READER`, `WRITER`, `ANY`.

  • :static_members (Array<String>)

    List of DB instance identifiers that are part of the custom endpoint group.

  • :excluded_members (Array<String>)

    List of DB instance identifiers that aren’t part of the custom endpoint group. All other eligible instances are reachable through the custom endpoint. This parameter is relevant only if the list of static members is empty.

  • :tags (Array<Types::Tag>)

    The tags to be assigned to the Amazon RDS resource.

Returns:

See Also:



4049
4050
4051
4052
# File 'lib/aws-sdk-rds/client.rb', line 4049

def create_db_cluster_endpoint(params = {}, options = {})
  req = build_request(:create_db_cluster_endpoint, params)
  req.send_request(options)
end

#create_db_cluster_parameter_group(params = {}) ⇒ Types::CreateDBClusterParameterGroupResult

Creates a new DB cluster parameter group.

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 Aurora DB cluster, reboot the DB instances in the DB cluster without failover for the new DB cluster parameter group and associated settings to take effect.

When you associate a new DB cluster parameter group with a running Multi-AZ DB cluster, reboot 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` operation to verify that your DB cluster parameter group has been created or modified.

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: console.aws.amazon.com/rds/ [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To create a DB cluster parameter group


# The following example creates a DB cluster parameter group.

resp = client.create_db_cluster_parameter_group({
  db_cluster_parameter_group_name: "mydbclusterparametergroup", 
  db_parameter_group_family: "aurora5.6", 
  description: "My new cluster parameter group", 
})

resp.to_h outputs the following:
{
  db_cluster_parameter_group: {
    db_cluster_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:cluster-pg:mydbclusterparametergroup", 
    db_cluster_parameter_group_name: "mydbclusterparametergroup", 
    db_parameter_group_family: "aurora5.6", 
    description: "My new cluster parameter group", 
  }, 
}

Request syntax with placeholder values


resp = client.create_db_cluster_parameter_group({
  db_cluster_parameter_group_name: "String", # required
  db_parameter_group_family: "String", # required
  description: "String", # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_cluster_parameter_group.db_cluster_parameter_group_name #=> String
resp.db_cluster_parameter_group.db_parameter_group_family #=> String
resp.db_cluster_parameter_group.description #=> String
resp.db_cluster_parameter_group.db_cluster_parameter_group_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_parameter_group_name (required, String)

    The name of the DB cluster parameter group.

    Constraints:

    • Must not match the name of an existing DB cluster parameter group.

    ^

    <note markdown=“1”> This value is stored as a lowercase string.

    </note>
    
  • :db_parameter_group_family (required, String)

    The DB cluster parameter group family name. A DB cluster parameter group can be associated with one and only one DB cluster parameter group family, and can be applied only to a DB cluster running a database engine and engine version compatible with that DB cluster parameter group family.

    **Aurora MySQL**

    Example: ‘aurora-mysql5.7`, `aurora-mysql8.0`

    **Aurora PostgreSQL**

    Example: ‘aurora-postgresql14`

    **RDS for MySQL**

    Example: ‘mysql8.0`

    **RDS for PostgreSQL**

    Example: ‘postgres13`

    To list all of the available parameter group families for a DB engine, use the following command:

    ‘aws rds describe-db-engine-versions –query “DBEngineVersions[].DBParameterGroupFamily” –engine <engine>`

    For example, to list all of the available parameter group families for the Aurora PostgreSQL DB engine, use the following command:

    ‘aws rds describe-db-engine-versions –query “DBEngineVersions[].DBParameterGroupFamily” –engine aurora-postgresql`

    <note markdown=“1”> The output contains duplicates.

    </note>
    

    The following are the valid DB engine values:

    • ‘aurora-mysql`

    • ‘aurora-postgresql`

    • ‘mysql`

    • ‘postgres`

  • :description (required, String)

    The description for the DB cluster parameter group.

  • :tags (Array<Types::Tag>)

    Tags to assign to the DB cluster parameter group.

Returns:

See Also:



4220
4221
4222
4223
# File 'lib/aws-sdk-rds/client.rb', line 4220

def create_db_cluster_parameter_group(params = {}, options = {})
  req = build_request(:create_db_cluster_parameter_group, params)
  req.send_request(options)
end

#create_db_cluster_snapshot(params = {}) ⇒ Types::CreateDBClusterSnapshotResult

Creates a snapshot of a DB cluster.

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To create a DB cluster snapshot


# The following example creates a DB cluster snapshot.

resp = client.create_db_cluster_snapshot({
  db_cluster_identifier: "mydbclustersnapshot", 
  db_cluster_snapshot_identifier: "mydbcluster", 
})

resp.to_h outputs the following:
{
  db_cluster_snapshot: {
    allocated_storage: 1, 
    availability_zones: [
      "us-east-1a", 
      "us-east-1b", 
      "us-east-1e", 
    ], 
    cluster_create_time: Time.parse("2019-04-15T14:18:42.785Z"), 
    db_cluster_identifier: "mydbcluster", 
    db_cluster_snapshot_arn: "arn:aws:rds:us-east-1:123456789012:cluster-snapshot:mydbclustersnapshot", 
    db_cluster_snapshot_identifier: "mydbclustersnapshot", 
    engine: "aurora-mysql", 
    engine_version: "5.7.mysql_aurora.2.04.2", 
    iam_database_authentication_enabled: false, 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE", 
    license_model: "aurora-mysql", 
    master_username: "myadmin", 
    percent_progress: 0, 
    port: 0, 
    snapshot_create_time: Time.parse("2019-06-18T21:21:00.469Z"), 
    snapshot_type: "manual", 
    status: "creating", 
    storage_encrypted: true, 
    vpc_id: "vpc-6594f31c", 
  }, 
}

Request syntax with placeholder values


resp = client.create_db_cluster_snapshot({
  db_cluster_snapshot_identifier: "String", # required
  db_cluster_identifier: "String", # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_cluster_snapshot.availability_zones #=> Array
resp.db_cluster_snapshot.availability_zones[0] #=> String
resp.db_cluster_snapshot.db_cluster_snapshot_identifier #=> String
resp.db_cluster_snapshot.db_cluster_identifier #=> String
resp.db_cluster_snapshot.snapshot_create_time #=> Time
resp.db_cluster_snapshot.engine #=> String
resp.db_cluster_snapshot.engine_mode #=> String
resp.db_cluster_snapshot.allocated_storage #=> Integer
resp.db_cluster_snapshot.status #=> String
resp.db_cluster_snapshot.port #=> Integer
resp.db_cluster_snapshot.vpc_id #=> String
resp.db_cluster_snapshot.cluster_create_time #=> Time
resp.db_cluster_snapshot.master_username #=> String
resp.db_cluster_snapshot.engine_version #=> String
resp.db_cluster_snapshot.license_model #=> String
resp.db_cluster_snapshot.snapshot_type #=> String
resp.db_cluster_snapshot.percent_progress #=> Integer
resp.db_cluster_snapshot.storage_encrypted #=> Boolean
resp.db_cluster_snapshot.kms_key_id #=> String
resp.db_cluster_snapshot.db_cluster_snapshot_arn #=> String
resp.db_cluster_snapshot.source_db_cluster_snapshot_arn #=> String
resp.db_cluster_snapshot.iam_database_authentication_enabled #=> Boolean
resp.db_cluster_snapshot.tag_list #=> Array
resp.db_cluster_snapshot.tag_list[0].key #=> String
resp.db_cluster_snapshot.tag_list[0].value #=> String
resp.db_cluster_snapshot.db_system_id #=> String
resp.db_cluster_snapshot.storage_type #=> String
resp.db_cluster_snapshot.db_cluster_resource_id #=> String
resp.db_cluster_snapshot.storage_throughput #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_snapshot_identifier (required, String)

    The identifier of the DB cluster snapshot. This parameter is stored as a lowercase string.

    Constraints:

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

    • First character must be a letter.

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

    Example: ‘my-cluster1-snapshot1`

  • :db_cluster_identifier (required, String)

    The identifier of the DB cluster to create a snapshot for. This parameter isn’t case-sensitive.

    Constraints:

    • Must match the identifier of an existing DBCluster.

    ^

    Example: ‘my-cluster1`

  • :tags (Array<Types::Tag>)

    The tags to be assigned to the DB cluster snapshot.

Returns:

See Also:



4359
4360
4361
4362
# File 'lib/aws-sdk-rds/client.rb', line 4359

def create_db_cluster_snapshot(params = {}, options = {})
  req = build_request(:create_db_cluster_snapshot, params)
  req.send_request(options)
end

#create_db_instance(params = {}) ⇒ Types::CreateDBInstanceResult

Creates a new DB instance.

The new DB instance can be an RDS DB instance, or it can be a DB instance in an Aurora DB cluster. For an Aurora DB cluster, you can call this operation multiple times to add more than one DB instance to the cluster.

For more information about creating an RDS DB instance, see [ Creating an Amazon RDS DB instance] in the *Amazon RDS User Guide*.

For more information about creating a DB instance in an Aurora DB cluster, see [ Creating an Amazon Aurora DB cluster] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html

Examples:

Example: To create a DB instance


# The following example uses the required options to launch a new DB instance.

resp = client.create_db_instance({
  allocated_storage: 20, 
  db_instance_class: "db.t3.micro", 
  db_instance_identifier: "test-mysql-instance", 
  engine: "mysql", 
  master_user_password: "secret99", 
  master_username: "admin", 
})

resp.to_h outputs the following:
{
  db_instance: {
    allocated_storage: 20, 
    associated_roles: [
    ], 
    auto_minor_version_upgrade: true, 
    backup_retention_period: 1, 
    ca_certificate_identifier: "rds-ca-2019", 
    copy_tags_to_snapshot: false, 
    db_instance_arn: "arn:aws:rds:us-west-2:123456789012:db:test-mysql-instance", 
    db_instance_class: "db.t3.micro", 
    db_instance_identifier: "test-mysql-instance", 
    db_instance_status: "creating", 
    db_parameter_groups: [
      {
        db_parameter_group_name: "default.mysql5.7", 
        parameter_apply_status: "in-sync", 
      }, 
    ], 
    db_security_groups: [
    ], 
    db_subnet_group: {
      db_subnet_group_description: "default", 
      db_subnet_group_name: "default", 
      subnet_group_status: "Complete", 
      subnets: [
        {
          subnet_availability_zone: {
            name: "us-west-2c", 
          }, 
          subnet_identifier: "subnet-########", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-west-2d", 
          }, 
          subnet_identifier: "subnet-########", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-west-2a", 
          }, 
          subnet_identifier: "subnet-########", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-west-2b", 
          }, 
          subnet_identifier: "subnet-########", 
          subnet_status: "Active", 
        }, 
      ], 
      vpc_id: "vpc-2ff2ff2f", 
    }, 
    db_instance_port: 0, 
    dbi_resource_id: "db-5555EXAMPLE44444444EXAMPLE", 
    deletion_protection: false, 
    domain_memberships: [
    ], 
    engine: "mysql", 
    engine_version: "5.7.22", 
    iam_database_authentication_enabled: false, 
    license_model: "general-public-license", 
    master_username: "admin", 
    monitoring_interval: 0, 
    multi_az: false, 
    option_group_memberships: [
      {
        option_group_name: "default:mysql-5-7", 
        status: "in-sync", 
      }, 
    ], 
    pending_modified_values: {
      master_user_password: "****", 
    }, 
    performance_insights_enabled: false, 
    preferred_backup_window: "12:55-13:25", 
    preferred_maintenance_window: "sun:08:07-sun:08:37", 
    publicly_accessible: true, 
    read_replica_db_instance_identifiers: [
    ], 
    storage_encrypted: false, 
    storage_type: "gp2", 
    vpc_security_groups: [
      {
        status: "active", 
        vpc_security_group_id: "sg-12345abc", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.create_db_instance({
  db_name: "String",
  db_instance_identifier: "String", # required
  allocated_storage: 1,
  db_instance_class: "String", # required
  engine: "String", # required
  master_username: "String",
  master_user_password: "String",
  db_security_groups: ["String"],
  vpc_security_group_ids: ["String"],
  availability_zone: "String",
  db_subnet_group_name: "String",
  preferred_maintenance_window: "String",
  db_parameter_group_name: "String",
  backup_retention_period: 1,
  preferred_backup_window: "String",
  port: 1,
  multi_az: false,
  engine_version: "String",
  auto_minor_version_upgrade: false,
  license_model: "String",
  iops: 1,
  option_group_name: "String",
  character_set_name: "String",
  nchar_character_set_name: "String",
  publicly_accessible: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  db_cluster_identifier: "String",
  storage_type: "String",
  tde_credential_arn: "String",
  tde_credential_password: "String",
  storage_encrypted: false,
  kms_key_id: "String",
  domain: "String",
  domain_fqdn: "String",
  domain_ou: "String",
  domain_auth_secret_arn: "String",
  domain_dns_ips: ["String"],
  copy_tags_to_snapshot: false,
  monitoring_interval: 1,
  monitoring_role_arn: "String",
  domain_iam_role_name: "String",
  promotion_tier: 1,
  timezone: "String",
  enable_iam_database_authentication: false,
  database_insights_mode: "standard", # accepts standard, advanced
  enable_performance_insights: false,
  performance_insights_kms_key_id: "String",
  performance_insights_retention_period: 1,
  enable_cloudwatch_logs_exports: ["String"],
  processor_features: [
    {
      name: "String",
      value: "String",
    },
  ],
  deletion_protection: false,
  max_allocated_storage: 1,
  enable_customer_owned_ip: false,
  custom_iam_instance_profile: "String",
  backup_target: "String",
  network_type: "String",
  storage_throughput: 1,
  manage_master_user_password: false,
  master_user_secret_kms_key_id: "String",
  ca_certificate_identifier: "String",
  db_system_id: "String",
  dedicated_log_volume: false,
  multi_tenant: false,
  engine_lifecycle_support: "String",
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_name (String)

    The meaning of this parameter differs according to the database engine you use.

    Amazon Aurora MySQL

    : The name of the database to create when the primary DB instance of

    the Aurora MySQL DB cluster is created. If this parameter isn't
    specified for an Aurora MySQL DB cluster, no database is created in
    the DB cluster.
    
    Constraints:
    
    * Must contain 1 to 64 alphanumeric characters.
    
    * Must begin with a letter. Subsequent characters can be letters,
      underscores, or digits (0-9).
    
    * Can't be a word reserved by the database engine.
    

    Amazon Aurora PostgreSQL

    : The name of the database to create when the primary DB instance of

    the Aurora PostgreSQL DB cluster is created. A database named
    `postgres` is always created. If this parameter is specified, an
    additional database with this name is created.
    
    Constraints:
    
    * It must contain 1 to 63 alphanumeric characters.
    
    * Must begin with a letter. Subsequent characters can be letters,
      underscores, or digits (0 to 9).
    
    * Can't be a word reserved by the database engine.
    

    Amazon RDS Custom for Oracle

    : The Oracle System ID (SID) of the created RDS Custom DB instance. If

    you don't specify a value, the default value is `ORCL` for non-CDBs
    and `RDSCDB` for CDBs.
    
    Default: `ORCL`
    
    Constraints:
    
    * Must contain 1 to 8 alphanumeric characters.
    
    * Must contain a letter.
    
    * Can't be a word reserved by the database engine.
    

    Amazon RDS Custom for SQL Server

    : Not applicable. Must be null.

    RDS for Db2

    : The name of the database to create when the DB instance is created.

    If this parameter isn't specified, no database is created in the DB
    instance. In some cases, we recommend that you don't add a database
    name. For more information, see [Additional considerations][1] in
    the *Amazon RDS User Guide*.
    
    Constraints:
    
    * Must contain 1 to 64 letters or numbers.
    
    * Must begin with a letter. Subsequent characters can be letters,
      underscores, or digits (0-9).
    
    * Can't be a word reserved by the specified database engine.
    

    RDS for MariaDB

    : The name of the database to create when the DB instance is created.

    If this parameter isn't specified, no database is created in the DB
    instance.
    
    Constraints:
    
    * Must contain 1 to 64 letters or numbers.
    
    * Must begin with a letter. Subsequent characters can be letters,
      underscores, or digits (0-9).
    
    * Can't be a word reserved by the specified database engine.
    

    RDS for MySQL

    : The name of the database to create when the DB instance is created.

    If this parameter isn't specified, no database is created in the DB
    instance.
    
    Constraints:
    
    * Must contain 1 to 64 letters or numbers.
    
    * Must begin with a letter. Subsequent characters can be letters,
      underscores, or digits (0-9).
    
    * Can't be a word reserved by the specified database engine.
    

    RDS for Oracle

    : The Oracle System ID (SID) of the created DB instance. If you don’t

    specify a value, the default value is `ORCL`. You can't specify the
    string `null`, or any other reserved word, for `DBName`.
    
    Default: `ORCL`
    
    Constraints:
    
    * Can't be longer than 8 characters.
    
    ^
    

    RDS for PostgreSQL

    : The name of the database to create when the DB instance is created.

    A database named `postgres` is always created. If this parameter is
    specified, an additional database with this name is created.
    
    Constraints:
    
    * Must contain 1 to 63 letters, numbers, or underscores.
    
    * Must begin with a letter. Subsequent characters can be letters,
      underscores, or digits (0-9).
    
    * Can't be a word reserved by the specified database engine.
    

    RDS for SQL Server

    : Not applicable. Must be null.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-db-instance-prereqs.html#db2-prereqs-additional-considerations

  • :db_instance_identifier (required, String)

    The identifier for this DB instance. This parameter is stored as a lowercase string.

    Constraints:

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

    • First character must be a letter.

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

    Example: ‘mydbinstance`

  • :allocated_storage (Integer)

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

    This setting doesn’t apply to Amazon Aurora DB instances. Aurora cluster volumes automatically grow as the amount of data in your database increases, though you are only charged for the space that you use in an Aurora cluster volume.

    Amazon RDS Custom

    : Constraints to the amount of storage for each storage type are the

    following:
    
    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from
      40 to 65536 for RDS Custom for Oracle, 16384 for RDS Custom for
      SQL Server.
    
    * Provisioned IOPS storage (io1, io2): Must be an integer from 40 to
      65536 for RDS Custom for Oracle, 16384 for RDS Custom for SQL
      Server.
    

    RDS for Db2

    : Constraints to the amount of storage for each storage type are the

    following:
    
    * General Purpose (SSD) storage (gp3): Must be an integer from 20 to
      65536.
    
    * Provisioned IOPS storage (io1, io2): Must be an integer from 100
      to 65536.
    

    RDS for MariaDB

    : Constraints to the amount of storage for each storage type are the

    following:
    
    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from
      20 to 65536.
    
    * Provisioned IOPS storage (io1, io2): Must be an integer from 100
      to 65536.
    
    * Magnetic storage (standard): Must be an integer from 5 to 3072.
    

    RDS for MySQL

    : Constraints to the amount of storage for each storage type are the

    following:
    
    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from
      20 to 65536.
    
    * Provisioned IOPS storage (io1, io2): Must be an integer from 100
      to 65536.
    
    * Magnetic storage (standard): Must be an integer from 5 to 3072.
    

    RDS for Oracle

    : Constraints to the amount of storage for each storage type are the

    following:
    
    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from
      20 to 65536.
    
    * Provisioned IOPS storage (io1, io2): Must be an integer from 100
      to 65536.
    
    * Magnetic storage (standard): Must be an integer from 10 to 3072.
    

    RDS for PostgreSQL

    : Constraints to the amount of storage for each storage type are the

    following:
    
    * General Purpose (SSD) storage (gp2, gp3): Must be an integer from
      20 to 65536.
    
    * Provisioned IOPS storage (io1, io2): Must be an integer from 100
      to 65536.
    
    * Magnetic storage (standard): Must be an integer from 5 to 3072.
    

    RDS for SQL Server

    : Constraints to the amount of storage for each storage type are the

    following:
    
    * General Purpose (SSD) storage (gp2, gp3):
    
      * Enterprise and Standard editions: Must be an integer from 20 to
        16384.
    
      * Web and Express editions: Must be an integer from 20 to 16384.
    * Provisioned IOPS storage (io1, io2):
    
      * Enterprise and Standard editions: Must be an integer from 100 to
        16384.
    
      * Web and Express editions: Must be an integer from 100 to 16384.
    * Magnetic storage (standard):
    
      * Enterprise and Standard editions: Must be an integer from 20 to
        1024.
    
      * Web and Express editions: Must be an integer from 20 to 1024.
    
  • :db_instance_class (required, String)

    The compute and memory capacity of the DB instance, for example ‘db.m5.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 classes] in the *Amazon RDS User Guide* or [Aurora DB instance classes] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.DBInstanceClass.html

  • :engine (required, String)

    The database engine to use for this DB instance.

    Not every database engine is available in every Amazon Web Services Region.

    Valid Values:

    • ‘aurora-mysql` (for Aurora MySQL DB instances)

    • ‘aurora-postgresql` (for Aurora PostgreSQL DB instances)

    • ‘custom-oracle-ee` (for RDS Custom for Oracle DB instances)

    • ‘custom-oracle-ee-cdb` (for RDS Custom for Oracle DB instances)

    • ‘custom-oracle-se2` (for RDS Custom for Oracle DB instances)

    • ‘custom-oracle-se2-cdb` (for RDS Custom for Oracle DB instances)

    • ‘custom-sqlserver-ee` (for RDS Custom for SQL Server DB instances)

    • ‘custom-sqlserver-se` (for RDS Custom for SQL Server DB instances)

    • ‘custom-sqlserver-web` (for RDS Custom for SQL Server DB instances)

    • ‘custom-sqlserver-dev` (for RDS Custom for SQL Server DB instances)

    • ‘db2-ae`

    • ‘db2-se`

    • ‘mariadb`

    • ‘mysql`

    • ‘oracle-ee`

    • ‘oracle-ee-cdb`

    • ‘oracle-se2`

    • ‘oracle-se2-cdb`

    • ‘postgres`

    • ‘sqlserver-ee`

    • ‘sqlserver-se`

    • ‘sqlserver-ex`

    • ‘sqlserver-web`

  • :master_username (String)

    The name for the master user.

    This setting doesn’t apply to Amazon Aurora DB instances. The name for the master user is managed by the DB cluster.

    This setting is required for RDS DB instances.

    Constraints:

    • Must be 1 to 16 letters, numbers, or underscores.

    • First character must be a letter.

    • Can’t be a reserved word for the chosen database engine.

  • :master_user_password (String)

    The password for the master user.

    This setting doesn’t apply to Amazon Aurora DB instances. The password for the master user is managed by the DB cluster.

    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 ”&amp;“ (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.

  • :db_security_groups (Array<String>)

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

    This setting applies to the legacy EC2-Classic platform, which is no longer used to create new DB instances. Use the ‘VpcSecurityGroupIds` setting instead.

  • :vpc_security_group_ids (Array<String>)

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

    This setting doesn’t apply to Amazon Aurora DB instances. The associated list of EC2 VPC security groups is managed by the DB cluster.

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

  • :availability_zone (String)

    The Availability Zone (AZ) where the database will be created. For information on Amazon Web Services Regions and Availability Zones, see [Regions and Availability Zones].

    For Amazon Aurora, each Aurora DB cluster hosts copies of its storage in three separate Availability Zones. Specify one of these Availability Zones. Aurora automatically chooses an appropriate Availability Zone if you don’t specify one.

    Default: A random, system-chosen Availability Zone in the endpoint’s Amazon Web Services Region.

    Constraints:

    • The ‘AvailabilityZone` parameter can’t be specified if the DB instance is a Multi-AZ deployment.

    • The specified Availability Zone must be in the same Amazon Web Services Region as the current endpoint.

    Example: ‘us-east-1d`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html

  • :db_subnet_group_name (String)

    A DB subnet group to associate with this DB instance.

    Constraints:

    • Must match the name of an existing DB subnet group.

    ^

    Example: ‘mydbsubnetgroup`

  • :preferred_maintenance_window (String)

    The time range each week during which system maintenance can occur. For more information, see [Amazon RDS Maintenance Window] in the *Amazon RDS User Guide.*

    The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week.

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Maintenance.html#Concepts.DBMaintenance

  • :db_parameter_group_name (String)

    The name of the DB parameter group to associate with this DB instance. If you don’t specify a value, then Amazon RDS uses the default DB parameter group for the specified DB engine and version.

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

    Constraints:

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

    • The first character must be a letter.

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

  • :backup_retention_period (Integer)

    The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to ‘0` disables automated backups.

    This setting doesn’t apply to Amazon Aurora DB instances. The retention period for automated backups is managed by the DB cluster.

    Default: ‘1`

    Constraints:

    • Must be a value from 0 to 35.

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

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

  • :preferred_backup_window (String)

    The daily time range during which automated backups are created if automated backups are enabled, using the ‘BackupRetentionPeriod` parameter. 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.

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html#USER_WorkingWithAutomatedBackups.BackupWindow

  • :port (Integer)

    The port number on which the database accepts connections.

    This setting doesn’t apply to Aurora DB instances. The port number is managed by the cluster.

    Valid Values: ‘1150-65535`

    Default:

    • 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`.

    ^

  • :multi_az (Boolean)

    Specifies whether the DB instance is a Multi-AZ deployment. You can’t set the ‘AvailabilityZone` parameter if the DB instance is a Multi-AZ deployment.

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

    • Amazon Aurora (DB instance Availability Zones (AZs) are managed by the DB cluster.)

    • RDS Custom

  • :engine_version (String)

    The version number of the database engine to use.

    This setting doesn’t apply to Amazon Aurora DB instances. The version number of the database engine the DB instance uses is managed by the DB cluster.

    For a list of valid engine versions, use the ‘DescribeDBEngineVersions` operation.

    The following are the database engines and links to information about the major and minor versions that are available with Amazon RDS. Not every database engine is available for every Amazon Web Services Region.

    Amazon RDS Custom for Oracle

    : A custom engine version (CEV) that you have previously created. This

    setting is required for RDS Custom for Oracle. The CEV name has the
    following format: 19.*customized\_string*. A valid CEV name is
    `19.my_cev1`. For more information, see [ Creating an RDS Custom for
    Oracle DB instance][1] in the *Amazon RDS User Guide*.
    

    Amazon RDS Custom for SQL Server

    : See [RDS Custom for SQL Server general requirements] in the

    *Amazon RDS User Guide*.
    

    RDS for Db2

    : For information, see [Db2 on Amazon RDS versions] in the *Amazon

    RDS User Guide*.
    

    RDS for MariaDB

    : For information, see [MariaDB on Amazon RDS versions] in the

    *Amazon RDS User Guide*.
    

    RDS for Microsoft SQL Server

    : For information, see [Microsoft SQL Server versions on Amazon

    RDS][5] in the *Amazon RDS User Guide*.
    

    RDS for MySQL

    : For information, see [MySQL on Amazon RDS versions] in the

    *Amazon RDS User Guide*.
    

    RDS for Oracle

    : For information, see [Oracle Database Engine release notes] in

    the *Amazon RDS User Guide*.
    

    RDS for PostgreSQL

    : For information, see [Amazon RDS for PostgreSQL versions and

    extensions][8] in the *Amazon RDS User Guide*.
    

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-creating.html#custom-creating.create [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-reqs-limits-MS.html [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Db2.html#Db2.Concepts.VersionMgmt [4]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MariaDB.html#MariaDB.Concepts.VersionMgmt [5]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.VersionSupport [6]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html#MySQL.Concepts.VersionMgmt [7]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.Oracle.PatchComposition.html [8]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts

  • :auto_minor_version_upgrade (Boolean)

    Specifies whether minor engine upgrades are applied automatically to the DB instance during the maintenance window. By default, minor engine upgrades are applied automatically.

    If you create an RDS Custom DB instance, you must set ‘AutoMinorVersionUpgrade` to `false`.

  • :license_model (String)

    The license model information for this DB instance.

    <note markdown=“1”> License models for RDS for Db2 require additional configuration. The Bring Your Own License (BYOL) model requires a custom parameter group and an Amazon Web Services License Manager self-managed license. The Db2 license through Amazon Web Services Marketplace model requires an Amazon Web Services Marketplace subscription. For more information, see [Amazon RDS for Db2 licensing options] in the *Amazon RDS User Guide*.

    The default for RDS for Db2 is `bring-your-own-license`.
    
    </note>
    

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

    Valid Values:

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

    • RDS for MariaDB - ‘general-public-license`

    • RDS for Microsoft SQL Server - ‘license-included`

    • RDS for MySQL - ‘general-public-license`

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

    • RDS for PostgreSQL - ‘postgresql-license`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-licensing.html

  • :iops (Integer)

    The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB instance. For information about valid IOPS values, see [Amazon RDS DB instance storage] in the *Amazon RDS User Guide*.

    This setting doesn’t apply to Amazon Aurora DB instances. Storage is managed by the DB cluster.

    Constraints:

    • For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the storage amount for the DB instance.

    • For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html

  • :option_group_name (String)

    The option group to associate the DB instance with.

    Permanent options, such as the TDE option for Oracle Advanced Security TDE, can’t be removed from an option group. Also, 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 Amazon Aurora or RDS Custom DB instances.

  • :character_set_name (String)

    For supported engines, the character set (‘CharacterSet`) to associate the DB instance with.

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

    • Amazon Aurora - The character set is managed by the DB cluster. For more information, see ‘CreateDBCluster`.

    • RDS Custom - However, if you need to change the character set, you can change it on the database itself.

  • :nchar_character_set_name (String)

    The name of the NCHAR character set for the Oracle DB instance.

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

  • :publicly_accessible (Boolean)

    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 is not permitted if the security group assigned to the DB instance doesn’t permit it.

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

    Default: The default behavior varies depending on whether ‘DBSubnetGroupName` is specified.

    If ‘DBSubnetGroupName` isn’t specified, and ‘PubliclyAccessible` isn’t specified, the following applies:

    • If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB instance is private.

    • If the default VPC in the target Region has an internet gateway attached to it, the DB instance is public.

    If ‘DBSubnetGroupName` is specified, and `PubliclyAccessible` isn’t specified, the following applies:

    • If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB instance is private.

    • If the subnets are part of a VPC that has an internet gateway attached to it, the DB instance is public.

  • :tags (Array<Types::Tag>)

    Tags to assign to the DB instance.

  • :db_cluster_identifier (String)

    The identifier of the DB cluster that this DB instance will belong to.

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

  • :storage_type (String)

    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.

    This setting doesn’t apply to Amazon Aurora DB instances. Storage is managed by the DB cluster.

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

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

  • :tde_credential_arn (String)

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

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

  • :tde_credential_password (String)

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

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

  • :storage_encrypted (Boolean)

    Specifes whether the DB instance is encrypted. By default, it isn’t encrypted.

    For RDS Custom DB instances, either enable this setting or leave it unset. Otherwise, Amazon RDS reports an error.

    This setting doesn’t apply to Amazon Aurora DB instances. The encryption for DB instances is managed by the DB cluster.

  • :kms_key_id (String)

    The Amazon Web Services KMS key identifier for an encrypted DB instance.

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

    This setting doesn’t apply to Amazon Aurora DB instances. The Amazon Web Services KMS key identifier is managed by the DB cluster. For more information, see ‘CreateDBCluster`.

    If ‘StorageEncrypted` is enabled, and you do not specify a value for the `KmsKeyId` parameter, 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.

    For Amazon RDS Custom, a KMS key is required for DB instances. For most RDS engines, if you leave this parameter empty while enabling ‘StorageEncrypted`, the engine uses the default KMS key. However, RDS Custom doesn’t use the default key when this parameter is empty. You must explicitly specify a key.

  • :domain (String)

    The Active Directory directory ID to create the DB instance in. 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 the following DB instances:

    • Amazon Aurora (The domain is managed by the DB cluster.)

    • RDS Custom

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html

  • :domain_fqdn (String)

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

    Constraints:

    • Can’t be longer than 64 characters.

    ^

    Example: ‘mymanagedADtest.mymanagedAD.mydomain`

  • :domain_ou (String)

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

    Constraints:

    • Must be in the distinguished name format.

    • Can’t be longer than 64 characters.

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

  • :domain_auth_secret_arn (String)

    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 (Array<String>)

    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`

  • :copy_tags_to_snapshot (Boolean)

    Specifies whether to copy tags from the DB instance to snapshots of the DB instance. By default, tags are not 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.

  • :monitoring_interval (Integer)

    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, then you must 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 (String)

    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 [Setting Up and Enabling Enhanced Monitoring] in the *Amazon RDS User Guide*.

    If ‘MonitoringInterval` is set to a value other than `0`, then you must supply a `MonitoringRoleArn` value.

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html#USER_Monitoring.OS.Enabling

  • :domain_iam_role_name (String)

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

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

    • Amazon Aurora (The domain is managed by the DB cluster.)

    • RDS Custom

  • :promotion_tier (Integer)

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

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

    Default: ‘1`

    Valid Values: ‘0 - 15`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.AuroraHighAvailability.html#Aurora.Managing.FaultTolerance

  • :timezone (String)

    The time zone of the DB instance. The time zone parameter is currently supported only by [RDS for Db2] and [RDS for SQL Server].

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-time-zone [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.TimeZone

  • :enable_iam_database_authentication (Boolean)

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

    For more information, see [ IAM Database Authentication for MySQL and PostgreSQL] in the *Amazon RDS User Guide*.

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

    • Amazon Aurora (Mapping Amazon Web Services IAM accounts to database accounts is managed by the DB cluster.)

    • RDS Custom

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html

  • :database_insights_mode (String)

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

    This setting only applies to Amazon Aurora DB instances.

    <note markdown=“1”> Currently, this value is inherited from the DB cluster and can’t be changed.

    </note>
    
  • :enable_performance_insights (Boolean)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html

  • :performance_insights_kms_key_id (String)

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

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

    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 (Integer)

    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.

  • :enable_cloudwatch_logs_exports (Array<String>)

    The list of log types to enable for exporting to CloudWatch Logs. For more information, see [ Publishing Database Logs to Amazon CloudWatch Logs] in the *Amazon RDS User Guide*.

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

    • Amazon Aurora (CloudWatch Logs exports are managed by the DB cluster.)

    • RDS Custom

    The following values are valid for each DB engine:

    • RDS for Db2 - ‘diag.log | notify.log`

    • RDS for MariaDB - ‘audit | error | general | slowquery`

    • RDS for Microsoft SQL Server - ‘agent | error`

    • RDS for MySQL - ‘audit | error | general | slowquery`

    • RDS for Oracle - ‘alert | audit | listener | trace | oemagent`

    • RDS for PostgreSQL - ‘postgresql | upgrade`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :processor_features (Array<Types::ProcessorFeature>)

    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 Amazon Aurora or RDS Custom DB instances.

  • :deletion_protection (Boolean)

    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 ‘CreateDBCluster`. DB instances in a DB cluster can be deleted even when deletion protection is enabled for the DB cluster.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html

  • :max_allocated_storage (Integer)

    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 the following DB instances:

    • Amazon Aurora (Storage is managed by the DB cluster.)

    • RDS Custom

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.Autoscaling

  • :enable_customer_owned_ip (Boolean)

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

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html [2]: docs.aws.amazon.com/outposts/latest/userguide/routing.html#ip-addressing

  • :custom_iam_instance_profile (String)

    The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.

    This setting is required for RDS Custom.

    Constraints:

    • The profile must exist in your account.

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

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-setup-orcl.html#custom-setup-orcl.iam-vpc

  • :backup_target (String)

    The location for storing automated backups and manual snapshots.

    Valid Values:

    • ‘outposts` (Amazon Web Services Outposts)

    • ‘region` (Amazon Web Services Region)

    Default: ‘region`

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html

  • :network_type (String)

    The network type of the DB instance.

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

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

    Valid Values: ‘IPV4 | DUAL`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :storage_throughput (Integer)

    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.

  • :manage_master_user_password (Boolean)

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

    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.

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html

  • :master_user_secret_kms_key_id (String)

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

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

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

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

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

  • :ca_certificate_identifier (String)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL.html

  • :db_system_id (String)

    The Oracle system identifier (SID), which is the name of the Oracle database instance that manages your database files. In this context, the term “Oracle database instance” refers exclusively to the system global area (SGA) and Oracle background processes. If you don’t specify a SID, the value defaults to ‘RDSCDB`. The Oracle SID is also the name of your CDB.

  • :dedicated_log_volume (Boolean)

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

  • :multi_tenant (Boolean)

    Specifies whether to use the multi-tenant configuration or the single-tenant configuration (default). This parameter only applies to RDS for Oracle container database (CDB) engines.

    Note the following restrictions:

    • The DB engine that you specify in the request must support the multi-tenant configuration. If you attempt to enable the multi-tenant configuration on a DB engine that doesn’t support it, the request fails.

    • If you specify the multi-tenant configuration when you create your DB instance, you can’t later modify this DB instance to use the single-tenant configuration.

  • :engine_lifecycle_support (String)

    The life cycle type for this DB instance.

    <note markdown=“1”> By default, this value is set to ‘open-source-rds-extended-support`, which enrolls your DB instance into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to `open-source-rds-extended-support-disabled`. In this case, creating the DB instance will fail if the DB major version is past its end of standard support date.

    </note>
    

    This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the life cycle type is managed by the DB cluster.

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

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

    Default: ‘open-source-rds-extended-support`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html

Returns:

See Also:



6052
6053
6054
6055
# File 'lib/aws-sdk-rds/client.rb', line 6052

def create_db_instance(params = {}, options = {})
  req = build_request(:create_db_instance, params)
  req.send_request(options)
end

#create_db_instance_read_replica(params = {}) ⇒ Types::CreateDBInstanceReadReplicaResult

Creates a new DB instance that acts as a read replica for an existing source DB instance or Multi-AZ DB cluster. You can create a read replica for a DB instance running Db2, MariaDB, MySQL, Oracle, PostgreSQL, or SQL Server. You can create a read replica for a Multi-AZ DB cluster running MySQL or PostgreSQL. For more information, see [Working with read replicas] and [Migrating from a Multi-AZ DB cluster to a DB instance using a read replica] in the *Amazon RDS User Guide*.

Amazon Aurora doesn’t support this operation. To create a DB instance for an Aurora DB cluster, use the ‘CreateDBInstance` operation.

All read replica DB instances are created with backups disabled. All other attributes (including DB security groups and DB parameter groups) are inherited from the source DB instance or cluster, except as specified.

Your source DB instance or cluster must have backup retention enabled.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html#multi-az-db-clusters-migrating-to-instance-with-read-replica

Examples:

Example: To create a DB instance read replica


# This example creates a read replica of an existing DB instance named test-instance. The read replica is named
# test-instance-repl.

resp = client.create_db_instance_read_replica({
  db_instance_identifier: "test-instance-repl", 
  source_db_instance_identifier: "test-instance", 
})

resp.to_h outputs the following:
{
  db_instance: {
    db_instance_arn: "arn:aws:rds:us-east-1:123456789012:db:test-instance-repl", 
    db_instance_identifier: "test-instance-repl", 
    iam_database_authentication_enabled: false, 
    monitoring_interval: 0, 
    read_replica_source_db_instance_identifier: "test-instance", 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.create_db_instance_read_replica({
  db_instance_identifier: "String", # required
  source_db_instance_identifier: "String",
  db_instance_class: "String",
  availability_zone: "String",
  port: 1,
  multi_az: false,
  auto_minor_version_upgrade: false,
  iops: 1,
  option_group_name: "String",
  db_parameter_group_name: "String",
  publicly_accessible: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  db_subnet_group_name: "String",
  vpc_security_group_ids: ["String"],
  storage_type: "String",
  copy_tags_to_snapshot: false,
  monitoring_interval: 1,
  monitoring_role_arn: "String",
  kms_key_id: "String",
  pre_signed_url: "String",
  enable_iam_database_authentication: false,
  database_insights_mode: "standard", # accepts standard, advanced
  enable_performance_insights: false,
  performance_insights_kms_key_id: "String",
  performance_insights_retention_period: 1,
  enable_cloudwatch_logs_exports: ["String"],
  processor_features: [
    {
      name: "String",
      value: "String",
    },
  ],
  use_default_processor_features: false,
  deletion_protection: false,
  domain: "String",
  domain_iam_role_name: "String",
  domain_fqdn: "String",
  domain_ou: "String",
  domain_auth_secret_arn: "String",
  domain_dns_ips: ["String"],
  replica_mode: "open-read-only", # accepts open-read-only, mounted
  max_allocated_storage: 1,
  custom_iam_instance_profile: "String",
  network_type: "String",
  storage_throughput: 1,
  enable_customer_owned_ip: false,
  allocated_storage: 1,
  source_db_cluster_identifier: "String",
  dedicated_log_volume: false,
  upgrade_storage_config: false,
  ca_certificate_identifier: "String",
  source_region: "String",
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The DB instance identifier of the read replica. This identifier is the unique key that identifies a DB instance. This parameter is stored as a lowercase string.

  • :source_db_instance_identifier (String)

    The identifier of the DB instance that will act as the source for the read replica. Each DB instance can have up to 15 read replicas, with the exception of Oracle and SQL Server, which can have up to five.

    Constraints:

    • Must be the identifier of an existing Db2, MariaDB, MySQL, Oracle, PostgreSQL, or SQL Server DB instance.

    • Can’t be specified if the ‘SourceDBClusterIdentifier` parameter is also specified.

    • For the limitations of Oracle read replicas, see [Version and licensing considerations for RDS for Oracle replicas] in the *Amazon RDS User Guide*.

    • For the limitations of SQL Server read replicas, see [Read replica limitations with SQL Server] in the *Amazon RDS User Guide*.

    • The specified DB instance must have automatic backups enabled, that is, its backup retention period must be greater than 0.

    • If the source DB instance is in the same Amazon Web Services Region as the read replica, specify a valid DB instance identifier.

    • If the source DB instance is in a different Amazon Web Services Region from the read replica, specify a valid DB instance ARN. For more information, see [Constructing an ARN for Amazon RDS] in the *Amazon RDS User Guide*. This doesn’t apply to SQL Server or RDS Custom, which don’t support cross-Region replicas.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-replicas.limitations.html#oracle-read-replicas.limitations.versions-and-licenses [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/SQLServer.ReadReplicas.html#SQLServer.ReadReplicas.Limitations [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing

  • :db_instance_class (String)

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

    Default: Inherits the value from the source DB instance.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html

  • :availability_zone (String)

    The Availability Zone (AZ) where the read replica will be created.

    Default: A random, system-chosen Availability Zone in the endpoint’s Amazon Web Services Region.

    Example: ‘us-east-1d`

  • :port (Integer)

    The port number that the DB instance uses for connections.

    Valid Values: ‘1150-65535`

    Default: Inherits the value from the source DB instance.

  • :multi_az (Boolean)

    Specifies whether the read replica is in a Multi-AZ deployment.

    You can create a read replica as a Multi-AZ DB instance. RDS creates a standby of your replica in another Availability Zone for failover support for the replica. Creating your read replica as a Multi-AZ DB instance is independent of whether the source is a Multi-AZ DB instance or a Multi-AZ DB cluster.

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

  • :auto_minor_version_upgrade (Boolean)

    Specifies whether to automatically apply minor engine upgrades to the read replica during the maintenance window.

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

    Default: Inherits the value from the source DB instance.

  • :iops (Integer)

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

  • :option_group_name (String)

    The option group to associate the DB instance with. If not specified, RDS uses the option group associated with the source DB instance or cluster.

    <note markdown=“1”> For SQL Server, you must use the option group associated with the source.

    </note>
    

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

  • :db_parameter_group_name (String)

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

    For Single-AZ or Multi-AZ DB instance read replica instances, if you don’t specify a value for ‘DBParameterGroupName`, then Amazon RDS uses the `DBParameterGroup` of the source DB instance for a same Region read replica, or the default `DBParameterGroup` for the specified DB engine for a cross-Region read replica.

    For Multi-AZ DB cluster same Region read replica instances, if you don’t specify a value for ‘DBParameterGroupName`, then Amazon RDS uses the default `DBParameterGroup`.

    Specifying a parameter group for this operation is only supported for MySQL DB instances for cross-Region read replicas, for Multi-AZ DB cluster read replica instances, and for Oracle DB instances. It isn’t supported for MySQL DB instances for same Region read replicas or for RDS Custom.

    Constraints:

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

    • First character must be a letter.

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

  • :publicly_accessible (Boolean)

    Specifies whether the DB instance is publicly accessible.

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

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

    For more information, see CreateDBInstance.

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

  • :db_subnet_group_name (String)

    A DB subnet group for the DB instance. The new DB instance is created in the VPC associated with the DB subnet group. If no DB subnet group is specified, then the new DB instance isn’t created in a VPC.

    Constraints:

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

    • The specified DB subnet group must be in the same Amazon Web Services Region in which the operation is running.

    • All read replicas in one Amazon Web Services Region that are created from the same source DB instance must either:

      • Specify DB subnet groups from the same VPC. All these read replicas are created in the same VPC.

      • Not specify a DB subnet group. All these read replicas are created outside of any VPC.

    Example: ‘mydbsubnetgroup`

  • :vpc_security_group_ids (Array<String>)

    A list of Amazon EC2 VPC security groups to associate with the read replica.

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

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

  • :storage_type (String)

    The storage type to associate with the read replica.

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

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

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

  • :copy_tags_to_snapshot (Boolean)

    Specifies whether to copy all tags from the read replica to snapshots of the read replica. By default, tags aren’t copied.

  • :monitoring_interval (Integer)

    The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the read replica. To disable collection of Enhanced Monitoring metrics, specify ‘0`. The default is `0`.

    If ‘MonitoringRoleArn` is specified, then you must 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 (String)

    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, go to [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, then you must supply a `MonitoringRoleArn` value.

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html#USER_Monitoring.OS.IAMRole

  • :kms_key_id (String)

    The Amazon Web Services KMS key identifier for an encrypted read replica.

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

    If you create an encrypted read replica in the same Amazon Web Services Region as the source DB instance or Multi-AZ DB cluster, don’t specify a value for this parameter. A read replica in the same Amazon Web Services Region is always encrypted with the same KMS key as the source DB instance or cluster.

    If you create an encrypted read replica in a different Amazon Web Services Region, then you must specify a KMS key identifier for the destination Amazon Web Services Region. KMS keys are specific to the Amazon Web Services Region that they are created in, and you can’t use KMS keys from one Amazon Web Services Region in another Amazon Web Services Region.

    You can’t create an encrypted read replica from an unencrypted DB instance or Multi-AZ DB cluster.

    This setting doesn’t apply to RDS Custom, which uses the same KMS key as the primary replica.

  • :pre_signed_url (String)

    When you are creating a read replica from one Amazon Web Services GovCloud (US) Region to another or from one China Amazon Web Services Region to another, the URL that contains a Signature Version 4 signed request for the ‘CreateDBInstanceReadReplica` API operation in the source Amazon Web Services Region that contains the source DB instance.

    This setting applies only to Amazon Web Services GovCloud (US) Regions and China Amazon Web Services Regions. It’s ignored in other Amazon Web Services Regions.

    This setting applies only when replicating from a source DB instance. Source DB clusters aren’t supported in Amazon Web Services GovCloud (US) Regions and China Amazon Web Services Regions.

    You must specify this parameter when you create an encrypted read replica from another Amazon Web Services Region by using the Amazon RDS API. Don’t specify ‘PreSignedUrl` when you are creating an encrypted read replica in the same Amazon Web Services Region.

    The presigned URL must be a valid request for the ‘CreateDBInstanceReadReplica` API operation that can run in the source Amazon Web Services Region that contains the encrypted source DB instance. The presigned URL request must contain the following parameter values:

    • ‘DestinationRegion` - The Amazon Web Services Region that the encrypted read replica is created in. This Amazon Web Services Region is the same one where the `CreateDBInstanceReadReplica` operation is called that contains this presigned URL.

      For example, if you create an encrypted DB instance in the us-west-1 Amazon Web Services Region, from a source DB instance in the us-east-2 Amazon Web Services Region, then you call the ‘CreateDBInstanceReadReplica` operation in the us-east-1 Amazon Web Services Region and provide a presigned URL that contains a call to the `CreateDBInstanceReadReplica` operation in the us-west-2 Amazon Web Services Region. For this example, the `DestinationRegion` in the presigned URL must be set to the us-east-1 Amazon Web Services Region.

    • ‘KmsKeyId` - The KMS key identifier for the key to use to encrypt the read replica in the destination Amazon Web Services Region. This is the same identifier for both the `CreateDBInstanceReadReplica` operation that is called in the destination Amazon Web Services Region, and the operation contained in the presigned URL.

    • ‘SourceDBInstanceIdentifier` - The DB instance identifier for the encrypted DB instance to be replicated. This identifier must be in the Amazon Resource Name (ARN) format for the source Amazon Web Services Region. For example, if you are creating an encrypted read replica from a DB instance in the us-west-2 Amazon Web Services Region, then your `SourceDBInstanceIdentifier` looks like the following example: `arn:aws:rds:us-west-2:123456789012:instance:mysql-instance1-20161115`.

    To learn how to generate a Signature Version 4 signed request, see [Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4)] and [Signature Version 4 Signing Process].

    <note markdown=“1”> If you are using an Amazon Web Services SDK tool or the CLI, you can specify ‘SourceRegion` (or `–source-region` for the CLI) instead of specifying `PreSignedUrl` manually. Specifying `SourceRegion` autogenerates a presigned URL that is a valid request for the operation that can run in the source Amazon Web Services Region.

    </note>
    

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

    [1]: docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html [2]: docs.aws.amazon.com/general/latest/gr/signature-version-4.html

  • :enable_iam_database_authentication (Boolean)

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

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html

  • :database_insights_mode (String)

    The mode of Database Insights to enable for the read replica.

    <note markdown=“1”> Currently, this setting is not supported.

    </note>
    
  • :enable_performance_insights (Boolean)

    Specifies whether to enable Performance Insights for the read replica.

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html

  • :performance_insights_kms_key_id (String)

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

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

    If you do not 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 (Integer)

    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.

  • :enable_cloudwatch_logs_exports (Array<String>)

    The list of logs that the new DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see [Publishing Database Logs to Amazon CloudWatch Logs ][1] in the *Amazon RDS User Guide*.

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :processor_features (Array<Types::ProcessorFeature>)

    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.

  • :use_default_processor_features (Boolean)

    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.

  • :deletion_protection (Boolean)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html

  • :domain (String)

    The Active Directory directory ID to create the DB instance in. Currently, only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances can be created 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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html

  • :domain_iam_role_name (String)

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

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

  • :domain_fqdn (String)

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

    Constraints:

    • Can’t be longer than 64 characters.

    ^

    Example: ‘mymanagedADtest.mymanagedAD.mydomain`

  • :domain_ou (String)

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

    Constraints:

    • Must be in the distinguished name format.

    • Can’t be longer than 64 characters.

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

  • :domain_auth_secret_arn (String)

    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 (Array<String>)

    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`

  • :replica_mode (String)

    The open mode of the replica database: mounted or read-only.

    <note markdown=“1”> This parameter is only supported for Oracle DB instances.

    </note>
    

    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 Oracle Read Replicas for Amazon RDS] 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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-replicas.html

  • :max_allocated_storage (Integer)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.Autoscaling

  • :custom_iam_instance_profile (String)

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

    • The profile must exist in your account.

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

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

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

    This setting is required for RDS Custom DB instances.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-setup-orcl.html#custom-setup-orcl.iam-vpc

  • :network_type (String)

    The network type of the DB instance.

    Valid Values:

    • ‘IPV4`

    • ‘DUAL`

    The network type is determined by the ‘DBSubnetGroup` specified for read replica. 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.*

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :storage_throughput (Integer)

    Specifies the storage throughput value for the read replica.

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

  • :enable_customer_owned_ip (Boolean)

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

    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 read replica 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*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html [2]: docs.aws.amazon.com/outposts/latest/userguide/routing.html#ip-addressing

  • :allocated_storage (Integer)

    The amount of storage (in gibibytes) to allocate initially for the read replica. Follow the allocation rules specified in ‘CreateDBInstance`.

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

    <note markdown=“1”> Be sure to allocate enough storage for your read replica so that the create operation can succeed. You can also allocate additional storage for future growth.

    </note>
    
  • :source_db_cluster_identifier (String)

    The identifier of the Multi-AZ DB cluster that will act as the source for the read replica. Each DB cluster can have up to 15 read replicas.

    Constraints:

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

    • Can’t be specified if the ‘SourceDBInstanceIdentifier` parameter is also specified.

    • The specified DB cluster must have automatic backups enabled, that is, its backup retention period must be greater than 0.

    • The source DB cluster must be in the same Amazon Web Services Region as the read replica. Cross-Region replication isn’t supported.

  • :dedicated_log_volume (Boolean)

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

  • :upgrade_storage_config (Boolean)

    Whether to upgrade the storage file system configuration on the read replica. This option migrates the read replica from the old storage file system layout to the preferred layout.

  • :ca_certificate_identifier (String)

    The CA certificate identifier to use for the read replica’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*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL.html

  • :source_region (String)

    The source region of the snapshot. This is only needed when the shapshot is encrypted and in a different region.

Returns:

See Also:



7011
7012
7013
7014
# File 'lib/aws-sdk-rds/client.rb', line 7011

def create_db_instance_read_replica(params = {}, options = {})
  req = build_request(:create_db_instance_read_replica, params)
  req.send_request(options)
end

#create_db_parameter_group(params = {}) ⇒ Types::CreateDBParameterGroupResult

Creates a new DB parameter group.

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.

This command doesn’t apply to RDS Custom.

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.

[1]: console.aws.amazon.com/rds/

Examples:

Example: To create a DB parameter group


# The following example creates a DB parameter group.

resp = client.create_db_parameter_group({
  db_parameter_group_family: "MySQL8.0", 
  db_parameter_group_name: "mydbparametergroup", 
  description: "My new parameter group", 
})

resp.to_h outputs the following:
{
  db_parameter_group: {
    db_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:pg:mydbparametergroup", 
    db_parameter_group_family: "mysql8.0", 
    db_parameter_group_name: "mydbparametergroup", 
    description: "My new parameter group", 
  }, 
}

Request syntax with placeholder values


resp = client.create_db_parameter_group({
  db_parameter_group_name: "String", # required
  db_parameter_group_family: "String", # required
  description: "String", # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_parameter_group.db_parameter_group_name #=> String
resp.db_parameter_group.db_parameter_group_family #=> String
resp.db_parameter_group.description #=> String
resp.db_parameter_group.db_parameter_group_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_parameter_group_name (required, String)

    The name of the DB parameter group.

    Constraints:

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

    • First character must be a letter

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

    <note markdown=“1”> This value is stored as a lowercase string.

    </note>
    
  • :db_parameter_group_family (required, String)

    The DB parameter group family name. A DB parameter group can be associated with one and only one DB parameter group family, and can be applied only to a DB instance running a database engine and engine version compatible with that DB parameter group family.

    To list all of the available parameter group families for a DB engine, use the following command:

    ‘aws rds describe-db-engine-versions –query “DBEngineVersions[].DBParameterGroupFamily” –engine <engine>`

    For example, to list all of the available parameter group families for the MySQL DB engine, use the following command:

    ‘aws rds describe-db-engine-versions –query “DBEngineVersions[].DBParameterGroupFamily” –engine mysql`

    <note markdown=“1”> The output contains duplicates.

    </note>
    

    The following are the valid DB engine values:

    • ‘aurora-mysql`

    • ‘aurora-postgresql`

    • ‘db2-ae`

    • ‘db2-se`

    • ‘mysql`

    • ‘oracle-ee`

    • ‘oracle-ee-cdb`

    • ‘oracle-se2`

    • ‘oracle-se2-cdb`

    • ‘postgres`

    • ‘sqlserver-ee`

    • ‘sqlserver-se`

    • ‘sqlserver-ex`

    • ‘sqlserver-web`

  • :description (required, String)

    The description for the DB parameter group.

  • :tags (Array<Types::Tag>)

    Tags to assign to the DB parameter group.

Returns:

See Also:



7169
7170
7171
7172
# File 'lib/aws-sdk-rds/client.rb', line 7169

def create_db_parameter_group(params = {}, options = {})
  req = build_request(:create_db_parameter_group, params)
  req.send_request(options)
end

#create_db_proxy(params = {}) ⇒ Types::CreateDBProxyResponse

Creates a new DB proxy.

Examples:

Request syntax with placeholder values


resp = client.create_db_proxy({
  db_proxy_name: "String", # required
  engine_family: "MYSQL", # required, accepts MYSQL, POSTGRESQL, SQLSERVER
  auth: [ # required
    {
      description: "String",
      user_name: "String",
      auth_scheme: "SECRETS", # accepts SECRETS
      secret_arn: "String",
      iam_auth: "DISABLED", # accepts DISABLED, REQUIRED, ENABLED
      client_password_auth_type: "MYSQL_NATIVE_PASSWORD", # accepts MYSQL_NATIVE_PASSWORD, MYSQL_CACHING_SHA2_PASSWORD, POSTGRES_SCRAM_SHA_256, POSTGRES_MD5, SQL_SERVER_AUTHENTICATION
    },
  ],
  role_arn: "String", # required
  vpc_subnet_ids: ["String"], # required
  vpc_security_group_ids: ["String"],
  require_tls: false,
  idle_client_timeout: 1,
  debug_logging: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_proxy.db_proxy_name #=> String
resp.db_proxy.db_proxy_arn #=> String
resp.db_proxy.status #=> String, one of "available", "modifying", "incompatible-network", "insufficient-resource-limits", "creating", "deleting", "suspended", "suspending", "reactivating"
resp.db_proxy.engine_family #=> String
resp.db_proxy.vpc_id #=> String
resp.db_proxy.vpc_security_group_ids #=> Array
resp.db_proxy.vpc_security_group_ids[0] #=> String
resp.db_proxy.vpc_subnet_ids #=> Array
resp.db_proxy.vpc_subnet_ids[0] #=> String
resp.db_proxy.auth #=> Array
resp.db_proxy.auth[0].description #=> String
resp.db_proxy.auth[0].user_name #=> String
resp.db_proxy.auth[0].auth_scheme #=> String, one of "SECRETS"
resp.db_proxy.auth[0].secret_arn #=> String
resp.db_proxy.auth[0].iam_auth #=> String, one of "DISABLED", "REQUIRED", "ENABLED"
resp.db_proxy.auth[0].client_password_auth_type #=> String, one of "MYSQL_NATIVE_PASSWORD", "MYSQL_CACHING_SHA2_PASSWORD", "POSTGRES_SCRAM_SHA_256", "POSTGRES_MD5", "SQL_SERVER_AUTHENTICATION"
resp.db_proxy.role_arn #=> String
resp.db_proxy.endpoint #=> String
resp.db_proxy.require_tls #=> Boolean
resp.db_proxy.idle_client_timeout #=> Integer
resp.db_proxy.debug_logging #=> Boolean
resp.db_proxy.created_date #=> Time
resp.db_proxy.updated_date #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_name (required, String)

    The identifier for the proxy. This name must be unique for all proxies owned by your Amazon Web Services account in the specified Amazon Web Services Region. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it can’t end with a hyphen or contain two consecutive hyphens.

  • :engine_family (required, String)

    The kinds of databases that the proxy can connect to. This value determines which database network protocol the proxy recognizes when it interprets network traffic to and from the database. For Aurora MySQL, RDS for MariaDB, and RDS for MySQL databases, specify ‘MYSQL`. For Aurora PostgreSQL and RDS for PostgreSQL databases, specify `POSTGRESQL`. For RDS for Microsoft SQL Server, specify `SQLSERVER`.

  • :auth (required, Array<Types::UserAuthConfig>)

    The authorization mechanism that the proxy uses.

  • :role_arn (required, String)

    The Amazon Resource Name (ARN) of the IAM role that the proxy uses to access secrets in Amazon Web Services Secrets Manager.

  • :vpc_subnet_ids (required, Array<String>)

    One or more VPC subnet IDs to associate with the new proxy.

  • :vpc_security_group_ids (Array<String>)

    One or more VPC security group IDs to associate with the new proxy.

  • :require_tls (Boolean)

    Specifies whether Transport Layer Security (TLS) encryption is required for connections to the proxy. By enabling this setting, you can enforce encrypted TLS connections to the proxy.

  • :idle_client_timeout (Integer)

    The number of seconds that a connection to the proxy can be inactive before the proxy disconnects it. You can set this value higher or lower than the connection timeout limit for the associated database.

  • :debug_logging (Boolean)

    Specifies whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.

  • :tags (Array<Types::Tag>)

    An optional set of key-value pairs to associate arbitrary data of your choosing with the proxy.

Returns:

See Also:



7290
7291
7292
7293
# File 'lib/aws-sdk-rds/client.rb', line 7290

def create_db_proxy(params = {}, options = {})
  req = build_request(:create_db_proxy, params)
  req.send_request(options)
end

#create_db_proxy_endpoint(params = {}) ⇒ Types::CreateDBProxyEndpointResponse

Creates a ‘DBProxyEndpoint`. Only applies to proxies that are associated with Aurora DB clusters. You can use DB proxy endpoints to specify read/write or read-only access to the DB cluster. You can also use DB proxy endpoints to access a DB proxy through a different VPC than the proxy’s default VPC.

Examples:

Request syntax with placeholder values


resp = client.create_db_proxy_endpoint({
  db_proxy_name: "DBProxyName", # required
  db_proxy_endpoint_name: "DBProxyEndpointName", # required
  vpc_subnet_ids: ["String"], # required
  vpc_security_group_ids: ["String"],
  target_role: "READ_WRITE", # accepts READ_WRITE, READ_ONLY
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_proxy_endpoint.db_proxy_endpoint_name #=> String
resp.db_proxy_endpoint.db_proxy_endpoint_arn #=> String
resp.db_proxy_endpoint.db_proxy_name #=> String
resp.db_proxy_endpoint.status #=> String, one of "available", "modifying", "incompatible-network", "insufficient-resource-limits", "creating", "deleting"
resp.db_proxy_endpoint.vpc_id #=> String
resp.db_proxy_endpoint.vpc_security_group_ids #=> Array
resp.db_proxy_endpoint.vpc_security_group_ids[0] #=> String
resp.db_proxy_endpoint.vpc_subnet_ids #=> Array
resp.db_proxy_endpoint.vpc_subnet_ids[0] #=> String
resp.db_proxy_endpoint.endpoint #=> String
resp.db_proxy_endpoint.created_date #=> Time
resp.db_proxy_endpoint.target_role #=> String, one of "READ_WRITE", "READ_ONLY"
resp.db_proxy_endpoint.is_default #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_name (required, String)

    The name of the DB proxy associated with the DB proxy endpoint that you create.

  • :db_proxy_endpoint_name (required, String)

    The name of the DB proxy endpoint to create.

  • :vpc_subnet_ids (required, Array<String>)

    The VPC subnet IDs for the DB proxy endpoint that you create. You can specify a different set of subnet IDs than for the original DB proxy.

  • :vpc_security_group_ids (Array<String>)

    The VPC security group IDs for the DB proxy endpoint that you create. You can specify a different set of security group IDs than for the original DB proxy. The default is the default security group for the VPC.

  • :target_role (String)

    The role of the DB proxy endpoint. The role determines whether the endpoint can be used for read/write or only read operations. The default is ‘READ_WRITE`. The only role that proxies for RDS for Microsoft SQL Server support is `READ_WRITE`.

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

Returns:

See Also:



7376
7377
7378
7379
# File 'lib/aws-sdk-rds/client.rb', line 7376

def create_db_proxy_endpoint(params = {}, options = {})
  req = build_request(:create_db_proxy_endpoint, params)
  req.send_request(options)
end

#create_db_security_group(params = {}) ⇒ Types::CreateDBSecurityGroupResult

Creates a new DB security group. DB security groups control access to a DB instance.

A DB security group controls access to EC2-Classic DB instances that are not in a VPC.

<note markdown=“1”> EC2-Classic was retired on August 15, 2022. If you haven’t migrated from EC2-Classic to a VPC, we recommend that you migrate as soon as possible. For more information, see [Migrate from EC2-Classic to a VPC] in the *Amazon EC2 User Guide*, the blog [EC2-Classic Networking is Retiring – Here’s How to Prepare], and [Moving a DB instance not in a VPC into a VPC] in the *Amazon RDS User Guide*.

</note>

[1]: docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html [2]: aws.amazon.com/blogs/aws/ec2-classic-is-retiring-heres-how-to-prepare/ [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.Non-VPC2VPC.html

Examples:

Example: To create a DB security group.


# This example creates a DB security group.

resp = client.create_db_security_group({
  db_security_group_description: "My DB security group", 
  db_security_group_name: "mydbsecuritygroup", 
})

resp.to_h outputs the following:
{
  db_security_group: {
  }, 
}

Request syntax with placeholder values


resp = client.create_db_security_group({
  db_security_group_name: "String", # required
  db_security_group_description: "String", # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_security_group.owner_id #=> String
resp.db_security_group.db_security_group_name #=> String
resp.db_security_group.db_security_group_description #=> String
resp.db_security_group.vpc_id #=> String
resp.db_security_group.ec2_security_groups #=> Array
resp.db_security_group.ec2_security_groups[0].status #=> String
resp.db_security_group.ec2_security_groups[0].ec2_security_group_name #=> String
resp.db_security_group.ec2_security_groups[0].ec2_security_group_id #=> String
resp.db_security_group.ec2_security_groups[0].ec2_security_group_owner_id #=> String
resp.db_security_group.ip_ranges #=> Array
resp.db_security_group.ip_ranges[0].status #=> String
resp.db_security_group.ip_ranges[0].cidrip #=> String
resp.db_security_group.db_security_group_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_security_group_name (required, String)

    The name for the DB security group. This value is stored as a lowercase string.

    Constraints:

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

    • First character must be a letter

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

    • Must not be “Default”

    Example: ‘mysecuritygroup`

  • :db_security_group_description (required, String)

    The description for the DB security group.

  • :tags (Array<Types::Tag>)

    Tags to assign to the DB security group.

Returns:

See Also:



7477
7478
7479
7480
# File 'lib/aws-sdk-rds/client.rb', line 7477

def create_db_security_group(params = {}, options = {})
  req = build_request(:create_db_security_group, params)
  req.send_request(options)
end

#create_db_shard_group(params = {}) ⇒ Types::DBShardGroup

Creates a new DB shard group for Aurora Limitless Database. You must enable Aurora Limitless Database to create a DB shard group.

Valid for: Aurora DB clusters only

Examples:

Request syntax with placeholder values


resp = client.create_db_shard_group({
  db_shard_group_identifier: "String", # required
  db_cluster_identifier: "String", # required
  compute_redundancy: 1,
  max_acu: 1.0, # required
  min_acu: 1.0,
  publicly_accessible: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_shard_group_resource_id #=> String
resp.db_shard_group_identifier #=> String
resp.db_cluster_identifier #=> String
resp.max_acu #=> Float
resp.min_acu #=> Float
resp.compute_redundancy #=> Integer
resp.status #=> String
resp.publicly_accessible #=> Boolean
resp.endpoint #=> String
resp.db_shard_group_arn #=> String
resp.tag_list #=> Array
resp.tag_list[0].key #=> String
resp.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_shard_group_identifier (required, String)

    The name of the DB shard group.

  • :db_cluster_identifier (required, String)

    The name of the primary DB cluster for the DB shard group.

  • :compute_redundancy (Integer)

    Specifies whether to create standby DB shard groups for the DB shard group. Valid values are the following:

    • 0 - Creates a DB shard group without a standby DB shard group. This is the default value.

    • 1 - Creates a DB shard group with a standby DB shard group in a different Availability Zone (AZ).

    • 2 - Creates a DB shard group with two standby DB shard groups in two different AZs.

  • :max_acu (required, Float)

    The maximum capacity of the DB shard group in Aurora capacity units (ACUs).

  • :min_acu (Float)

    The minimum capacity of the DB shard group in Aurora capacity units (ACUs).

  • :publicly_accessible (Boolean)

    Specifies whether the DB shard group is publicly accessible.

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

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

    Default: The default behavior varies depending on whether ‘DBSubnetGroupName` is specified.

    If ‘DBSubnetGroupName` isn’t specified, and ‘PubliclyAccessible` isn’t specified, the following applies:

    • If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB shard group is private.

    • If the default VPC in the target Region has an internet gateway attached to it, the DB shard group is public.

    If ‘DBSubnetGroupName` is specified, and `PubliclyAccessible` isn’t specified, the following applies:

    • If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB shard group is private.

    • If the subnets are part of a VPC that has an internet gateway attached to it, the DB shard group is public.

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

Returns:

See Also:



7612
7613
7614
7615
# File 'lib/aws-sdk-rds/client.rb', line 7612

def create_db_shard_group(params = {}, options = {})
  req = build_request(:create_db_shard_group, params)
  req.send_request(options)
end

#create_db_snapshot(params = {}) ⇒ Types::CreateDBSnapshotResult

Creates a snapshot of a DB instance. The source DB instance must be in the ‘available` or `storage-optimization` state.

Examples:

Example: To create a DB snapshot


# The following example creates a DB snapshot.

resp = client.create_db_snapshot({
  db_instance_identifier: "mydbsnapshot", 
  db_snapshot_identifier: "database-mysql", 
})

resp.to_h outputs the following:
{
  db_snapshot: {
    allocated_storage: 100, 
    availability_zone: "us-east-1b", 
    db_instance_identifier: "database-mysql", 
    db_snapshot_arn: "arn:aws:rds:us-east-1:123456789012:snapshot:mydbsnapshot", 
    db_snapshot_identifier: "mydbsnapshot", 
    dbi_resource_id: "db-AKIAIOSFODNN7EXAMPLE", 
    encrypted: true, 
    engine: "mysql", 
    engine_version: "8.0.32", 
    iam_database_authentication_enabled: false, 
    instance_create_time: Time.parse("2019-04-30T15:45:53.663Z"), 
    iops: 1000, 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE", 
    license_model: "general-public-license", 
    master_username: "admin", 
    option_group_name: "default:mysql-8-0", 
    percent_progress: 0, 
    port: 3306, 
    processor_features: [
    ], 
    snapshot_type: "manual", 
    status: "creating", 
    storage_type: "io1", 
    vpc_id: "vpc-6594f31c", 
  }, 
}

Request syntax with placeholder values


resp = client.create_db_snapshot({
  db_snapshot_identifier: "String", # required
  db_instance_identifier: "String", # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_snapshot.db_snapshot_identifier #=> String
resp.db_snapshot.db_instance_identifier #=> String
resp.db_snapshot.snapshot_create_time #=> Time
resp.db_snapshot.engine #=> String
resp.db_snapshot.allocated_storage #=> Integer
resp.db_snapshot.status #=> String
resp.db_snapshot.port #=> Integer
resp.db_snapshot.availability_zone #=> String
resp.db_snapshot.vpc_id #=> String
resp.db_snapshot.instance_create_time #=> Time
resp.db_snapshot.master_username #=> String
resp.db_snapshot.engine_version #=> String
resp.db_snapshot.license_model #=> String
resp.db_snapshot.snapshot_type #=> String
resp.db_snapshot.iops #=> Integer
resp.db_snapshot.option_group_name #=> String
resp.db_snapshot.percent_progress #=> Integer
resp.db_snapshot.source_region #=> String
resp.db_snapshot.source_db_snapshot_identifier #=> String
resp.db_snapshot.storage_type #=> String
resp.db_snapshot.tde_credential_arn #=> String
resp.db_snapshot.encrypted #=> Boolean
resp.db_snapshot.kms_key_id #=> String
resp.db_snapshot.db_snapshot_arn #=> String
resp.db_snapshot.timezone #=> String
resp.db_snapshot.iam_database_authentication_enabled #=> Boolean
resp.db_snapshot.processor_features #=> Array
resp.db_snapshot.processor_features[0].name #=> String
resp.db_snapshot.processor_features[0].value #=> String
resp.db_snapshot.dbi_resource_id #=> String
resp.db_snapshot.tag_list #=> Array
resp.db_snapshot.tag_list[0].key #=> String
resp.db_snapshot.tag_list[0].value #=> String
resp.db_snapshot.original_snapshot_create_time #=> Time
resp.db_snapshot.snapshot_database_time #=> Time
resp.db_snapshot.snapshot_target #=> String
resp.db_snapshot.storage_throughput #=> Integer
resp.db_snapshot.db_system_id #=> String
resp.db_snapshot.dedicated_log_volume #=> Boolean
resp.db_snapshot.multi_tenant #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_snapshot_identifier (required, String)

    The identifier for the DB snapshot.

    Constraints:

    • Can’t be null, empty, or blank

    • Must contain from 1 to 255 letters, numbers, or hyphens

    • First character must be a letter

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

    Example: ‘my-snapshot-id`

  • :db_instance_identifier (required, String)

    The identifier of the DB instance that you want to create the snapshot of.

    Constraints:

    • Must match the identifier of an existing DBInstance.

    ^

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

Returns:

See Also:



7761
7762
7763
7764
# File 'lib/aws-sdk-rds/client.rb', line 7761

def create_db_snapshot(params = {}, options = {})
  req = build_request(:create_db_snapshot, params)
  req.send_request(options)
end

#create_db_subnet_group(params = {}) ⇒ Types::CreateDBSubnetGroupResult

Creates a new DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the Amazon Web Services Region.

Examples:

Example: To create a DB subnet group


# The following example creates a DB subnet group called mysubnetgroup using existing subnets.

resp = client.create_db_subnet_group({
  db_subnet_group_description: "test DB subnet group", 
  db_subnet_group_name: "mysubnetgroup", 
  subnet_ids: [
    "subnet-0a1dc4e1a6f123456", 
    "subnet-070dd7ecb3aaaaaaa", 
    "subnet-00f5b198bc0abcdef", 
  ], 
})

resp.to_h outputs the following:
{
  db_subnet_group: {
    db_subnet_group_arn: "arn:aws:rds:us-west-2:0123456789012:subgrp:mysubnetgroup", 
    db_subnet_group_description: "test DB subnet group", 
    db_subnet_group_name: "mysubnetgroup", 
    subnet_group_status: "Complete", 
    subnets: [
      {
        subnet_availability_zone: {
          name: "us-west-2b", 
        }, 
        subnet_identifier: "subnet-070dd7ecb3aaaaaaa", 
        subnet_status: "Active", 
      }, 
      {
        subnet_availability_zone: {
          name: "us-west-2d", 
        }, 
        subnet_identifier: "subnet-00f5b198bc0abcdef", 
        subnet_status: "Active", 
      }, 
      {
        subnet_availability_zone: {
          name: "us-west-2b", 
        }, 
        subnet_identifier: "subnet-0a1dc4e1a6f123456", 
        subnet_status: "Active", 
      }, 
    ], 
    vpc_id: "vpc-0f08e7610a1b2c3d4", 
  }, 
}

Request syntax with placeholder values


resp = client.create_db_subnet_group({
  db_subnet_group_name: "String", # required
  db_subnet_group_description: "String", # required
  subnet_ids: ["String"], # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.db_subnet_group.db_subnet_group_name #=> String
resp.db_subnet_group.db_subnet_group_description #=> String
resp.db_subnet_group.vpc_id #=> String
resp.db_subnet_group.subnet_group_status #=> String
resp.db_subnet_group.subnets #=> Array
resp.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_subnet_group.db_subnet_group_arn #=> String
resp.db_subnet_group.supported_network_types #=> Array
resp.db_subnet_group.supported_network_types[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_subnet_group_name (required, String)

    The name for the DB subnet group. This value is stored as a lowercase string.

    Constraints:

    • Must contain no more than 255 letters, numbers, periods, underscores, spaces, or hyphens.

    • Must not be default.

    • First character must be a letter.

    Example: ‘mydbsubnetgroup`

  • :db_subnet_group_description (required, String)

    The description for the DB subnet group.

  • :subnet_ids (required, Array<String>)

    The EC2 Subnet IDs for the DB subnet group.

  • :tags (Array<Types::Tag>)

    Tags to assign to the DB subnet group.

Returns:

See Also:



7879
7880
7881
7882
# File 'lib/aws-sdk-rds/client.rb', line 7879

def create_db_subnet_group(params = {}, options = {})
  req = build_request(:create_db_subnet_group, params)
  req.send_request(options)
end

#create_event_subscription(params = {}) ⇒ Types::CreateEventSubscriptionResult

Creates an RDS event notification subscription. This operation requires a topic Amazon Resource Name (ARN) 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`) that you want to be notified of and provide a list of RDS sources (`SourceIds`) that triggers the events. You can also provide a list of event categories (`EventCategories`) for events that 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 `SourceIds` = `myDBInstance1`, you are notified of all the `db-instance` events for the specified source. If you specify a `SourceType` but do not specify `SourceIds`, you receive notice of the events for that source type for all your RDS sources. If you don’t specify either the SourceType or the ‘SourceIds`, you are notified of events generated from all RDS sources belonging to your customer account.

For more information about subscribing to an event for RDS DB engines, see [ Subscribing to Amazon RDS event notification] in the *Amazon RDS User Guide*.

For more information about subscribing to an event for Aurora DB engines, see [ Subscribing to Amazon RDS event notification] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.Subscribing.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Events.Subscribing.html

Examples:

Example: To create an event subscription


# The following example creates a subscription for backup and recovery events for DB instances in the current AWS account.
# Notifications are sent to an Amazon Simple Notification Service topic.

resp = client.create_event_subscription({
  event_categories: [
    "backup", 
    "recovery", 
  ], 
  sns_topic_arn: "arn:aws:sns:us-east-1:123456789012:interesting-events", 
  source_type: "db-instance", 
  subscription_name: "my-instance-events", 
})

resp.to_h outputs the following:
{
  event_subscription: {
    cust_subscription_id: "my-instance-events", 
    customer_aws_id: "123456789012", 
    enabled: true, 
    event_categories_list: [
      "backup", 
      "recovery", 
    ], 
    event_subscription_arn: "arn:aws:rds:us-east-1:123456789012:es:my-instance-events", 
    sns_topic_arn: "arn:aws:sns:us-east-1:123456789012:interesting-events", 
    source_type: "db-instance", 
    status: "creating", 
    subscription_creation_time: "Tue Jul 31 23:22:01 UTC 2018", 
  }, 
}

Request syntax with placeholder values


resp = client.create_event_subscription({
  subscription_name: "String", # required
  sns_topic_arn: "String", # required
  source_type: "String",
  event_categories: ["String"],
  source_ids: ["String"],
  enabled: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.event_subscription.customer_aws_id #=> String
resp.event_subscription.cust_subscription_id #=> String
resp.event_subscription.sns_topic_arn #=> String
resp.event_subscription.status #=> String
resp.event_subscription.subscription_creation_time #=> String
resp.event_subscription.source_type #=> String
resp.event_subscription.source_ids_list #=> Array
resp.event_subscription.source_ids_list[0] #=> String
resp.event_subscription.event_categories_list #=> Array
resp.event_subscription.event_categories_list[0] #=> String
resp.event_subscription.enabled #=> Boolean
resp.event_subscription.event_subscription_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :subscription_name (required, String)

    The name of the subscription.

    Constraints: The name must be less than 255 characters.

  • :sns_topic_arn (required, String)

    The Amazon Resource Name (ARN) of the SNS topic created for event notification. SNS automatically creates the ARN when you create a topic and subscribe to it.

    <note markdown=“1”> RDS doesn’t support FIFO (first in, first out) topics. For more information, see [Message ordering and deduplication (FIFO topics)] in the *Amazon Simple Notification Service Developer Guide*.

    </note>
    

    [1]: docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html

  • :source_type (String)

    The type of source that is generating the events. For example, if you want to be notified of events generated by a DB instance, you set this parameter to ‘db-instance`. For RDS Proxy events, specify `db-proxy`. If this value isn’t specified, all events are returned.

    Valid Values:‘ db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy | zero-etl | custom-engine-version | blue-green-deployment `

  • :event_categories (Array<String>)

    A list of event categories for a particular source type (‘SourceType`) that you want to subscribe to. You can see a list of the categories for a given source type in the “Amazon RDS event categories and event messages” section of the [ *Amazon RDS User Guide* ][1] or the [ *Amazon Aurora User Guide* ][2]. You can also see this list by using the `DescribeEventCategories` operation.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.Messages.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Events.Messages.html

  • :source_ids (Array<String>)

    The list of identifiers of the event sources for which events are returned. If not specified, then all sources are included in the response. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens. It can’t end with a hyphen or contain two consecutive hyphens.

    Constraints:

    • If ‘SourceIds` are supplied, `SourceType` must also be provided.

    • If the source type is a DB instance, a ‘DBInstanceIdentifier` value must be supplied.

    • If the source type is a DB cluster, a ‘DBClusterIdentifier` value must be supplied.

    • If the source type is a DB parameter group, a ‘DBParameterGroupName` value must be supplied.

    • If the source type is a DB security group, a ‘DBSecurityGroupName` value must be supplied.

    • If the source type is a DB snapshot, a ‘DBSnapshotIdentifier` value must be supplied.

    • If the source type is a DB cluster snapshot, a ‘DBClusterSnapshotIdentifier` value must be supplied.

    • If the source type is an RDS Proxy, a ‘DBProxyName` value must be supplied.

  • :enabled (Boolean)

    Specifies whether to activate the subscription. If the event notification subscription isn’t activated, the subscription is created but not active.

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

Returns:

See Also:



8086
8087
8088
8089
# File 'lib/aws-sdk-rds/client.rb', line 8086

def create_event_subscription(params = {}, options = {})
  req = build_request(:create_event_subscription, params)
  req.send_request(options)
end

#create_global_cluster(params = {}) ⇒ Types::CreateGlobalClusterResult

Creates an Aurora global database spread across multiple Amazon Web Services Regions. The global database contains a single primary cluster with read-write capability, and a read-only secondary cluster that receives data from the primary cluster through high-speed replication performed by the Aurora storage subsystem.

You can create a global database that is initially empty, and then create the primary and secondary DB clusters in the global database. Or you can specify an existing Aurora cluster during the create operation, and this cluster becomes the primary cluster of the global database.

<note markdown=“1”> This operation applies only to Aurora DB clusters.

</note>

Examples:

Example: To create a global DB cluster


# The following example creates a new Aurora MySQL-compatible global DB cluster.

resp = client.create_global_cluster({
  engine: "aurora-mysql", 
  global_cluster_identifier: "myglobalcluster", 
})

resp.to_h outputs the following:
{
  global_cluster: {
    deletion_protection: false, 
    engine: "aurora-mysql", 
    engine_version: "5.7.mysql_aurora.2.07.2", 
    global_cluster_arn: "arn:aws:rds::123456789012:global-cluster:myglobalcluster", 
    global_cluster_identifier: "myglobalcluster", 
    global_cluster_members: [
    ], 
    global_cluster_resource_id: "cluster-f0e523bfe07aabb", 
    status: "available", 
    storage_encrypted: false, 
  }, 
}

Request syntax with placeholder values


resp = client.create_global_cluster({
  global_cluster_identifier: "String",
  source_db_cluster_identifier: "String",
  engine: "String",
  engine_version: "String",
  engine_lifecycle_support: "String",
  deletion_protection: false,
  database_name: "String",
  storage_encrypted: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.global_cluster.global_cluster_identifier #=> String
resp.global_cluster.global_cluster_resource_id #=> String
resp.global_cluster.global_cluster_arn #=> String
resp.global_cluster.status #=> String
resp.global_cluster.engine #=> String
resp.global_cluster.engine_version #=> String
resp.global_cluster.engine_lifecycle_support #=> String
resp.global_cluster.database_name #=> String
resp.global_cluster.storage_encrypted #=> Boolean
resp.global_cluster.deletion_protection #=> Boolean
resp.global_cluster.global_cluster_members #=> Array
resp.global_cluster.global_cluster_members[0].db_cluster_arn #=> String
resp.global_cluster.global_cluster_members[0].readers #=> Array
resp.global_cluster.global_cluster_members[0].readers[0] #=> String
resp.global_cluster.global_cluster_members[0].is_writer #=> Boolean
resp.global_cluster.global_cluster_members[0].global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.global_cluster.global_cluster_members[0].synchronization_status #=> String, one of "connected", "pending-resync"
resp.global_cluster.endpoint #=> String
resp.global_cluster.failover_state.status #=> String, one of "pending", "failing-over", "cancelling"
resp.global_cluster.failover_state.from_db_cluster_arn #=> String
resp.global_cluster.failover_state.to_db_cluster_arn #=> String
resp.global_cluster.failover_state.is_data_loss_allowed #=> Boolean
resp.global_cluster.tag_list #=> Array
resp.global_cluster.tag_list[0].key #=> String
resp.global_cluster.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :global_cluster_identifier (String)

    The cluster identifier for this global database cluster. This parameter is stored as a lowercase string.

  • :source_db_cluster_identifier (String)

    The Amazon Resource Name (ARN) to use as the primary cluster of the global database.

    If you provide a value for this parameter, don’t specify values for the following settings because Amazon Aurora uses the values from the specified source DB cluster:

    • ‘DatabaseName`

    • ‘Engine`

    • ‘EngineVersion`

    • ‘StorageEncrypted`

  • :engine (String)

    The database engine to use for this global database cluster.

    Valid Values: ‘aurora-mysql | aurora-postgresql`

    Constraints:

    • Can’t be specified if ‘SourceDBClusterIdentifier` is specified. In this case, Amazon Aurora uses the engine of the source DB cluster.

    ^

  • :engine_version (String)

    The engine version to use for this global database cluster.

    Constraints:

    • Can’t be specified if ‘SourceDBClusterIdentifier` is specified. In this case, Amazon Aurora uses the engine version of the source DB cluster.

    ^

  • :engine_lifecycle_support (String)

    The life cycle type for this global database cluster.

    <note markdown=“1”> By default, this value is set to ‘open-source-rds-extended-support`, which enrolls your global cluster into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to `open-source-rds-extended-support-disabled`. In this case, creating the global cluster will fail if the DB major version is past its end of standard support date.

    </note>
    

    This setting only applies to Aurora PostgreSQL-based global databases.

    You can use this setting to enroll your global cluster into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your global cluster past the end of standard support for that engine version. For more information, see [Using Amazon RDS Extended Support] in the *Amazon Aurora User Guide*.

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

    Default: ‘open-source-rds-extended-support`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/extended-support.html

  • :deletion_protection (Boolean)

    Specifies whether to enable deletion protection for the new global database cluster. The global database can’t be deleted when deletion protection is enabled.

  • :database_name (String)

    The name for your database of up to 64 alphanumeric characters. If you don’t specify a name, Amazon Aurora doesn’t create a database in the global database cluster.

    Constraints:

    • Can’t be specified if ‘SourceDBClusterIdentifier` is specified. In this case, Amazon Aurora uses the database name from the source DB cluster.

    ^

  • :storage_encrypted (Boolean)

    Specifies whether to enable storage encryption for the new global database cluster.

    Constraints:

    • Can’t be specified if ‘SourceDBClusterIdentifier` is specified. In this case, Amazon Aurora uses the setting from the source DB cluster.

    ^

  • :tags (Array<Types::Tag>)

    Tags to assign to the global cluster.

Returns:

See Also:



8294
8295
8296
8297
# File 'lib/aws-sdk-rds/client.rb', line 8294

def create_global_cluster(params = {}, options = {})
  req = build_request(:create_global_cluster, params)
  req.send_request(options)
end

#create_integration(params = {}) ⇒ Types::Integration

Creates a zero-ETL integration with Amazon Redshift.

Examples:

Example: To create a zero-ETL integration


# The following example creates a zero-ETL integration with Amazon Redshift.

resp = client.create_integration({
  integration_name: "my-integration", 
  source_arn: "arn:aws:rds:us-east-1:123456789012:cluster:my-cluster", 
  target_arn: "arn:aws:redshift-serverless:us-east-1:123456789012:namespace/62c70612-0302-4db7-8414-b5e3e049f0d8", 
})

resp.to_h outputs the following:
{
  create_time: Time.parse("2023-12-28T17:20:20.629Z"), 
  integration_arn: "arn:aws:rds:us-east-1:123456789012:integration:5b9f3d79-7392-4a3e-896c-58eaa1b53231", 
  integration_name: "my-integration", 
  kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa", 
  source_arn: "arn:aws:rds:us-east-1:123456789012:cluster:my-cluster", 
  status: "creating", 
  tags: [
  ], 
  target_arn: "arn:aws:redshift-serverless:us-east-1:123456789012:namespace/62c70612-0302-4db7-8414-b5e3e049f0d8", 
}

Request syntax with placeholder values


resp = client.create_integration({
  source_arn: "SourceArn", # required
  target_arn: "Arn", # required
  integration_name: "IntegrationName", # required
  kms_key_id: "String",
  additional_encryption_context: {
    "String" => "String",
  },
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  data_filter: "DataFilter",
  description: "IntegrationDescription",
})

Response structure


resp.source_arn #=> String
resp.target_arn #=> String
resp.integration_name #=> String
resp.integration_arn #=> String
resp.kms_key_id #=> String
resp.additional_encryption_context #=> Hash
resp.additional_encryption_context["String"] #=> String
resp.status #=> String, one of "creating", "active", "modifying", "failed", "deleting", "syncing", "needs_attention"
resp.tags #=> Array
resp.tags[0].key #=> String
resp.tags[0].value #=> String
resp.create_time #=> Time
resp.errors #=> Array
resp.errors[0].error_code #=> String
resp.errors[0].error_message #=> String
resp.data_filter #=> String
resp.description #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_arn (required, String)

    The Amazon Resource Name (ARN) of the database to use as the source for replication.

  • :target_arn (required, String)

    The ARN of the Redshift data warehouse to use as the target for replication.

  • :integration_name (required, String)

    The name of the integration.

  • :kms_key_id (String)

    The Amazon Web Services Key Management System (Amazon Web Services KMS) key identifier for the key to use to encrypt the integration. If you don’t specify an encryption key, RDS uses a default Amazon Web Services owned key.

  • :additional_encryption_context (Hash<String,String>)

    An optional set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see

    Encryption context][1

    in the *Amazon Web Services Key Management

    Service Developer Guide*.

    You can only include this parameter if you specify the ‘KMSKeyId` parameter.

    [1]: docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

  • :data_filter (String)

    Data filtering options for the integration. For more information, see [Data filtering for Aurora zero-ETL integrations with Amazon Redshift].

    Valid for: Integrations with Aurora MySQL source DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html

  • :description (String)

    A description of the integration.

Returns:

See Also:



8440
8441
8442
8443
# File 'lib/aws-sdk-rds/client.rb', line 8440

def create_integration(params = {}, options = {})
  req = build_request(:create_integration, params)
  req.send_request(options)
end

#create_option_group(params = {}) ⇒ Types::CreateOptionGroupResult

Creates a new option group. You can create up to 20 option groups.

This command doesn’t apply to RDS Custom.

Examples:

Example: To Create an Amazon RDS option group


# The following example creates a new Amazon RDS option group for Oracle MySQL version 8,0 named MyOptionGroup.

resp = client.create_option_group({
  engine_name: "mysql", 
  major_engine_version: "8.0", 
  option_group_description: "MySQL 8.0 option group", 
  option_group_name: "MyOptionGroup", 
})

resp.to_h outputs the following:
{
  option_group: {
    allows_vpc_and_non_vpc_instance_memberships: true, 
    engine_name: "mysql", 
    major_engine_version: "8.0", 
    option_group_arn: "arn:aws:rds:us-east-1:123456789012:og:myoptiongroup", 
    option_group_description: "MySQL 8.0 option group", 
    option_group_name: "myoptiongroup", 
    options: [
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.create_option_group({
  option_group_name: "String", # required
  engine_name: "String", # required
  major_engine_version: "String", # required
  option_group_description: "String", # required
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.option_group.option_group_name #=> String
resp.option_group.option_group_description #=> String
resp.option_group.engine_name #=> String
resp.option_group.major_engine_version #=> String
resp.option_group.options #=> Array
resp.option_group.options[0].option_name #=> String
resp.option_group.options[0].option_description #=> String
resp.option_group.options[0].persistent #=> Boolean
resp.option_group.options[0].permanent #=> Boolean
resp.option_group.options[0].port #=> Integer
resp.option_group.options[0].option_version #=> String
resp.option_group.options[0].option_settings #=> Array
resp.option_group.options[0].option_settings[0].name #=> String
resp.option_group.options[0].option_settings[0].value #=> String
resp.option_group.options[0].option_settings[0].default_value #=> String
resp.option_group.options[0].option_settings[0].description #=> String
resp.option_group.options[0].option_settings[0].apply_type #=> String
resp.option_group.options[0].option_settings[0].data_type #=> String
resp.option_group.options[0].option_settings[0].allowed_values #=> String
resp.option_group.options[0].option_settings[0].is_modifiable #=> Boolean
resp.option_group.options[0].option_settings[0].is_collection #=> Boolean
resp.option_group.options[0].db_security_group_memberships #=> Array
resp.option_group.options[0].db_security_group_memberships[0].db_security_group_name #=> String
resp.option_group.options[0].db_security_group_memberships[0].status #=> String
resp.option_group.options[0].vpc_security_group_memberships #=> Array
resp.option_group.options[0].vpc_security_group_memberships[0].vpc_security_group_id #=> String
resp.option_group.options[0].vpc_security_group_memberships[0].status #=> String
resp.option_group.allows_vpc_and_non_vpc_instance_memberships #=> Boolean
resp.option_group.vpc_id #=> String
resp.option_group.option_group_arn #=> String
resp.option_group.source_option_group #=> String
resp.option_group. #=> String
resp.option_group.copy_timestamp #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :option_group_name (required, String)

    Specifies the name of the option group to be created.

    Constraints:

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

    • First character must be a letter

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

    Example: ‘myoptiongroup`

  • :engine_name (required, String)

    The name of the engine to associate this option group with.

    Valid Values:

    • ‘db2-ae`

    • ‘db2-se`

    • ‘mariadb`

    • ‘mysql`

    • ‘oracle-ee`

    • ‘oracle-ee-cdb`

    • ‘oracle-se2`

    • ‘oracle-se2-cdb`

    • ‘postgres`

    • ‘sqlserver-ee`

    • ‘sqlserver-se`

    • ‘sqlserver-ex`

    • ‘sqlserver-web`

  • :major_engine_version (required, String)

    Specifies the major version of the engine that this option group should be associated with.

  • :option_group_description (required, String)

    The description of the option group.

  • :tags (Array<Types::Tag>)

    Tags to assign to the option group.

Returns:

See Also:



8588
8589
8590
8591
# File 'lib/aws-sdk-rds/client.rb', line 8588

def create_option_group(params = {}, options = {})
  req = build_request(:create_option_group, params)
  req.send_request(options)
end

#create_tenant_database(params = {}) ⇒ Types::CreateTenantDatabaseResult

Creates a tenant database in a DB instance that uses the multi-tenant configuration. Only RDS for Oracle container database (CDB) instances are supported.

Examples:

Request syntax with placeholder values


resp = client.create_tenant_database({
  db_instance_identifier: "String", # required
  tenant_db_name: "String", # required
  master_username: "String", # required
  master_user_password: "SensitiveString", # required
  character_set_name: "String",
  nchar_character_set_name: "String",
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.tenant_database.tenant_database_create_time #=> Time
resp.tenant_database.db_instance_identifier #=> String
resp.tenant_database.tenant_db_name #=> String
resp.tenant_database.status #=> String
resp.tenant_database.master_username #=> String
resp.tenant_database.dbi_resource_id #=> String
resp.tenant_database.tenant_database_resource_id #=> String
resp.tenant_database.tenant_database_arn #=> String
resp.tenant_database.character_set_name #=> String
resp.tenant_database.nchar_character_set_name #=> String
resp.tenant_database.deletion_protection #=> Boolean
resp.tenant_database.pending_modified_values.master_user_password #=> String
resp.tenant_database.pending_modified_values.tenant_db_name #=> String
resp.tenant_database.tag_list #=> Array
resp.tenant_database.tag_list[0].key #=> String
resp.tenant_database.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The user-supplied DB instance identifier. RDS creates your tenant database in this DB instance. This parameter isn’t case-sensitive.

  • :tenant_db_name (required, String)

    The user-supplied name of the tenant database that you want to create in your DB instance. This parameter has the same constraints as ‘DBName` in `CreateDBInstance`.

  • :master_username (required, String)

    The name for the master user account in your tenant database. RDS creates this user account in the tenant database and grants privileges to the master user. This parameter is case-sensitive.

    Constraints:

    • Must be 1 to 16 letters, numbers, or underscores.

    • First character must be a letter.

    • Can’t be a reserved word for the chosen database engine.

  • :master_user_password (required, String)

    The password for the master user in your tenant database.

    Constraints:

    • Must be 8 to 30 characters.

    • Can include any printable ASCII character except forward slash (‘/`), double quote (`“`), at symbol (`@`), ampersand (`&`), or single quote (`’‘).

  • :character_set_name (String)

    The character set for your tenant database. If you don’t specify a value, the character set name defaults to ‘AL32UTF8`.

  • :nchar_character_set_name (String)

    The ‘NCHAR` value for the tenant database.

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

Returns:

See Also:



8693
8694
8695
8696
# File 'lib/aws-sdk-rds/client.rb', line 8693

def create_tenant_database(params = {}, options = {})
  req = build_request(:create_tenant_database, params)
  req.send_request(options)
end

#delete_blue_green_deployment(params = {}) ⇒ Types::DeleteBlueGreenDeploymentResponse

Deletes a blue/green deployment.

For more information, see [Using Amazon RDS Blue/Green Deployments for database updates] in the *Amazon RDS User Guide* and [Using Amazon RDS Blue/Green Deployments for database updates] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/blue-green-deployments.html

Examples:

Example: To delete resources in green environment for an RDS for MySQL DB instance


# The following example deletes the resources in a green environment for an RDS for MySQL DB instance.

resp = client.delete_blue_green_deployment({
  blue_green_deployment_identifier: "bgd-v53303651eexfake", 
  delete_target: true, 
})

resp.to_h outputs the following:
{
  blue_green_deployment: {
    blue_green_deployment_identifier: "bgd-v53303651eexfake", 
    blue_green_deployment_name: "bgd-cli-test-instance", 
    create_time: Time.parse("2022-02-25T21:18:51.183000+00:00"), 
    delete_time: Time.parse("2022-02-25T22:25:31.331000+00:00"), 
    source: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance", 
    status: "DELETING", 
    switchover_details: [
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-green-rkfbpe", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-1", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-1-green-j382ha", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-2", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-2-green-ejv4ao", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-3", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-3-green-vlpz3t", 
      }, 
    ], 
    target: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-green-rkfbpe", 
    tasks: [
      {
        name: "CREATING_READ_REPLICA_OF_SOURCE", 
        status: "COMPLETED", 
      }, 
      {
        name: "DB_ENGINE_VERSION_UPGRADE", 
        status: "COMPLETED", 
      }, 
      {
        name: "CONFIGURE_BACKUPS", 
        status: "COMPLETED", 
      }, 
      {
        name: "CREATING_TOPOLOGY_OF_SOURCE", 
        status: "COMPLETED", 
      }, 
    ], 
  }, 
}

Example: To delete resources in green environment for an Aurora MySQL DB cluster


# The following example deletes the resources in a green environment for an Aurora MySQL DB cluster.

resp = client.delete_blue_green_deployment({
  blue_green_deployment_identifier: "bgd-wi89nwzglccsfake", 
  delete_target: true, 
})

resp.to_h outputs the following:
{
  blue_green_deployment: {
    blue_green_deployment_identifier: "bgd-wi89nwzglccsfake", 
    blue_green_deployment_name: "my-blue-green-deployment", 
    create_time: Time.parse("2022-02-25T21:12:00.288000+00:00"), 
    delete_time: Time.parse("2022-02-25T22:29:11.336000+00:00"), 
    source: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
    status: "DELETING", 
    switchover_details: [
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster-green-3rnukl", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-1", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-1-green-gpmaxf", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-2", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-2-green-j2oajq", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-3", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-3-green-mkxies", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-excluded-member-endpoint", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-excluded-member-endpoint-green-4sqjrq", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-reader-endpoint", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-reader-endpoint-green-gwwzlg", 
      }, 
    ], 
    target: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster-green-3rnukl", 
    tasks: [
      {
        name: "CREATING_READ_REPLICA_OF_SOURCE", 
        status: "COMPLETED", 
      }, 
      {
        name: "DB_ENGINE_VERSION_UPGRADE", 
        status: "COMPLETED", 
      }, 
      {
        name: "CREATE_DB_INSTANCES_FOR_CLUSTER", 
        status: "COMPLETED", 
      }, 
      {
        name: "CREATE_CUSTOM_ENDPOINTS", 
        status: "COMPLETED", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.delete_blue_green_deployment({
  blue_green_deployment_identifier: "BlueGreenDeploymentIdentifier", # required
  delete_target: false,
})

Response structure


resp.blue_green_deployment.blue_green_deployment_identifier #=> String
resp.blue_green_deployment.blue_green_deployment_name #=> String
resp.blue_green_deployment.source #=> String
resp.blue_green_deployment.target #=> String
resp.blue_green_deployment.switchover_details #=> Array
resp.blue_green_deployment.switchover_details[0].source_member #=> String
resp.blue_green_deployment.switchover_details[0].target_member #=> String
resp.blue_green_deployment.switchover_details[0].status #=> String
resp.blue_green_deployment.tasks #=> Array
resp.blue_green_deployment.tasks[0].name #=> String
resp.blue_green_deployment.tasks[0].status #=> String
resp.blue_green_deployment.status #=> String
resp.blue_green_deployment.status_details #=> String
resp.blue_green_deployment.create_time #=> Time
resp.blue_green_deployment.delete_time #=> Time
resp.blue_green_deployment.tag_list #=> Array
resp.blue_green_deployment.tag_list[0].key #=> String
resp.blue_green_deployment.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :blue_green_deployment_identifier (required, String)

    The unique identifier of the blue/green deployment to delete. This parameter isn’t case-sensitive.

    Constraints:

    • Must match an existing blue/green deployment identifier.

    ^

  • :delete_target (Boolean)

    Specifies whether to delete the resources in the green environment. You can’t specify this option if the blue/green deployment

    status][1

    is ‘SWITCHOVER_COMPLETED`.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_BlueGreenDeployment.html

Returns:

See Also:



8900
8901
8902
8903
# File 'lib/aws-sdk-rds/client.rb', line 8900

def delete_blue_green_deployment(params = {}, options = {})
  req = build_request(:delete_blue_green_deployment, params)
  req.send_request(options)
end

#delete_custom_db_engine_version(params = {}) ⇒ Types::DBEngineVersion

Deletes a custom engine version. To run this command, make sure you meet the following prerequisites:

  • The CEV must not be the default for RDS Custom. If it is, change the default before running this command.

  • The CEV must not be associated with an RDS Custom DB instance, RDS Custom instance snapshot, or automated backup of your RDS Custom instance.

Typically, deletion takes a few minutes.

<note markdown=“1”> The MediaImport service that imports files from Amazon S3 to create CEVs isn’t integrated with Amazon Web Services CloudTrail. If you turn on data logging for Amazon RDS in CloudTrail, calls to the ‘DeleteCustomDbEngineVersion` event aren’t logged. However, you might see calls from the API gateway that accesses your Amazon S3 bucket. These calls originate from the MediaImport service for the ‘DeleteCustomDbEngineVersion` event.

</note>

For more information, see [Deleting a CEV] in the *Amazon RDS User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-cev.html#custom-cev.delete

Examples:

Request syntax with placeholder values


resp = client.delete_custom_db_engine_version({
  engine: "CustomEngineName", # required
  engine_version: "CustomEngineVersion", # required
})

Response structure


resp.engine #=> String
resp.engine_version #=> String
resp.db_parameter_group_family #=> String
resp.db_engine_description #=> String
resp.db_engine_version_description #=> String
resp.default_character_set.character_set_name #=> String
resp.default_character_set.character_set_description #=> String
resp.image.image_id #=> String
resp.image.status #=> String
resp.db_engine_media_type #=> String
resp.supported_character_sets #=> Array
resp.supported_character_sets[0].character_set_name #=> String
resp.supported_character_sets[0].character_set_description #=> String
resp.supported_nchar_character_sets #=> Array
resp.supported_nchar_character_sets[0].character_set_name #=> String
resp.supported_nchar_character_sets[0].character_set_description #=> String
resp.valid_upgrade_target #=> Array
resp.valid_upgrade_target[0].engine #=> String
resp.valid_upgrade_target[0].engine_version #=> String
resp.valid_upgrade_target[0].description #=> String
resp.valid_upgrade_target[0].auto_upgrade #=> Boolean
resp.valid_upgrade_target[0].is_major_version_upgrade #=> Boolean
resp.valid_upgrade_target[0].supported_engine_modes #=> Array
resp.valid_upgrade_target[0].supported_engine_modes[0] #=> String
resp.valid_upgrade_target[0].supports_parallel_query #=> Boolean
resp.valid_upgrade_target[0].supports_global_databases #=> Boolean
resp.valid_upgrade_target[0].supports_babelfish #=> Boolean
resp.valid_upgrade_target[0].supports_limitless_database #=> Boolean
resp.valid_upgrade_target[0].supports_local_write_forwarding #=> Boolean
resp.valid_upgrade_target[0].supports_integrations #=> Boolean
resp.supported_timezones #=> Array
resp.supported_timezones[0].timezone_name #=> String
resp.exportable_log_types #=> Array
resp.exportable_log_types[0] #=> String
resp.supports_log_exports_to_cloudwatch_logs #=> Boolean
resp.supports_read_replica #=> Boolean
resp.supported_engine_modes #=> Array
resp.supported_engine_modes[0] #=> String
resp.supported_feature_names #=> Array
resp.supported_feature_names[0] #=> String
resp.status #=> String
resp.supports_parallel_query #=> Boolean
resp.supports_global_databases #=> Boolean
resp.major_engine_version #=> String
resp.database_installation_files_s3_bucket_name #=> String
resp.database_installation_files_s3_prefix #=> String
resp.db_engine_version_arn #=> String
resp.kms_key_id #=> String
resp.create_time #=> Time
resp.tag_list #=> Array
resp.tag_list[0].key #=> String
resp.tag_list[0].value #=> String
resp.supports_babelfish #=> Boolean
resp.custom_db_engine_version_manifest #=> String
resp.supports_limitless_database #=> Boolean
resp.supports_certificate_rotation_without_restart #=> Boolean
resp.supported_ca_certificate_identifiers #=> Array
resp.supported_ca_certificate_identifiers[0] #=> String
resp.supports_local_write_forwarding #=> Boolean
resp.supports_integrations #=> Boolean
resp.serverless_v2_features_support.min_capacity #=> Float
resp.serverless_v2_features_support.max_capacity #=> Float

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :engine (required, String)

    The database engine. RDS Custom for Oracle supports the following values:

    • ‘custom-oracle-ee`

    • ‘custom-oracle-ee-cdb`

    • ‘custom-oracle-se2`

    • ‘custom-oracle-se2-cdb`

  • :engine_version (required, String)

    The custom engine version (CEV) for your DB instance. This option is required for RDS Custom, but optional for Amazon RDS. The combination of ‘Engine` and `EngineVersion` is unique per customer per Amazon Web Services Region.

Returns:

See Also:



9066
9067
9068
9069
# File 'lib/aws-sdk-rds/client.rb', line 9066

def delete_custom_db_engine_version(params = {}, options = {})
  req = build_request(:delete_custom_db_engine_version, params)
  req.send_request(options)
end

#delete_db_cluster(params = {}) ⇒ Types::DeleteDBClusterResult

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.

If you’re deleting a Multi-AZ DB cluster with read replicas, all cluster members are terminated and read replicas are promoted to standalone instances.

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To delete a DB cluster


# The following example deletes the DB cluster named mycluster and takes a final snapshot named mycluster-final-snapshot.
# The status of the DB cluster is available while the snapshot is being taken. 

resp = client.delete_db_cluster({
  db_cluster_identifier: "mycluster", 
  final_db_snapshot_identifier: "mycluster-final-snapshot", 
  skip_final_snapshot: false, 
})

resp.to_h outputs the following:
{
  db_cluster: {
    allocated_storage: 20, 
    availability_zones: [
      "eu-central-1b", 
      "eu-central-1c", 
      "eu-central-1a", 
    ], 
    backup_retention_period: 7, 
    db_cluster_identifier: "mycluster", 
    db_cluster_parameter_group: "default.aurora-postgresql10", 
    db_subnet_group: "default-vpc-aa11bb22", 
    status: "available", 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.delete_db_cluster({
  db_cluster_identifier: "String", # required
  skip_final_snapshot: false,
  final_db_snapshot_identifier: "String",
  delete_automated_backups: false,
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The DB cluster identifier for the DB cluster to be deleted. This parameter isn’t case-sensitive.

    Constraints:

    • Must match an existing DBClusterIdentifier.

    ^

  • :skip_final_snapshot (Boolean)

    Specifies whether to skip the creation of a final DB cluster snapshot before RDS deletes the DB cluster. If you set this value to ‘true`, RDS doesn’t create a final DB cluster snapshot. If you set this value to ‘false` or don’t specify it, RDS creates a DB cluster snapshot before it deletes the DB cluster. By default, this parameter is disabled, so RDS creates a final DB cluster snapshot.

    <note markdown=“1”> If ‘SkipFinalSnapshot` is disabled, you must specify a value for the `FinalDBSnapshotIdentifier` parameter.

    </note>
    
  • :final_db_snapshot_identifier (String)

    The DB cluster snapshot identifier of the new DB cluster snapshot created when ‘SkipFinalSnapshot` is disabled.

    <note markdown=“1”> If you specify this parameter and also skip the creation of a final DB cluster snapshot with the ‘SkipFinalShapshot` parameter, the request results in an error.

    </note>
    

    Constraints:

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

    • First character must be a letter

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

  • :delete_automated_backups (Boolean)

    Specifies whether to remove automated backups immediately after the DB cluster is deleted. This parameter isn’t case-sensitive. The default is to remove automated backups immediately after the DB cluster is deleted.

Returns:

See Also:



9327
9328
9329
9330
# File 'lib/aws-sdk-rds/client.rb', line 9327

def delete_db_cluster(params = {}, options = {})
  req = build_request(:delete_db_cluster, params)
  req.send_request(options)
end

#delete_db_cluster_automated_backup(params = {}) ⇒ Types::DeleteDBClusterAutomatedBackupResult

Deletes automated backups using the ‘DbClusterResourceId` value of the source DB cluster or the Amazon Resource Name (ARN) of the automated backups.

Examples:

Request syntax with placeholder values


resp = client.delete_db_cluster_automated_backup({
  db_cluster_resource_id: "String", # required
})

Response structure


resp.db_cluster_automated_backup.engine #=> String
resp.db_cluster_automated_backup.vpc_id #=> String
resp.db_cluster_automated_backup.db_cluster_automated_backups_arn #=> String
resp.db_cluster_automated_backup.db_cluster_identifier #=> String
resp.db_cluster_automated_backup.restore_window.earliest_time #=> Time
resp.db_cluster_automated_backup.restore_window.latest_time #=> Time
resp.db_cluster_automated_backup.master_username #=> String
resp.db_cluster_automated_backup.db_cluster_resource_id #=> String
resp.db_cluster_automated_backup.region #=> String
resp.db_cluster_automated_backup.license_model #=> String
resp.db_cluster_automated_backup.status #=> String
resp.db_cluster_automated_backup.iam_database_authentication_enabled #=> Boolean
resp.db_cluster_automated_backup.cluster_create_time #=> Time
resp.db_cluster_automated_backup.storage_encrypted #=> Boolean
resp.db_cluster_automated_backup.allocated_storage #=> Integer
resp.db_cluster_automated_backup.engine_version #=> String
resp.db_cluster_automated_backup.db_cluster_arn #=> String
resp.db_cluster_automated_backup.backup_retention_period #=> Integer
resp.db_cluster_automated_backup.engine_mode #=> String
resp.db_cluster_automated_backup.availability_zones #=> Array
resp.db_cluster_automated_backup.availability_zones[0] #=> String
resp.db_cluster_automated_backup.port #=> Integer
resp.db_cluster_automated_backup.kms_key_id #=> String
resp.db_cluster_automated_backup.storage_type #=> String
resp.db_cluster_automated_backup.iops #=> Integer
resp.db_cluster_automated_backup.aws_backup_recovery_point_arn #=> String
resp.db_cluster_automated_backup.storage_throughput #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_resource_id (required, String)

    The identifier for the source DB cluster, which can’t be changed and which is unique to an Amazon Web Services Region.

Returns:

See Also:



9384
9385
9386
9387
# File 'lib/aws-sdk-rds/client.rb', line 9384

def delete_db_cluster_automated_backup(params = {}, options = {})
  req = build_request(:delete_db_cluster_automated_backup, params)
  req.send_request(options)
end

#delete_db_cluster_endpoint(params = {}) ⇒ Types::DBClusterEndpoint

Deletes a custom endpoint and removes it from an Amazon Aurora DB cluster.

<note markdown=“1”> This action only applies to Aurora DB clusters.

</note>

Examples:

Example: To delete a custom DB cluster endpoint


# The following example deletes the specified custom DB cluster endpoint.

resp = client.delete_db_cluster_endpoint({
  db_cluster_endpoint_identifier: "mycustomendpoint", 
})

resp.to_h outputs the following:
{
  custom_endpoint_type: "READER", 
  db_cluster_endpoint_arn: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:mycustomendpoint", 
  db_cluster_endpoint_identifier: "mycustomendpoint", 
  db_cluster_endpoint_resource_identifier: "cluster-endpoint-ANPAJ4AE5446DAEXAMPLE", 
  db_cluster_identifier: "mydbcluster", 
  endpoint: "mycustomendpoint.cluster-custom-cnpexample.us-east-1.rds.amazonaws.com", 
  endpoint_type: "CUSTOM", 
  excluded_members: [
  ], 
  static_members: [
    "dbinstance1", 
    "dbinstance2", 
    "dbinstance3", 
  ], 
  status: "deleting", 
}

Request syntax with placeholder values


resp = client.delete_db_cluster_endpoint({
  db_cluster_endpoint_identifier: "String", # required
})

Response structure


resp.db_cluster_endpoint_identifier #=> String
resp.db_cluster_identifier #=> String
resp.db_cluster_endpoint_resource_identifier #=> String
resp.endpoint #=> String
resp.status #=> String
resp.endpoint_type #=> String
resp.custom_endpoint_type #=> String
resp.static_members #=> Array
resp.static_members[0] #=> String
resp.excluded_members #=> Array
resp.excluded_members[0] #=> String
resp.db_cluster_endpoint_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_endpoint_identifier (required, String)

    The identifier associated with the custom endpoint. This parameter is stored as a lowercase string.

Returns:

See Also:



9466
9467
9468
9469
# File 'lib/aws-sdk-rds/client.rb', line 9466

def delete_db_cluster_endpoint(params = {}, options = {})
  req = build_request(:delete_db_cluster_endpoint, params)
  req.send_request(options)
end

#delete_db_cluster_parameter_group(params = {}) ⇒ Struct

Deletes a specified DB cluster parameter group. The DB cluster parameter group to be deleted can’t be associated with any DB clusters.

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To delete a DB cluster parameter group


# The following example deletes the specified DB cluster parameter group.

resp = client.delete_db_cluster_parameter_group({
  db_cluster_parameter_group_name: "mydbclusterparametergroup", 
})

Request syntax with placeholder values


resp = client.delete_db_cluster_parameter_group({
  db_cluster_parameter_group_name: "String", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_parameter_group_name (required, String)

    The name of the DB cluster parameter group.

    Constraints:

    • Must be the name of an existing DB cluster parameter group.

    • You can’t delete a default DB cluster parameter group.

    • Can’t be associated with any DB clusters.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



9518
9519
9520
9521
# File 'lib/aws-sdk-rds/client.rb', line 9518

def delete_db_cluster_parameter_group(params = {}, options = {})
  req = build_request(:delete_db_cluster_parameter_group, params)
  req.send_request(options)
end

#delete_db_cluster_snapshot(params = {}) ⇒ Types::DeleteDBClusterSnapshotResult

Deletes a DB cluster snapshot. If the snapshot is being copied, the copy operation is terminated.

<note markdown=“1”> The DB cluster snapshot must be in the ‘available` state to be deleted.

</note>

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To delete a DB cluster snapshot


resp = client.delete_db_cluster_snapshot({
  db_cluster_snapshot_identifier: "mydbclustersnapshot", 
})

resp.to_h outputs the following:
{
  db_cluster_snapshot: {
    allocated_storage: 0, 
    availability_zones: [
      "us-east-1a", 
      "us-east-1b", 
      "us-east-1e", 
    ], 
    cluster_create_time: Time.parse("2019-04-15T14:18:42.785Z"), 
    db_cluster_identifier: "mydbcluster", 
    db_cluster_snapshot_arn: "arn:aws:rds:us-east-1:123456789012:cluster-snapshot:mydbclustersnapshot", 
    db_cluster_snapshot_identifier: "mydbclustersnapshot", 
    engine: "aurora-mysql", 
    engine_version: "5.7.mysql_aurora.2.04.2", 
    iam_database_authentication_enabled: false, 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE", 
    license_model: "aurora-mysql", 
    master_username: "myadmin", 
    percent_progress: 100, 
    port: 0, 
    snapshot_create_time: Time.parse("2019-06-18T21:21:00.469Z"), 
    snapshot_type: "manual", 
    status: "available", 
    storage_encrypted: true, 
    vpc_id: "vpc-6594f31c", 
  }, 
}

Request syntax with placeholder values


resp = client.delete_db_cluster_snapshot({
  db_cluster_snapshot_identifier: "String", # required
})

Response structure


resp.db_cluster_snapshot.availability_zones #=> Array
resp.db_cluster_snapshot.availability_zones[0] #=> String
resp.db_cluster_snapshot.db_cluster_snapshot_identifier #=> String
resp.db_cluster_snapshot.db_cluster_identifier #=> String
resp.db_cluster_snapshot.snapshot_create_time #=> Time
resp.db_cluster_snapshot.engine #=> String
resp.db_cluster_snapshot.engine_mode #=> String
resp.db_cluster_snapshot.allocated_storage #=> Integer
resp.db_cluster_snapshot.status #=> String
resp.db_cluster_snapshot.port #=> Integer
resp.db_cluster_snapshot.vpc_id #=> String
resp.db_cluster_snapshot.cluster_create_time #=> Time
resp.db_cluster_snapshot.master_username #=> String
resp.db_cluster_snapshot.engine_version #=> String
resp.db_cluster_snapshot.license_model #=> String
resp.db_cluster_snapshot.snapshot_type #=> String
resp.db_cluster_snapshot.percent_progress #=> Integer
resp.db_cluster_snapshot.storage_encrypted #=> Boolean
resp.db_cluster_snapshot.kms_key_id #=> String
resp.db_cluster_snapshot.db_cluster_snapshot_arn #=> String
resp.db_cluster_snapshot.source_db_cluster_snapshot_arn #=> String
resp.db_cluster_snapshot.iam_database_authentication_enabled #=> Boolean
resp.db_cluster_snapshot.tag_list #=> Array
resp.db_cluster_snapshot.tag_list[0].key #=> String
resp.db_cluster_snapshot.tag_list[0].value #=> String
resp.db_cluster_snapshot.db_system_id #=> String
resp.db_cluster_snapshot.storage_type #=> String
resp.db_cluster_snapshot.db_cluster_resource_id #=> String
resp.db_cluster_snapshot.storage_throughput #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_snapshot_identifier (required, String)

    The identifier of the DB cluster snapshot to delete.

    Constraints: Must be the name of an existing DB cluster snapshot in the ‘available` state.

Returns:

See Also:



9630
9631
9632
9633
# File 'lib/aws-sdk-rds/client.rb', line 9630

def delete_db_cluster_snapshot(params = {}, options = {})
  req = build_request(:delete_db_cluster_snapshot, params)
  req.send_request(options)
end

#delete_db_instance(params = {}) ⇒ Types::DeleteDBInstanceResult

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. However, manual DB snapshots of the DB instance aren’t deleted.

If you request a final DB snapshot, the status of the Amazon RDS DB instance is ‘deleting` until the DB snapshot is created. This operation can’t be canceled or reverted after it begins. To monitor the status of this operation, use ‘DescribeDBInstance`.

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 you skip creation of the final snapshot with the `SkipFinalSnapshot` parameter.

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 use the ‘PromoteReadReplicaDBCluster` operation to promote the DB cluster so that it’s no longer a read replica. After the promotion completes, use the ‘DeleteDBInstance` operation to delete the final instance in the DB cluster.

For RDS Custom DB instances, deleting the DB instance permanently deletes the EC2 instance and the associated EBS volumes. Make sure that you don’t terminate or delete these resources before you delete the DB instance. Otherwise, deleting the DB instance and creation of the final snapshot might fail.

Examples:

Example: To delete a DB instance


# The following example deletes the specified DB instance after creating a final DB snapshot named
# test-instance-final-snap.

resp = client.delete_db_instance({
  db_instance_identifier: "test-instance", 
  final_db_snapshot_identifier: "test-instance-final-snap", 
  skip_final_snapshot: false, 
})

resp.to_h outputs the following:
{
  db_instance: {
    db_instance_identifier: "test-instance", 
    db_instance_status: "deleting", 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.delete_db_instance({
  db_instance_identifier: "String", # required
  skip_final_snapshot: false,
  final_db_snapshot_identifier: "String",
  delete_automated_backups: false,
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The DB instance identifier for the DB instance to be deleted. This parameter isn’t case-sensitive.

    Constraints:

    • Must match the name of an existing DB instance.

    ^

  • :skip_final_snapshot (Boolean)

    Specifies whether to skip the creation of a final DB snapshot before deleting the instance. If you enable this parameter, RDS doesn’t create a DB snapshot. If you don’t enable this parameter, RDS creates a DB snapshot before the DB instance is deleted. By default, skip isn’t enabled, and the DB snapshot is created.

    <note markdown=“1”> If you don’t enable this parameter, you must specify the ‘FinalDBSnapshotIdentifier` parameter.

    </note>
    

    When a DB instance is in a failure state and has a status of ‘failed`, `incompatible-restore`, or `incompatible-network`, RDS can delete the instance only if you enable this parameter.

    If you delete a read replica or an RDS Custom instance, you must enable this setting.

    This setting is required for RDS Custom.

  • :final_db_snapshot_identifier (String)

    The ‘DBSnapshotIdentifier` of the new `DBSnapshot` created when the `SkipFinalSnapshot` parameter is disabled.

    <note markdown=“1”> If you enable this parameter and also enable SkipFinalShapshot, the command results in an error.

    </note>
    

    This setting doesn’t apply to RDS Custom.

    Constraints:

    • Must be 1 to 255 letters or numbers.

    • First character must be a letter.

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

    • Can’t be specified when deleting a read replica.

  • :delete_automated_backups (Boolean)

    Specifies whether to remove automated backups immediately after the DB instance is deleted. This parameter isn’t case-sensitive. The default is to remove automated backups immediately after the DB instance is deleted.

Returns:

See Also:



9931
9932
9933
9934
# File 'lib/aws-sdk-rds/client.rb', line 9931

def delete_db_instance(params = {}, options = {})
  req = build_request(:delete_db_instance, params)
  req.send_request(options)
end

#delete_db_instance_automated_backup(params = {}) ⇒ Types::DeleteDBInstanceAutomatedBackupResult

Deletes automated backups using the ‘DbiResourceId` value of the source DB instance or the Amazon Resource Name (ARN) of the automated backups.

Examples:

Example: To delete a replicated automated backup from a Region


# The following example deletes the automated backup with the specified Amazon Resource Name (ARN).

resp = client.delete_db_instance_automated_backup({
  db_instance_automated_backups_arn: "arn:aws:rds:us-west-2:123456789012:auto-backup:ab-jkib2gfq5rv7replzadausbrktni2bn4example", 
})

resp.to_h outputs the following:
{
  db_instance_automated_backup: {
    allocated_storage: 20, 
    availability_zone: "us-east-1b", 
    backup_retention_period: 7, 
    db_instance_arn: "arn:aws:rds:us-east-1:123456789012:db:new-orcl-db", 
    db_instance_automated_backups_arn: "arn:aws:rds:us-west-2:123456789012:auto-backup:ab-jkib2gfq5rv7replzadausbrktni2bn4example", 
    db_instance_identifier: "new-orcl-db", 
    dbi_resource_id: "db-JKIB2GFQ5RV7REPLZA4EXAMPLE", 
    encrypted: false, 
    engine: "oracle-se2", 
    engine_version: "12.1.0.2.v21", 
    iam_database_authentication_enabled: false, 
    instance_create_time: Time.parse("2020-12-04T15:28:31Z"), 
    license_model: "bring-your-own-license", 
    master_username: "admin", 
    option_group_name: "default:oracle-se2-12-1", 
    port: 1521, 
    region: "us-east-1", 
    restore_window: {
    }, 
    status: "deleting", 
    storage_type: "gp2", 
    vpc_id: "vpc-########", 
  }, 
}

Request syntax with placeholder values


resp = client.delete_db_instance_automated_backup({
  dbi_resource_id: "String",
  db_instance_automated_backups_arn: "String",
})

Response structure


resp.db_instance_automated_backup.db_instance_arn #=> String
resp.db_instance_automated_backup.dbi_resource_id #=> String
resp.db_instance_automated_backup.region #=> String
resp.db_instance_automated_backup.db_instance_identifier #=> String
resp.db_instance_automated_backup.restore_window.earliest_time #=> Time
resp.db_instance_automated_backup.restore_window.latest_time #=> Time
resp.db_instance_automated_backup.allocated_storage #=> Integer
resp.db_instance_automated_backup.status #=> String
resp.db_instance_automated_backup.port #=> Integer
resp.db_instance_automated_backup.availability_zone #=> String
resp.db_instance_automated_backup.vpc_id #=> String
resp.db_instance_automated_backup.instance_create_time #=> Time
resp.db_instance_automated_backup.master_username #=> String
resp.db_instance_automated_backup.engine #=> String
resp.db_instance_automated_backup.engine_version #=> String
resp.db_instance_automated_backup.license_model #=> String
resp.db_instance_automated_backup.iops #=> Integer
resp.db_instance_automated_backup.option_group_name #=> String
resp.db_instance_automated_backup.tde_credential_arn #=> String
resp.db_instance_automated_backup.encrypted #=> Boolean
resp.db_instance_automated_backup.storage_type #=> String
resp.db_instance_automated_backup.kms_key_id #=> String
resp.db_instance_automated_backup.timezone #=> String
resp.db_instance_automated_backup.iam_database_authentication_enabled #=> Boolean
resp.db_instance_automated_backup.backup_retention_period #=> Integer
resp.db_instance_automated_backup.db_instance_automated_backups_arn #=> String
resp.db_instance_automated_backup.db_instance_automated_backups_replications #=> Array
resp.db_instance_automated_backup.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance_automated_backup.backup_target #=> String
resp.db_instance_automated_backup.storage_throughput #=> Integer
resp.db_instance_automated_backup.aws_backup_recovery_point_arn #=> String
resp.db_instance_automated_backup.dedicated_log_volume #=> Boolean
resp.db_instance_automated_backup.multi_tenant #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :dbi_resource_id (String)

    The identifier for the source DB instance, which can’t be changed and which is unique to an Amazon Web Services Region.

  • :db_instance_automated_backups_arn (String)

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

    This setting doesn’t apply to RDS Custom.

Returns:

See Also:



10039
10040
10041
10042
# File 'lib/aws-sdk-rds/client.rb', line 10039

def delete_db_instance_automated_backup(params = {}, options = {})
  req = build_request(:delete_db_instance_automated_backup, params)
  req.send_request(options)
end

#delete_db_parameter_group(params = {}) ⇒ Struct

Deletes a specified DB parameter group. The DB parameter group to be deleted can’t be associated with any DB instances.

Examples:

Example: To delete a DB parameter group


# The following example deletes a DB parameter group.

resp = client.delete_db_parameter_group({
  db_parameter_group_name: "mydbparametergroup", 
})

Request syntax with placeholder values


resp = client.delete_db_parameter_group({
  db_parameter_group_name: "String", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_parameter_group_name (required, String)

    The name of the DB parameter group.

    Constraints:

    • Must be the name of an existing DB parameter group

    • You can’t delete a default DB parameter group

    • Can’t be associated with any DB instances

Returns:

  • (Struct)

    Returns an empty response.

See Also:



10079
10080
10081
10082
# File 'lib/aws-sdk-rds/client.rb', line 10079

def delete_db_parameter_group(params = {}, options = {})
  req = build_request(:delete_db_parameter_group, params)
  req.send_request(options)
end

#delete_db_proxy(params = {}) ⇒ Types::DeleteDBProxyResponse

Deletes an existing DB proxy.

Examples:

Request syntax with placeholder values


resp = client.delete_db_proxy({
  db_proxy_name: "String", # required
})

Response structure


resp.db_proxy.db_proxy_name #=> String
resp.db_proxy.db_proxy_arn #=> String
resp.db_proxy.status #=> String, one of "available", "modifying", "incompatible-network", "insufficient-resource-limits", "creating", "deleting", "suspended", "suspending", "reactivating"
resp.db_proxy.engine_family #=> String
resp.db_proxy.vpc_id #=> String
resp.db_proxy.vpc_security_group_ids #=> Array
resp.db_proxy.vpc_security_group_ids[0] #=> String
resp.db_proxy.vpc_subnet_ids #=> Array
resp.db_proxy.vpc_subnet_ids[0] #=> String
resp.db_proxy.auth #=> Array
resp.db_proxy.auth[0].description #=> String
resp.db_proxy.auth[0].user_name #=> String
resp.db_proxy.auth[0].auth_scheme #=> String, one of "SECRETS"
resp.db_proxy.auth[0].secret_arn #=> String
resp.db_proxy.auth[0].iam_auth #=> String, one of "DISABLED", "REQUIRED", "ENABLED"
resp.db_proxy.auth[0].client_password_auth_type #=> String, one of "MYSQL_NATIVE_PASSWORD", "MYSQL_CACHING_SHA2_PASSWORD", "POSTGRES_SCRAM_SHA_256", "POSTGRES_MD5", "SQL_SERVER_AUTHENTICATION"
resp.db_proxy.role_arn #=> String
resp.db_proxy.endpoint #=> String
resp.db_proxy.require_tls #=> Boolean
resp.db_proxy.idle_client_timeout #=> Integer
resp.db_proxy.debug_logging #=> Boolean
resp.db_proxy.created_date #=> Time
resp.db_proxy.updated_date #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_name (required, String)

    The name of the DB proxy to delete.

Returns:

See Also:



10129
10130
10131
10132
# File 'lib/aws-sdk-rds/client.rb', line 10129

def delete_db_proxy(params = {}, options = {})
  req = build_request(:delete_db_proxy, params)
  req.send_request(options)
end

#delete_db_proxy_endpoint(params = {}) ⇒ Types::DeleteDBProxyEndpointResponse

Deletes a ‘DBProxyEndpoint`. Doing so removes the ability to access the DB proxy using the endpoint that you defined. The endpoint that you delete might have provided capabilities such as read/write or read-only operations, or using a different VPC than the DB proxy’s default VPC.

Examples:

Request syntax with placeholder values


resp = client.delete_db_proxy_endpoint({
  db_proxy_endpoint_name: "DBProxyEndpointName", # required
})

Response structure


resp.db_proxy_endpoint.db_proxy_endpoint_name #=> String
resp.db_proxy_endpoint.db_proxy_endpoint_arn #=> String
resp.db_proxy_endpoint.db_proxy_name #=> String
resp.db_proxy_endpoint.status #=> String, one of "available", "modifying", "incompatible-network", "insufficient-resource-limits", "creating", "deleting"
resp.db_proxy_endpoint.vpc_id #=> String
resp.db_proxy_endpoint.vpc_security_group_ids #=> Array
resp.db_proxy_endpoint.vpc_security_group_ids[0] #=> String
resp.db_proxy_endpoint.vpc_subnet_ids #=> Array
resp.db_proxy_endpoint.vpc_subnet_ids[0] #=> String
resp.db_proxy_endpoint.endpoint #=> String
resp.db_proxy_endpoint.created_date #=> Time
resp.db_proxy_endpoint.target_role #=> String, one of "READ_WRITE", "READ_ONLY"
resp.db_proxy_endpoint.is_default #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_endpoint_name (required, String)

    The name of the DB proxy endpoint to delete.

Returns:

See Also:



10173
10174
10175
10176
# File 'lib/aws-sdk-rds/client.rb', line 10173

def delete_db_proxy_endpoint(params = {}, options = {})
  req = build_request(:delete_db_proxy_endpoint, params)
  req.send_request(options)
end

#delete_db_security_group(params = {}) ⇒ Struct

Deletes a DB security group.

The specified DB security group must not be associated with any DB instances.

<note markdown=“1”> EC2-Classic was retired on August 15, 2022. If you haven’t migrated from EC2-Classic to a VPC, we recommend that you migrate as soon as possible. For more information, see [Migrate from EC2-Classic to a VPC] in the *Amazon EC2 User Guide*, the blog [EC2-Classic Networking is Retiring – Here’s How to Prepare], and [Moving a DB instance not in a VPC into a VPC] in the *Amazon RDS User Guide*.

</note>

[1]: docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html [2]: aws.amazon.com/blogs/aws/ec2-classic-is-retiring-heres-how-to-prepare/ [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.Non-VPC2VPC.html

Examples:

Example: To delete a DB security group


# The following example deletes a DB security group.

resp = client.delete_db_security_group({
  db_security_group_name: "mysecgroup", 
})

Request syntax with placeholder values


resp = client.delete_db_security_group({
  db_security_group_name: "String", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_security_group_name (required, String)

    The name of the DB security group to delete.

    <note markdown=“1”> You can’t delete the default DB security group.

    </note>
    

    Constraints:

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

    • First character must be a letter

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

    • Must not be “Default”

Returns:

  • (Struct)

    Returns an empty response.

See Also:



10236
10237
10238
10239
# File 'lib/aws-sdk-rds/client.rb', line 10236

def delete_db_security_group(params = {}, options = {})
  req = build_request(:delete_db_security_group, params)
  req.send_request(options)
end

#delete_db_shard_group(params = {}) ⇒ Types::DBShardGroup

Deletes an Aurora Limitless Database DB shard group.

Examples:

Request syntax with placeholder values


resp = client.delete_db_shard_group({
  db_shard_group_identifier: "DBShardGroupIdentifier", # required
})

Response structure


resp.db_shard_group_resource_id #=> String
resp.db_shard_group_identifier #=> String
resp.db_cluster_identifier #=> String
resp.max_acu #=> Float
resp.min_acu #=> Float
resp.compute_redundancy #=> Integer
resp.status #=> String
resp.publicly_accessible #=> Boolean
resp.endpoint #=> String
resp.db_shard_group_arn #=> String
resp.tag_list #=> Array
resp.tag_list[0].key #=> String
resp.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_shard_group_identifier (required, String)

    The name of the DB shard group to delete.

Returns:

See Also:



10286
10287
10288
10289
# File 'lib/aws-sdk-rds/client.rb', line 10286

def delete_db_shard_group(params = {}, options = {})
  req = build_request(:delete_db_shard_group, params)
  req.send_request(options)
end

#delete_db_snapshot(params = {}) ⇒ Types::DeleteDBSnapshotResult

Deletes a DB snapshot. If the snapshot is being copied, the copy operation is terminated.

<note markdown=“1”> The DB snapshot must be in the ‘available` state to be deleted.

</note>

Examples:

Example: To delete a DB snapshot


# The following example deletes the specified DB snapshot.

resp = client.delete_db_snapshot({
  db_snapshot_identifier: "mydbsnapshot", 
})

resp.to_h outputs the following:
{
  db_snapshot: {
    allocated_storage: 100, 
    availability_zone: "us-east-1b", 
    db_instance_identifier: "database-mysql", 
    db_snapshot_arn: "arn:aws:rds:us-east-1:123456789012:snapshot:mydbsnapshot", 
    db_snapshot_identifier: "mydbsnapshot", 
    dbi_resource_id: "db-AKIAIOSFODNN7EXAMPLE", 
    encrypted: true, 
    engine: "mysql", 
    engine_version: "5.6.40", 
    iam_database_authentication_enabled: false, 
    instance_create_time: Time.parse("2019-04-30T15:45:53.663Z"), 
    iops: 1000, 
    kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE", 
    license_model: "general-public-license", 
    master_username: "admin", 
    option_group_name: "default:mysql-5-6", 
    percent_progress: 100, 
    port: 3306, 
    processor_features: [
    ], 
    snapshot_create_time: Time.parse("2019-06-18T22:08:40.702Z"), 
    snapshot_type: "manual", 
    status: "deleted", 
    storage_type: "io1", 
    vpc_id: "vpc-6594f31c", 
  }, 
}

Request syntax with placeholder values


resp = client.delete_db_snapshot({
  db_snapshot_identifier: "String", # required
})

Response structure


resp.db_snapshot.db_snapshot_identifier #=> String
resp.db_snapshot.db_instance_identifier #=> String
resp.db_snapshot.snapshot_create_time #=> Time
resp.db_snapshot.engine #=> String
resp.db_snapshot.allocated_storage #=> Integer
resp.db_snapshot.status #=> String
resp.db_snapshot.port #=> Integer
resp.db_snapshot.availability_zone #=> String
resp.db_snapshot.vpc_id #=> String
resp.db_snapshot.instance_create_time #=> Time
resp.db_snapshot.master_username #=> String
resp.db_snapshot.engine_version #=> String
resp.db_snapshot.license_model #=> String
resp.db_snapshot.snapshot_type #=> String
resp.db_snapshot.iops #=> Integer
resp.db_snapshot.option_group_name #=> String
resp.db_snapshot.percent_progress #=> Integer
resp.db_snapshot.source_region #=> String
resp.db_snapshot.source_db_snapshot_identifier #=> String
resp.db_snapshot.storage_type #=> String
resp.db_snapshot.tde_credential_arn #=> String
resp.db_snapshot.encrypted #=> Boolean
resp.db_snapshot.kms_key_id #=> String
resp.db_snapshot.db_snapshot_arn #=> String
resp.db_snapshot.timezone #=> String
resp.db_snapshot.iam_database_authentication_enabled #=> Boolean
resp.db_snapshot.processor_features #=> Array
resp.db_snapshot.processor_features[0].name #=> String
resp.db_snapshot.processor_features[0].value #=> String
resp.db_snapshot.dbi_resource_id #=> String
resp.db_snapshot.tag_list #=> Array
resp.db_snapshot.tag_list[0].key #=> String
resp.db_snapshot.tag_list[0].value #=> String
resp.db_snapshot.original_snapshot_create_time #=> Time
resp.db_snapshot.snapshot_database_time #=> Time
resp.db_snapshot.snapshot_target #=> String
resp.db_snapshot.storage_throughput #=> Integer
resp.db_snapshot.db_system_id #=> String
resp.db_snapshot.dedicated_log_volume #=> Boolean
resp.db_snapshot.multi_tenant #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_snapshot_identifier (required, String)

    The DB snapshot identifier.

    Constraints: Must be the name of an existing DB snapshot in the ‘available` state.

Returns:

See Also:



10401
10402
10403
10404
# File 'lib/aws-sdk-rds/client.rb', line 10401

def delete_db_snapshot(params = {}, options = {})
  req = build_request(:delete_db_snapshot, params)
  req.send_request(options)
end

#delete_db_subnet_group(params = {}) ⇒ Struct

Deletes a DB subnet group.

<note markdown=“1”> The specified database subnet group must not be associated with any DB instances.

</note>

Examples:

Example: To delete a DB subnet group


# The following example deletes the DB subnet group called mysubnetgroup.

resp = client.delete_db_subnet_group({
  db_subnet_group_name: "mysubnetgroup", 
})

Request syntax with placeholder values


resp = client.delete_db_subnet_group({
  db_subnet_group_name: "String", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_subnet_group_name (required, String)

    The name of the database subnet group to delete.

    <note markdown=“1”> You can’t delete the default subnet group.

    </note>
    

    Constraints: Must match the name of an existing DBSubnetGroup. Must not be default.

    Example: ‘mydbsubnetgroup`

Returns:

  • (Struct)

    Returns an empty response.

See Also:



10446
10447
10448
10449
# File 'lib/aws-sdk-rds/client.rb', line 10446

def delete_db_subnet_group(params = {}, options = {})
  req = build_request(:delete_db_subnet_group, params)
  req.send_request(options)
end

#delete_event_subscription(params = {}) ⇒ Types::DeleteEventSubscriptionResult

Deletes an RDS event notification subscription.

Examples:

Example: To delete an event subscription


# The following example deletes the specified event subscription.

resp = client.delete_event_subscription({
  subscription_name: "my-instance-events", 
})

resp.to_h outputs the following:
{
  event_subscription: {
    cust_subscription_id: "my-instance-events", 
    customer_aws_id: "123456789012", 
    enabled: false, 
    event_categories_list: [
      "backup", 
      "recovery", 
    ], 
    event_subscription_arn: "arn:aws:rds:us-east-1:123456789012:es:my-instance-events", 
    sns_topic_arn: "arn:aws:sns:us-east-1:123456789012:interesting-events", 
    source_ids_list: [
      "test-instance", 
    ], 
    source_type: "db-instance", 
    status: "deleting", 
    subscription_creation_time: "2018-07-31 23:22:01.893", 
  }, 
}

Request syntax with placeholder values


resp = client.delete_event_subscription({
  subscription_name: "String", # required
})

Response structure


resp.event_subscription.customer_aws_id #=> String
resp.event_subscription.cust_subscription_id #=> String
resp.event_subscription.sns_topic_arn #=> String
resp.event_subscription.status #=> String
resp.event_subscription.subscription_creation_time #=> String
resp.event_subscription.source_type #=> String
resp.event_subscription.source_ids_list #=> Array
resp.event_subscription.source_ids_list[0] #=> String
resp.event_subscription.event_categories_list #=> Array
resp.event_subscription.event_categories_list[0] #=> String
resp.event_subscription.enabled #=> Boolean
resp.event_subscription.event_subscription_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :subscription_name (required, String)

    The name of the RDS event notification subscription you want to delete.

Returns:

See Also:



10516
10517
10518
10519
# File 'lib/aws-sdk-rds/client.rb', line 10516

def delete_event_subscription(params = {}, options = {})
  req = build_request(:delete_event_subscription, params)
  req.send_request(options)
end

#delete_global_cluster(params = {}) ⇒ Types::DeleteGlobalClusterResult

Deletes a global database cluster. The primary and secondary clusters must already be detached or destroyed first.

<note markdown=“1”> This action only applies to Aurora DB clusters.

</note>

Examples:

Example: To delete a global DB cluster


# The following example deletes an Aurora MySQL-compatible global DB cluster.

resp = client.delete_global_cluster({
  global_cluster_identifier: "myglobalcluster", 
})

resp.to_h outputs the following:
{
  global_cluster: {
    deletion_protection: false, 
    engine: "aurora-mysql", 
    engine_version: "5.7.mysql_aurora.2.07.2", 
    global_cluster_arn: "arn:aws:rds::123456789012:global-cluster:myglobalcluster", 
    global_cluster_identifier: "myglobalcluster", 
    global_cluster_members: [
    ], 
    global_cluster_resource_id: "cluster-f0e523bfe07aabb", 
    status: "available", 
    storage_encrypted: false, 
  }, 
}

Request syntax with placeholder values


resp = client.delete_global_cluster({
  global_cluster_identifier: "String", # required
})

Response structure


resp.global_cluster.global_cluster_identifier #=> String
resp.global_cluster.global_cluster_resource_id #=> String
resp.global_cluster.global_cluster_arn #=> String
resp.global_cluster.status #=> String
resp.global_cluster.engine #=> String
resp.global_cluster.engine_version #=> String
resp.global_cluster.engine_lifecycle_support #=> String
resp.global_cluster.database_name #=> String
resp.global_cluster.storage_encrypted #=> Boolean
resp.global_cluster.deletion_protection #=> Boolean
resp.global_cluster.global_cluster_members #=> Array
resp.global_cluster.global_cluster_members[0].db_cluster_arn #=> String
resp.global_cluster.global_cluster_members[0].readers #=> Array
resp.global_cluster.global_cluster_members[0].readers[0] #=> String
resp.global_cluster.global_cluster_members[0].is_writer #=> Boolean
resp.global_cluster.global_cluster_members[0].global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.global_cluster.global_cluster_members[0].synchronization_status #=> String, one of "connected", "pending-resync"
resp.global_cluster.endpoint #=> String
resp.global_cluster.failover_state.status #=> String, one of "pending", "failing-over", "cancelling"
resp.global_cluster.failover_state.from_db_cluster_arn #=> String
resp.global_cluster.failover_state.to_db_cluster_arn #=> String
resp.global_cluster.failover_state.is_data_loss_allowed #=> Boolean
resp.global_cluster.tag_list #=> Array
resp.global_cluster.tag_list[0].key #=> String
resp.global_cluster.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :global_cluster_identifier (required, String)

    The cluster identifier of the global database cluster being deleted.

Returns:

See Also:



10598
10599
10600
10601
# File 'lib/aws-sdk-rds/client.rb', line 10598

def delete_global_cluster(params = {}, options = {})
  req = build_request(:delete_global_cluster, params)
  req.send_request(options)
end

#delete_integration(params = {}) ⇒ Types::Integration

Deletes a zero-ETL integration with Amazon Redshift.

Examples:

Example: To delete a zero-ETL integration


# The following example deletes a zero-ETL integration with Amazon Redshift.

resp = client.delete_integration({
  integration_identifier: "5b9f3d79-7392-4a3e-896c-58eaa1b53231", 
})

resp.to_h outputs the following:
{
  create_time: Time.parse("2023-12-28T17:20:20.629Z"), 
  integration_arn: "arn:aws:rds:us-east-1:123456789012:integration:5b9f3d79-7392-4a3e-896c-58eaa1b53231", 
  integration_name: "my-integration", 
  kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa", 
  source_arn: "arn:aws:rds:us-east-1:123456789012:cluster:my-cluster", 
  status: "deleting", 
  tags: [
  ], 
  target_arn: "arn:aws:redshift-serverless:us-east-1:123456789012:namespace/62c70612-0302-4db7-8414-b5e3e049f0d8", 
}

Request syntax with placeholder values


resp = client.delete_integration({
  integration_identifier: "IntegrationIdentifier", # required
})

Response structure


resp.source_arn #=> String
resp.target_arn #=> String
resp.integration_name #=> String
resp.integration_arn #=> String
resp.kms_key_id #=> String
resp.additional_encryption_context #=> Hash
resp.additional_encryption_context["String"] #=> String
resp.status #=> String, one of "creating", "active", "modifying", "failed", "deleting", "syncing", "needs_attention"
resp.tags #=> Array
resp.tags[0].key #=> String
resp.tags[0].value #=> String
resp.create_time #=> Time
resp.errors #=> Array
resp.errors[0].error_code #=> String
resp.errors[0].error_message #=> String
resp.data_filter #=> String
resp.description #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :integration_identifier (required, String)

    The unique identifier of the integration.

Returns:

See Also:



10675
10676
10677
10678
# File 'lib/aws-sdk-rds/client.rb', line 10675

def delete_integration(params = {}, options = {})
  req = build_request(:delete_integration, params)
  req.send_request(options)
end

#delete_option_group(params = {}) ⇒ Struct

Deletes an existing option group.

Examples:

Example: To delete an option group


# The following example deletes the specified option group.

resp = client.delete_option_group({
  option_group_name: "myoptiongroup", 
})

Request syntax with placeholder values


resp = client.delete_option_group({
  option_group_name: "String", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :option_group_name (required, String)

    The name of the option group to be deleted.

    <note markdown=“1”> You can’t delete default option groups.

    </note>
    

Returns:

  • (Struct)

    Returns an empty response.

See Also:



10710
10711
10712
10713
# File 'lib/aws-sdk-rds/client.rb', line 10710

def delete_option_group(params = {}, options = {})
  req = build_request(:delete_option_group, params)
  req.send_request(options)
end

#delete_tenant_database(params = {}) ⇒ Types::DeleteTenantDatabaseResult

Deletes a tenant database from your DB instance. This command only applies to RDS for Oracle container database (CDB) instances.

You can’t delete a tenant database when it is the only tenant in the DB instance.

Examples:

Request syntax with placeholder values


resp = client.delete_tenant_database({
  db_instance_identifier: "String", # required
  tenant_db_name: "String", # required
  skip_final_snapshot: false,
  final_db_snapshot_identifier: "String",
})

Response structure


resp.tenant_database.tenant_database_create_time #=> Time
resp.tenant_database.db_instance_identifier #=> String
resp.tenant_database.tenant_db_name #=> String
resp.tenant_database.status #=> String
resp.tenant_database.master_username #=> String
resp.tenant_database.dbi_resource_id #=> String
resp.tenant_database.tenant_database_resource_id #=> String
resp.tenant_database.tenant_database_arn #=> String
resp.tenant_database.character_set_name #=> String
resp.tenant_database.nchar_character_set_name #=> String
resp.tenant_database.deletion_protection #=> Boolean
resp.tenant_database.pending_modified_values.master_user_password #=> String
resp.tenant_database.pending_modified_values.tenant_db_name #=> String
resp.tenant_database.tag_list #=> Array
resp.tenant_database.tag_list[0].key #=> String
resp.tenant_database.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The user-supplied identifier for the DB instance that contains the tenant database that you want to delete.

  • :tenant_db_name (required, String)

    The user-supplied name of the tenant database that you want to remove from your DB instance. Amazon RDS deletes the tenant database with this name. This parameter isn’t case-sensitive.

  • :skip_final_snapshot (Boolean)

    Specifies whether to skip the creation of a final DB snapshot before removing the tenant database from your DB instance. If you enable this parameter, RDS doesn’t create a DB snapshot. If you don’t enable this parameter, RDS creates a DB snapshot before it deletes the tenant database. By default, RDS doesn’t skip the final snapshot. If you don’t enable this parameter, you must specify the ‘FinalDBSnapshotIdentifier` parameter.

  • :final_db_snapshot_identifier (String)

    The ‘DBSnapshotIdentifier` of the new `DBSnapshot` created when the `SkipFinalSnapshot` parameter is disabled.

    <note markdown=“1”> If you enable this parameter and also enable ‘SkipFinalShapshot`, the command results in an error.

    </note>
    

Returns:

See Also:



10784
10785
10786
10787
# File 'lib/aws-sdk-rds/client.rb', line 10784

def delete_tenant_database(params = {}, options = {})
  req = build_request(:delete_tenant_database, params)
  req.send_request(options)
end

#deregister_db_proxy_targets(params = {}) ⇒ Struct

Remove the association between one or more ‘DBProxyTarget` data structures and a `DBProxyTargetGroup`.

Examples:

Request syntax with placeholder values


resp = client.deregister_db_proxy_targets({
  db_proxy_name: "String", # required
  target_group_name: "String",
  db_instance_identifiers: ["String"],
  db_cluster_identifiers: ["String"],
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_name (required, String)

    The identifier of the ‘DBProxy` that is associated with the `DBProxyTargetGroup`.

  • :target_group_name (String)

    The identifier of the ‘DBProxyTargetGroup`.

  • :db_instance_identifiers (Array<String>)

    One or more DB instance identifiers.

  • :db_cluster_identifiers (Array<String>)

    One or more DB cluster identifiers.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



10820
10821
10822
10823
# File 'lib/aws-sdk-rds/client.rb', line 10820

def deregister_db_proxy_targets(params = {}, options = {})
  req = build_request(:deregister_db_proxy_targets, params)
  req.send_request(options)
end

#describe_account_attributes(params = {}) ⇒ Types::AccountAttributesMessage

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.

This command doesn’t take any parameters.

Examples:

Example: To describe account attributes


# The following example retrieves the attributes for the current AWS account.

resp = client.({
})

resp.to_h outputs the following:
{
  account_quotas: [
    {
      account_quota_name: "DBInstances", 
      max: 40, 
      used: 4, 
    }, 
    {
      account_quota_name: "ReservedDBInstances", 
      max: 40, 
      used: 0, 
    }, 
    {
      account_quota_name: "AllocatedStorage", 
      max: 100000, 
      used: 40, 
    }, 
    {
      account_quota_name: "DBSecurityGroups", 
      max: 25, 
      used: 0, 
    }, 
    {
      account_quota_name: "AuthorizationsPerDBSecurityGroup", 
      max: 20, 
      used: 0, 
    }, 
    {
      account_quota_name: "DBParameterGroups", 
      max: 50, 
      used: 1, 
    }, 
    {
      account_quota_name: "ManualSnapshots", 
      max: 100, 
      used: 3, 
    }, 
    {
      account_quota_name: "EventSubscriptions", 
      max: 20, 
      used: 0, 
    }, 
    {
      account_quota_name: "DBSubnetGroups", 
      max: 50, 
      used: 1, 
    }, 
    {
      account_quota_name: "OptionGroups", 
      max: 20, 
      used: 1, 
    }, 
    {
      account_quota_name: "SubnetsPerDBSubnetGroup", 
      max: 20, 
      used: 6, 
    }, 
    {
      account_quota_name: "ReadReplicasPerMaster", 
      max: 5, 
      used: 0, 
    }, 
    {
      account_quota_name: "DBClusters", 
      max: 40, 
      used: 1, 
    }, 
    {
      account_quota_name: "DBClusterParameterGroups", 
      max: 50, 
      used: 0, 
    }, 
    {
      account_quota_name: "DBClusterRoles", 
      max: 5, 
      used: 0, 
    }, 
  ], 
}

Response structure


resp. #=> Array
resp.[0]. #=> String
resp.[0].used #=> Integer
resp.[0].max #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



10936
10937
10938
10939
# File 'lib/aws-sdk-rds/client.rb', line 10936

def (params = {}, options = {})
  req = build_request(:describe_account_attributes, params)
  req.send_request(options)
end

#describe_blue_green_deployments(params = {}) ⇒ Types::DescribeBlueGreenDeploymentsResponse

Describes one or more blue/green deployments.

For more information, see [Using Amazon RDS Blue/Green Deployments for database updates] in the *Amazon RDS User Guide* and [ Using Amazon RDS Blue/Green Deployments for database updates] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/blue-green-deployments.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe a blue/green deployment of an RDS DB instance after creation completes


# The following example retrieves the details of a blue/green deployment after creation completes.

resp = client.describe_blue_green_deployments({
  blue_green_deployment_identifier: "bgd-v53303651eexfake", 
})

resp.to_h outputs the following:
{
  blue_green_deployments: [
    {
      blue_green_deployment_identifier: "bgd-v53303651eexfake", 
      blue_green_deployment_name: "bgd-cli-test-instance", 
      create_time: Time.parse("2022-02-25T21:18:51.183000+00:00"), 
      source: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance", 
      status: "AVAILABLE", 
      switchover_details: [
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance", 
          status: "AVAILABLE", 
          target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-green-rkfbpe", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-1", 
          status: "AVAILABLE", 
          target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-1-green-j382ha", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-2", 
          status: "AVAILABLE", 
          target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-2-green-ejv4ao", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-3", 
          status: "AVAILABLE", 
          target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-3-green-vlpz3t", 
        }, 
      ], 
      target: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-green-rkfbpe", 
      tasks: [
        {
          name: "CREATING_READ_REPLICA_OF_SOURCE", 
          status: "COMPLETED", 
        }, 
        {
          name: "DB_ENGINE_VERSION_UPGRADE", 
          status: "COMPLETED", 
        }, 
        {
          name: "CONFIGURE_BACKUPS", 
          status: "COMPLETED", 
        }, 
        {
          name: "CREATING_TOPOLOGY_OF_SOURCE", 
          status: "COMPLETED", 
        }, 
      ], 
    }, 
  ], 
}

Example: To describe a blue/green deployment for an Aurora MySQL DB cluster


# The following example retrieves the details of a blue/green deployment.

resp = client.describe_blue_green_deployments({
  blue_green_deployment_identifier: "bgd-wi89nwzglccsfake", 
})

resp.to_h outputs the following:
{
  blue_green_deployments: [
    {
      blue_green_deployment_identifier: "bgd-wi89nwzglccsfake", 
      blue_green_deployment_name: "my-blue-green-deployment", 
      create_time: Time.parse("2022-02-25T21:12:00.288000+00:00"), 
      source: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
      status: "AVAILABLE", 
      switchover_details: [
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
          status: "AVAILABLE", 
          target_member: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster-green-3rnukl", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-1", 
          status: "AVAILABLE", 
          target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-1-green-gpmaxf", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-2", 
          status: "AVAILABLE", 
          target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-2-green-j2oajq", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-3", 
          status: "AVAILABLE", 
          target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-3-green-mkxies", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-excluded-member-endpoint", 
          status: "AVAILABLE", 
          target_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-excluded-member-endpoint-green-4sqjrq", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-reader-endpoint", 
          status: "AVAILABLE", 
          target_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-reader-endpoint-green-gwwzlg", 
        }, 
      ], 
      target: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster-green-3rnukl", 
      tasks: [
        {
          name: "CREATING_READ_REPLICA_OF_SOURCE", 
          status: "COMPLETED", 
        }, 
        {
          name: "DB_ENGINE_VERSION_UPGRADE", 
          status: "COMPLETED", 
        }, 
        {
          name: "CREATE_DB_INSTANCES_FOR_CLUSTER", 
          status: "COMPLETED", 
        }, 
        {
          name: "CREATE_CUSTOM_ENDPOINTS", 
          status: "COMPLETED", 
        }, 
      ], 
    }, 
  ], 
}

Example: To describe a blue/green deployment for an Aurora MySQL cluster after switchover


# The following example retrieves the details about a blue/green deployment after the green environment is promoted to be
# the production environment.

resp = client.describe_blue_green_deployments({
  blue_green_deployment_identifier: "bgd-wi89nwzglccsfake", 
})

resp.to_h outputs the following:
{
  blue_green_deployments: [
    {
      blue_green_deployment_identifier: "bgd-wi89nwzglccsfake", 
      blue_green_deployment_name: "my-blue-green-deployment", 
      create_time: Time.parse("2022-02-25T22:38:49.522000+00:00"), 
      source: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster-old1", 
      status: "SWITCHOVER_COMPLETED", 
      switchover_details: [
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster-old1", 
          status: "SWITCHOVER_COMPLETED", 
          target_member: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-1-old1", 
          status: "SWITCHOVER_COMPLETED", 
          target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-1", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-2-old1", 
          status: "SWITCHOVER_COMPLETED", 
          target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-2", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-3-old1", 
          status: "SWITCHOVER_COMPLETED", 
          target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-3", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-excluded-member-endpoint-old1", 
          status: "SWITCHOVER_COMPLETED", 
          target_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-excluded-member-endpoint", 
        }, 
        {
          source_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-reader-endpoint-old1", 
          status: "SWITCHOVER_COMPLETED", 
          target_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-reader-endpoint", 
        }, 
      ], 
      target: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
      tasks: [
        {
          name: "CREATING_READ_REPLICA_OF_SOURCE", 
          status: "COMPLETED", 
        }, 
        {
          name: "DB_ENGINE_VERSION_UPGRADE", 
          status: "COMPLETED", 
        }, 
        {
          name: "CREATE_DB_INSTANCES_FOR_CLUSTER", 
          status: "COMPLETED", 
        }, 
        {
          name: "CREATE_CUSTOM_ENDPOINTS", 
          status: "COMPLETED", 
        }, 
      ], 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_blue_green_deployments({
  blue_green_deployment_identifier: "BlueGreenDeploymentIdentifier",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
})

Response structure


resp.blue_green_deployments #=> Array
resp.blue_green_deployments[0].blue_green_deployment_identifier #=> String
resp.blue_green_deployments[0].blue_green_deployment_name #=> String
resp.blue_green_deployments[0].source #=> String
resp.blue_green_deployments[0].target #=> String
resp.blue_green_deployments[0].switchover_details #=> Array
resp.blue_green_deployments[0].switchover_details[0].source_member #=> String
resp.blue_green_deployments[0].switchover_details[0].target_member #=> String
resp.blue_green_deployments[0].switchover_details[0].status #=> String
resp.blue_green_deployments[0].tasks #=> Array
resp.blue_green_deployments[0].tasks[0].name #=> String
resp.blue_green_deployments[0].tasks[0].status #=> String
resp.blue_green_deployments[0].status #=> String
resp.blue_green_deployments[0].status_details #=> String
resp.blue_green_deployments[0].create_time #=> Time
resp.blue_green_deployments[0].delete_time #=> Time
resp.blue_green_deployments[0].tag_list #=> Array
resp.blue_green_deployments[0].tag_list[0].key #=> String
resp.blue_green_deployments[0].tag_list[0].value #=> String
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :blue_green_deployment_identifier (String)

    The blue/green deployment identifier. If you specify this parameter, the response only includes information about the specific blue/green deployment. This parameter isn’t case-sensitive.

    Constraints:

    • Must match an existing blue/green deployment identifier.

    ^

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more blue/green deployments to describe.

    Valid Values:

    • ‘blue-green-deployment-identifier` - Accepts system-generated identifiers for blue/green deployments. The results list only includes information about the blue/green deployments with the specified identifiers.

    • ‘blue-green-deployment-name` - Accepts user-supplied names for blue/green deployments. The results list only includes information about the blue/green deployments with the specified names.

    • ‘source` - Accepts source databases for a blue/green deployment. The results list only includes information about the blue/green deployments with the specified source databases.

    • ‘target` - Accepts target databases for a blue/green deployment. The results list only includes information about the blue/green deployments with the specified target databases.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeBlueGreenDeployments` request. If you specify this parameter, the response only includes records beyond the marker, up to the value specified by `MaxRecords`.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints:

    • Must be a minimum of 20.

    • Can’t exceed 100.

Returns:

See Also:



11263
11264
11265
11266
# File 'lib/aws-sdk-rds/client.rb', line 11263

def describe_blue_green_deployments(params = {}, options = {})
  req = build_request(:describe_blue_green_deployments, params)
  req.send_request(options)
end

#describe_certificates(params = {}) ⇒ Types::CertificateMessage

Lists the set of certificate authority (CA) certificates provided by Amazon RDS for this Amazon Web Services account.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe certificates


# The following example retrieves the details of the certificate associated with the user's default region.

resp = client.describe_certificates({
})

resp.to_h outputs the following:
{
  certificates: [
    {
      certificate_arn: "arn:aws:rds:us-east-1::cert:rds-ca-ecc384-g1", 
      certificate_identifier: "rds-ca-ecc384-g1", 
      certificate_type: "CA", 
      customer_override: false, 
      thumbprint: "24a97b91cbe86911190576c35c36aab4fEXAMPLE", 
      valid_from: Time.parse("2021-05-25T22:41:55+00:00"), 
      valid_till: Time.parse("2121-05-25T23:41:55+00:00"), 
    }, 
    {
      certificate_arn: "arn:aws:rds:us-east-1::cert:rds-ca-rsa4096-g1", 
      certificate_identifier: "rds-ca-rsa4096-g1", 
      certificate_type: "CA", 
      customer_override: false, 
      thumbprint: "9da6fa7fd2ec09c569a400d876b01b0c1EXAMPLE", 
      valid_from: Time.parse("2021-05-25T22:38:35+00:00"), 
      valid_till: Time.parse("2121-05-25T23:38:35+00:00"), 
    }, 
    {
      certificate_arn: "arn:aws:rds:us-east-1::cert:rds-ca-rsa2048-g1", 
      certificate_identifier: "rds-ca-rsa2048-g1", 
      certificate_type: "CA", 
      customer_override: true, 
      customer_override_valid_till: Time.parse("2061-05-25T23:34:57+00:00"), 
      thumbprint: "2fa77ef894d983ba9d37ad699c84ab0f6EXAMPLE", 
      valid_from: Time.parse("2021-05-25T22:34:57+00:00"), 
      valid_till: Time.parse("2061-05-25T23:34:57+00:00"), 
    }, 
    {
      certificate_arn: "arn:aws:rds:us-east-1::cert:rds-ca-2019", 
      certificate_identifier: "rds-ca-2019", 
      certificate_type: "CA", 
      customer_override: false, 
      thumbprint: "f0ed823ed14447bab557fdf3e49274669EXAMPLE", 
      valid_from: Time.parse("2019-09-19T18:16:53+00:00"), 
      valid_till: Time.parse("2024-08-22T17:08:50+00:00"), 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_certificates({
  certificate_identifier: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.default_certificate_for_new_launches #=> String
resp.certificates #=> Array
resp.certificates[0].certificate_identifier #=> String
resp.certificates[0].certificate_type #=> String
resp.certificates[0].thumbprint #=> String
resp.certificates[0].valid_from #=> Time
resp.certificates[0].valid_till #=> Time
resp.certificates[0].certificate_arn #=> String
resp.certificates[0].customer_override #=> Boolean
resp.certificates[0].customer_override_valid_till #=> Time
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :certificate_identifier (String)

    The user-supplied certificate identifier. If this parameter is specified, information for only the identified certificate is returned. This parameter isn’t case-sensitive.

    Constraints:

    • Must match an existing CertificateIdentifier.

    ^

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeCertificates` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



11402
11403
11404
11405
# File 'lib/aws-sdk-rds/client.rb', line 11402

def describe_certificates(params = {}, options = {})
  req = build_request(:describe_certificates, params)
  req.send_request(options)
end

#describe_db_cluster_automated_backups(params = {}) ⇒ Types::DBClusterAutomatedBackupMessage

Displays backups for both current and deleted DB clusters. For example, use this operation to find details about automated backups for previously deleted clusters. Current clusters are returned for both the ‘DescribeDBClusterAutomatedBackups` and `DescribeDBClusters` operations.

All parameters are optional.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_db_cluster_automated_backups({
  db_cluster_resource_id: "String",
  db_cluster_identifier: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.db_cluster_automated_backups #=> Array
resp.db_cluster_automated_backups[0].engine #=> String
resp.db_cluster_automated_backups[0].vpc_id #=> String
resp.db_cluster_automated_backups[0].db_cluster_automated_backups_arn #=> String
resp.db_cluster_automated_backups[0].db_cluster_identifier #=> String
resp.db_cluster_automated_backups[0].restore_window.earliest_time #=> Time
resp.db_cluster_automated_backups[0].restore_window.latest_time #=> Time
resp.db_cluster_automated_backups[0].master_username #=> String
resp.db_cluster_automated_backups[0].db_cluster_resource_id #=> String
resp.db_cluster_automated_backups[0].region #=> String
resp.db_cluster_automated_backups[0].license_model #=> String
resp.db_cluster_automated_backups[0].status #=> String
resp.db_cluster_automated_backups[0].iam_database_authentication_enabled #=> Boolean
resp.db_cluster_automated_backups[0].cluster_create_time #=> Time
resp.db_cluster_automated_backups[0].storage_encrypted #=> Boolean
resp.db_cluster_automated_backups[0].allocated_storage #=> Integer
resp.db_cluster_automated_backups[0].engine_version #=> String
resp.db_cluster_automated_backups[0].db_cluster_arn #=> String
resp.db_cluster_automated_backups[0].backup_retention_period #=> Integer
resp.db_cluster_automated_backups[0].engine_mode #=> String
resp.db_cluster_automated_backups[0].availability_zones #=> Array
resp.db_cluster_automated_backups[0].availability_zones[0] #=> String
resp.db_cluster_automated_backups[0].port #=> Integer
resp.db_cluster_automated_backups[0].kms_key_id #=> String
resp.db_cluster_automated_backups[0].storage_type #=> String
resp.db_cluster_automated_backups[0].iops #=> Integer
resp.db_cluster_automated_backups[0].aws_backup_recovery_point_arn #=> String
resp.db_cluster_automated_backups[0].storage_throughput #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_resource_id (String)

    The resource ID of the DB cluster that is the source of the automated backup. This parameter isn’t case-sensitive.

  • :db_cluster_identifier (String) — default: Optional

    The user-supplied DB cluster identifier. If this parameter is specified, it must match the identifier of an existing DB cluster. It returns information from the specific DB cluster’s automated backup. This parameter isn’t case-sensitive.

  • :filters (Array<Types::Filter>)

    A filter that specifies which resources to return based on status.

    Supported filters are the following:

    • ‘status`

      • ‘retained` - Automated backups for deleted clusters and after backup replication is stopped.

      ^

    • ‘db-cluster-id` - Accepts DB cluster identifiers and Amazon Resource Names (ARNs). The results list includes only information about the DB cluster automated backups identified by these ARNs.

    • ‘db-cluster-resource-id` - Accepts DB resource identifiers and Amazon Resource Names (ARNs). The results list includes only information about the DB cluster resources identified by these ARNs.

    Returns all resources by default. The status for each resource is specified in the response.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

  • :marker (String)

    The pagination token provided in the previous request. If this parameter is specified the response includes only records beyond the marker, up to ‘MaxRecords`.

Returns:

See Also:



11516
11517
11518
11519
# File 'lib/aws-sdk-rds/client.rb', line 11516

def describe_db_cluster_automated_backups(params = {}, options = {})
  req = build_request(:describe_db_cluster_automated_backups, params)
  req.send_request(options)
end

#describe_db_cluster_backtracks(params = {}) ⇒ Types::DBClusterBacktrackMessage

Returns information about backtracks for a DB cluster.

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This action only applies to Aurora MySQL DB clusters.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe backtracks for a DB cluster


# The following example retrieves details about the specified DB cluster.

resp = client.describe_db_cluster_backtracks({
  db_cluster_identifier: "mydbcluster", 
})

resp.to_h outputs the following:
{
  db_cluster_backtracks: [
    {
      backtrack_identifier: "2f5f5294-0dd2-44c9-9f50-EXAMPLE", 
      backtrack_request_creation_time: Time.parse("2021-02-12T14:36:18.819Z"), 
      backtrack_to: Time.parse("2021-02-12T04:59:22Z"), 
      backtracked_from: Time.parse("2021-02-12T14:37:31.640Z"), 
      db_cluster_identifier: "mydbcluster", 
      status: "COMPLETED", 
    }, 
    {
      backtrack_identifier: "3c7a6421-af2a-4ea3-ae95-EXAMPLE", 
      backtrack_request_creation_time: Time.parse("2021-02-12T00:07:53.487Z"), 
      backtrack_to: Time.parse("2021-02-11T22:53:46Z"), 
      backtracked_from: Time.parse("2021-02-12T00:09:27.006Z"), 
      db_cluster_identifier: "mydbcluster", 
      status: "COMPLETED", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_db_cluster_backtracks({
  db_cluster_identifier: "String", # required
  backtrack_identifier: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.db_cluster_backtracks #=> Array
resp.db_cluster_backtracks[0].db_cluster_identifier #=> String
resp.db_cluster_backtracks[0].backtrack_identifier #=> String
resp.db_cluster_backtracks[0].backtrack_to #=> Time
resp.db_cluster_backtracks[0].backtracked_from #=> Time
resp.db_cluster_backtracks[0].backtrack_request_creation_time #=> Time
resp.db_cluster_backtracks[0].status #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The DB cluster identifier of the DB cluster to be described. This parameter is stored as a lowercase string.

    Constraints:

    • Must contain from 1 to 63 alphanumeric characters or hyphens.

    • First character must be a letter.

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

    Example: ‘my-cluster1`

  • :backtrack_identifier (String)

    If specified, this value is the backtrack identifier of the backtrack to be described.

    Constraints:

    • Must contain a valid universally unique identifier (UUID). For more information about UUIDs, see [Universally unique identifier].

    ^

    Example: ‘123e4567-e89b-12d3-a456-426655440000`

    [1]: en.wikipedia.org/wiki/Universally_unique_identifier

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more DB clusters to describe. Supported filters include the following:

    • ‘db-cluster-backtrack-id` - Accepts backtrack identifiers. The results list includes information about only the backtracks identified by these identifiers.

    • ‘db-cluster-backtrack-status` - Accepts any of the following backtrack status values:

      • ‘applying`

      • ‘completed`

      • ‘failed`

      • ‘pending`

      The results list includes information about only the backtracks identified by these values.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBClusterBacktracks` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



11670
11671
11672
11673
# File 'lib/aws-sdk-rds/client.rb', line 11670

def describe_db_cluster_backtracks(params = {}, options = {})
  req = build_request(:describe_db_cluster_backtracks, params)
  req.send_request(options)
end

#describe_db_cluster_endpoints(params = {}) ⇒ Types::DBClusterEndpointMessage

Returns information about endpoints for an Amazon Aurora DB cluster.

<note markdown=“1”> This action only applies to Aurora DB clusters.

</note>

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe DB cluster endpoints


# The following example retrieves details for your DB cluster endpoints. The most common kinds of Aurora clusters have two
# endpoints. One endpoint has type WRITER. You can use this endpoint for all SQL statements. The other endpoint has type
# READER. You can use this endpoint only for SELECT and other read-only SQL statements.

resp = client.describe_db_cluster_endpoints({
})

resp.to_h outputs the following:
{
  db_cluster_endpoints: [
    {
      db_cluster_identifier: "my-database-1", 
      endpoint: "my-database-1.cluster-cnpexample.us-east-1.rds.amazonaws.com", 
      endpoint_type: "WRITER", 
      status: "creating", 
    }, 
    {
      db_cluster_identifier: "my-database-1", 
      endpoint: "my-database-1.cluster-ro-cnpexample.us-east-1.rds.amazonaws.com", 
      endpoint_type: "READER", 
      status: "creating", 
    }, 
    {
      db_cluster_identifier: "mydbcluster", 
      endpoint: "mydbcluster.cluster-cnpexamle.us-east-1.rds.amazonaws.com", 
      endpoint_type: "WRITER", 
      status: "available", 
    }, 
    {
      db_cluster_identifier: "mydbcluster", 
      endpoint: "mydbcluster.cluster-ro-cnpexample.us-east-1.rds.amazonaws.com", 
      endpoint_type: "READER", 
      status: "available", 
    }, 
  ], 
}

Example: To describe DB cluster endpoints of a single DB cluster


# The following example retrieves details for the DB cluster endpoints of a single specified DB cluster. Aurora Serverless
# clusters have only a single endpoint with a type of WRITER.

resp = client.describe_db_cluster_endpoints({
  db_cluster_identifier: "serverless-cluster", 
})

resp.to_h outputs the following:
{
  db_cluster_endpoints: [
    {
      db_cluster_identifier: "serverless-cluster", 
      endpoint: "serverless-cluster.cluster-cnpexample.us-east-1.rds.amazonaws.com", 
      endpoint_type: "WRITER", 
      status: "available", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_db_cluster_endpoints({
  db_cluster_identifier: "String",
  db_cluster_endpoint_identifier: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.db_cluster_endpoints #=> Array
resp.db_cluster_endpoints[0].db_cluster_endpoint_identifier #=> String
resp.db_cluster_endpoints[0].db_cluster_identifier #=> String
resp.db_cluster_endpoints[0].db_cluster_endpoint_resource_identifier #=> String
resp.db_cluster_endpoints[0].endpoint #=> String
resp.db_cluster_endpoints[0].status #=> String
resp.db_cluster_endpoints[0].endpoint_type #=> String
resp.db_cluster_endpoints[0].custom_endpoint_type #=> String
resp.db_cluster_endpoints[0].static_members #=> Array
resp.db_cluster_endpoints[0].static_members[0] #=> String
resp.db_cluster_endpoints[0].excluded_members #=> Array
resp.db_cluster_endpoints[0].excluded_members[0] #=> String
resp.db_cluster_endpoints[0].db_cluster_endpoint_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (String)

    The DB cluster identifier of the DB cluster associated with the endpoint. This parameter is stored as a lowercase string.

  • :db_cluster_endpoint_identifier (String)

    The identifier of the endpoint to describe. This parameter is stored as a lowercase string.

  • :filters (Array<Types::Filter>)

    A set of name-value pairs that define which endpoints to include in the output. The filters are specified as name-value pairs, in the format ‘Name=endpoint_type,Values=endpoint_type1,endpoint_type2,…`. `Name` can be one of: `db-cluster-endpoint-type`, `db-cluster-endpoint-custom-type`, `db-cluster-endpoint-id`, `db-cluster-endpoint-status`. `Values` for the ` db-cluster-endpoint-type` filter can be one or more of: `reader`, `writer`, `custom`. `Values` for the `db-cluster-endpoint-custom-type` filter can be one or more of: `reader`, `any`. `Values` for the `db-cluster-endpoint-status` filter can be one or more of: `available`, `creating`, `deleting`, `inactive`, `modifying`.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBClusterEndpoints` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



11822
11823
11824
11825
# File 'lib/aws-sdk-rds/client.rb', line 11822

def describe_db_cluster_endpoints(params = {}, options = {})
  req = build_request(:describe_db_cluster_endpoints, params)
  req.send_request(options)
end

#describe_db_cluster_parameter_groups(params = {}) ⇒ Types::DBClusterParameterGroupsMessage

Returns a list of ‘DBClusterParameterGroup` descriptions. If a `DBClusterParameterGroupName` parameter is specified, the list will contain only the description of the specified DB cluster parameter group.

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe DB cluster parameter groups


# The following example retrieves details for your DB cluster parameter groups.

resp = client.describe_db_cluster_parameter_groups({
})

resp.to_h outputs the following:
{
  db_cluster_parameter_groups: [
    {
      db_cluster_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:cluster-pg:default.aurora-mysql5.7", 
      db_cluster_parameter_group_name: "default.aurora-mysql5.7", 
      db_parameter_group_family: "aurora-mysql5.7", 
      description: "Default cluster parameter group for aurora-mysql5.7", 
    }, 
    {
      db_cluster_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:cluster-pg:default.aurora-postgresql9.6", 
      db_cluster_parameter_group_name: "default.aurora-postgresql9.6", 
      db_parameter_group_family: "aurora-postgresql9.6", 
      description: "Default cluster parameter group for aurora-postgresql9.6", 
    }, 
    {
      db_cluster_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:cluster-pg:default.aurora5.6", 
      db_cluster_parameter_group_name: "default.aurora5.6", 
      db_parameter_group_family: "aurora5.6", 
      description: "Default cluster parameter group for aurora5.6", 
    }, 
    {
      db_cluster_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:cluster-pg:mydbclusterpg", 
      db_cluster_parameter_group_name: "mydbclusterpg", 
      db_parameter_group_family: "aurora-mysql5.7", 
      description: "My DB cluster parameter group", 
    }, 
    {
      db_cluster_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:cluster-pg:mydbclusterpgcopy", 
      db_cluster_parameter_group_name: "mydbclusterpgcopy", 
      db_parameter_group_family: "aurora-mysql5.7", 
      description: "Copy of mydbclusterpg parameter group", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_db_cluster_parameter_groups({
  db_cluster_parameter_group_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.db_cluster_parameter_groups #=> Array
resp.db_cluster_parameter_groups[0].db_cluster_parameter_group_name #=> String
resp.db_cluster_parameter_groups[0].db_parameter_group_family #=> String
resp.db_cluster_parameter_groups[0].description #=> String
resp.db_cluster_parameter_groups[0].db_cluster_parameter_group_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_parameter_group_name (String)

    The name of a specific DB cluster parameter group to return details for.

    Constraints:

    • If supplied, must match the name of an existing DBClusterParameterGroup.

    ^

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBClusterParameterGroups` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



11951
11952
11953
11954
# File 'lib/aws-sdk-rds/client.rb', line 11951

def describe_db_cluster_parameter_groups(params = {}, options = {})
  req = build_request(:describe_db_cluster_parameter_groups, params)
  req.send_request(options)
end

#describe_db_cluster_parameters(params = {}) ⇒ Types::DBClusterParameterGroupDetails

Returns the detailed parameter list for a particular DB cluster parameter group.

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe the parameters in a DB cluster parameter group


# The following example retrieves details about the parameters in a DB cluster parameter group.

resp = client.describe_db_cluster_parameters({
  db_cluster_parameter_group_name: "mydbclusterpg", 
})

resp.to_h outputs the following:
{
  parameters: [
    {
      allowed_values: "0,1", 
      apply_method: "pending-reboot", 
      apply_type: "static", 
      data_type: "boolean", 
      description: "Controls whether user-defined functions that have only an xxx symbol for the main function can be loaded", 
      is_modifiable: false, 
      parameter_name: "allow-suspicious-udfs", 
      source: "engine-default", 
      supported_engine_modes: [
        "provisioned", 
      ], 
    }, 
    {
      allowed_values: "0,1", 
      apply_method: "pending-reboot", 
      apply_type: "static", 
      data_type: "boolean", 
      description: "Enables new features in the Aurora engine.", 
      is_modifiable: true, 
      parameter_name: "aurora_lab_mode", 
      parameter_value: "0", 
      source: "engine-default", 
      supported_engine_modes: [
        "provisioned", 
      ], 
    }, 
  ], # Some output ommitted.
}

Request syntax with placeholder values


resp = client.describe_db_cluster_parameters({
  db_cluster_parameter_group_name: "String", # required
  source: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.parameters #=> Array
resp.parameters[0].parameter_name #=> String
resp.parameters[0].parameter_value #=> String
resp.parameters[0].description #=> String
resp.parameters[0].source #=> String
resp.parameters[0].apply_type #=> String
resp.parameters[0].data_type #=> String
resp.parameters[0].allowed_values #=> String
resp.parameters[0].is_modifiable #=> Boolean
resp.parameters[0].minimum_engine_version #=> String
resp.parameters[0].apply_method #=> String, one of "immediate", "pending-reboot"
resp.parameters[0].supported_engine_modes #=> Array
resp.parameters[0].supported_engine_modes[0] #=> String
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_parameter_group_name (required, String)

    The name of a specific DB cluster parameter group to return parameter details for.

    Constraints:

    • If supplied, must match the name of an existing DBClusterParameterGroup.

    ^

  • :source (String)

    A specific source to return parameters for.

    Valid Values:

    • ‘engine-default`

    • ‘system`

    • ‘user`

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more DB cluster parameters to describe.

    The only supported filter is ‘parameter-name`. The results list only includes information about the DB cluster parameters with these names.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBClusterParameters` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



12099
12100
12101
12102
# File 'lib/aws-sdk-rds/client.rb', line 12099

def describe_db_cluster_parameters(params = {}, options = {})
  req = build_request(:describe_db_cluster_parameters, params)
  req.send_request(options)
end

#describe_db_cluster_snapshot_attributes(params = {}) ⇒ Types::DescribeDBClusterSnapshotAttributesResult

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

When sharing snapshots with other Amazon Web Services accounts, ‘DescribeDBClusterSnapshotAttributes` returns the `restore` attribute and a list of IDs for the Amazon Web Services 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 Amazon Web Services accounts.

To add or remove access for an Amazon Web Services 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.

Examples:

Example: To describe the attribute names and values for a DB cluster snapshot


# The following example retrieves details of the attribute names and values for the specified DB cluster snapshot.

resp = client.describe_db_cluster_snapshot_attributes({
  db_cluster_snapshot_identifier: "myclustersnapshot", 
})

resp.to_h outputs the following:
{
  db_cluster_snapshot_attributes_result: {
    db_cluster_snapshot_attributes: [
      {
        attribute_name: "restore", 
        attribute_values: [
          "123456789012", 
        ], 
      }, 
    ], 
    db_cluster_snapshot_identifier: "myclustersnapshot", 
  }, 
}

Request syntax with placeholder values


resp = client.describe_db_cluster_snapshot_attributes({
  db_cluster_snapshot_identifier: "String", # required
})

Response structure


resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_identifier #=> String
resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes #=> Array
resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_name #=> String
resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_values #=> Array
resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_values[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_snapshot_identifier (required, String)

    The identifier for the DB cluster snapshot to describe the attributes for.

Returns:

See Also:



12170
12171
12172
12173
# File 'lib/aws-sdk-rds/client.rb', line 12170

def describe_db_cluster_snapshot_attributes(params = {}, options = {})
  req = build_request(:describe_db_cluster_snapshot_attributes, params)
  req.send_request(options)
end

#describe_db_cluster_snapshots(params = {}) ⇒ Types::DBClusterSnapshotMessage

Returns information about DB cluster snapshots. This API action supports pagination.

For more information on Amazon Aurora DB clusters, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* db_cluster_snapshot_available
* db_cluster_snapshot_deleted

Examples:

Example: To describe a DB cluster snapshot for a DB cluster


# The following example retrieves the details for the DB cluster snapshots for the specified DB cluster.

resp = client.describe_db_cluster_snapshots({
  db_cluster_identifier: "mydbcluster", 
})

resp.to_h outputs the following:
{
  db_cluster_snapshots: [
    {
      allocated_storage: 0, 
      availability_zones: [
        "us-east-1a", 
        "us-east-1b", 
        "us-east-1e", 
      ], 
      cluster_create_time: Time.parse("2019-04-15T14:18:42.785Z"), 
      db_cluster_identifier: "mydbcluster", 
      db_cluster_snapshot_arn: "arn:aws:rds:us-east-1:814387698303:cluster-snapshot:myclustersnapshotcopy", 
      db_cluster_snapshot_identifier: "myclustersnapshotcopy", 
      engine: "aurora-mysql", 
      engine_version: "5.7.mysql_aurora.2.04.2", 
      iam_database_authentication_enabled: false, 
      kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE", 
      license_model: "aurora-mysql", 
      master_username: "myadmin", 
      percent_progress: 100, 
      port: 0, 
      snapshot_create_time: Time.parse("2019-06-04T09:16:42.649Z"), 
      snapshot_type: "manual", 
      status: "available", 
      storage_encrypted: true, 
      vpc_id: "vpc-6594f31c", 
    }, 
    {
      allocated_storage: 0, 
      availability_zones: [
        "us-east-1a", 
        "us-east-1b", 
        "us-east-1e", 
      ], 
      cluster_create_time: Time.parse("2019-04-15T14:18:42.785Z"), 
      db_cluster_identifier: "mydbcluster", 
      db_cluster_snapshot_arn: "arn:aws:rds:us-east-1:123456789012:cluster-snapshot:rds:mydbcluster-2019-06-20-09-16", 
      db_cluster_snapshot_identifier: "rds:mydbcluster-2019-06-20-09-16", 
      engine: "aurora-mysql", 
      engine_version: "5.7.mysql_aurora.2.04.2", 
      iam_database_authentication_enabled: false, 
      kms_key_id: "arn:aws:kms:us-east-1:814387698303:key/AKIAIOSFODNN7EXAMPLE", 
      license_model: "aurora-mysql", 
      master_username: "myadmin", 
      percent_progress: 100, 
      port: 0, 
      snapshot_create_time: Time.parse("2019-06-20T09:16:26.569Z"), 
      snapshot_type: "automated", 
      status: "available", 
      storage_encrypted: true, 
      vpc_id: "vpc-6594f31c", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_db_cluster_snapshots({
  db_cluster_identifier: "String",
  db_cluster_snapshot_identifier: "String",
  snapshot_type: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
  include_shared: false,
  include_public: false,
  db_cluster_resource_id: "String",
})

Response structure


resp.marker #=> String
resp.db_cluster_snapshots #=> Array
resp.db_cluster_snapshots[0].availability_zones #=> Array
resp.db_cluster_snapshots[0].availability_zones[0] #=> String
resp.db_cluster_snapshots[0].db_cluster_snapshot_identifier #=> String
resp.db_cluster_snapshots[0].db_cluster_identifier #=> String
resp.db_cluster_snapshots[0].snapshot_create_time #=> Time
resp.db_cluster_snapshots[0].engine #=> String
resp.db_cluster_snapshots[0].engine_mode #=> String
resp.db_cluster_snapshots[0].allocated_storage #=> Integer
resp.db_cluster_snapshots[0].status #=> String
resp.db_cluster_snapshots[0].port #=> Integer
resp.db_cluster_snapshots[0].vpc_id #=> String
resp.db_cluster_snapshots[0].cluster_create_time #=> Time
resp.db_cluster_snapshots[0].master_username #=> String
resp.db_cluster_snapshots[0].engine_version #=> String
resp.db_cluster_snapshots[0].license_model #=> String
resp.db_cluster_snapshots[0].snapshot_type #=> String
resp.db_cluster_snapshots[0].percent_progress #=> Integer
resp.db_cluster_snapshots[0].storage_encrypted #=> Boolean
resp.db_cluster_snapshots[0].kms_key_id #=> String
resp.db_cluster_snapshots[0].db_cluster_snapshot_arn #=> String
resp.db_cluster_snapshots[0].source_db_cluster_snapshot_arn #=> String
resp.db_cluster_snapshots[0].iam_database_authentication_enabled #=> Boolean
resp.db_cluster_snapshots[0].tag_list #=> Array
resp.db_cluster_snapshots[0].tag_list[0].key #=> String
resp.db_cluster_snapshots[0].tag_list[0].value #=> String
resp.db_cluster_snapshots[0].db_system_id #=> String
resp.db_cluster_snapshots[0].storage_type #=> String
resp.db_cluster_snapshots[0].db_cluster_resource_id #=> String
resp.db_cluster_snapshots[0].storage_throughput #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (String)

    The ID of the DB cluster to retrieve the list of DB cluster snapshots for. This parameter can’t be used in conjunction with the ‘DBClusterSnapshotIdentifier` parameter. This parameter isn’t case-sensitive.

    Constraints:

    • If supplied, must match the identifier of an existing DBCluster.

    ^

  • :db_cluster_snapshot_identifier (String)

    A specific DB cluster snapshot identifier to describe. This parameter can’t be used in conjunction with the ‘DBClusterIdentifier` parameter. This value is stored as a lowercase string.

    Constraints:

    • If supplied, must match the identifier of an existing DBClusterSnapshot.

    • If this identifier is for an automated snapshot, the ‘SnapshotType` parameter must also be specified.

  • :snapshot_type (String)

    The type of DB cluster snapshots to be returned. You can specify one of the following values:

    • ‘automated` - Return all DB cluster snapshots that have been automatically taken by Amazon RDS for my Amazon Web Services account.

    • ‘manual` - Return all DB cluster snapshots that have been taken by my Amazon Web Services account.

    • ‘shared` - Return all manual DB cluster snapshots that have been shared to my Amazon Web Services account.

    • ‘public` - Return all DB cluster snapshots that have been marked as public.

    If you don’t specify a ‘SnapshotType` value, then both automated and manual DB cluster snapshots are returned. You can include shared DB cluster snapshots with these results by enabling the `IncludeShared` parameter. You can include public DB cluster snapshots with these results by enabling the `IncludePublic` parameter.

    The ‘IncludeShared` and `IncludePublic` parameters don’t apply for ‘SnapshotType` values of `manual` or `automated`. The `IncludePublic` parameter doesn’t apply when ‘SnapshotType` is set to `shared`. The `IncludeShared` parameter doesn’t apply when ‘SnapshotType` is set to `public`.

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more DB cluster snapshots to describe.

    Supported filters:

    • ‘db-cluster-id` - Accepts DB cluster identifiers and DB cluster Amazon Resource Names (ARNs).

    • ‘db-cluster-snapshot-id` - Accepts DB cluster snapshot identifiers.

    • ‘snapshot-type` - Accepts types of DB cluster snapshots.

    • ‘engine` - Accepts names of database engines.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBClusterSnapshots` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

  • :include_shared (Boolean)

    Specifies whether to include shared manual DB cluster snapshots from other Amazon Web Services accounts that this Amazon Web Services account has been given permission to copy or restore. By default, these snapshots are not included.

    You can give an Amazon Web Services account permission to restore a manual DB cluster snapshot from another Amazon Web Services account by the ‘ModifyDBClusterSnapshotAttribute` API action.

  • :include_public (Boolean)

    Specifies whether to include manual DB cluster snapshots that are public and can be copied or restored by any Amazon Web Services account. By default, the public snapshots are not included.

    You can share a manual DB cluster snapshot as public by using the ModifyDBClusterSnapshotAttribute API action.

  • :db_cluster_resource_id (String)

    A specific DB cluster resource ID to describe.

Returns:

See Also:



12429
12430
12431
12432
# File 'lib/aws-sdk-rds/client.rb', line 12429

def describe_db_cluster_snapshots(params = {}, options = {})
  req = build_request(:describe_db_cluster_snapshots, params)
  req.send_request(options)
end

#describe_db_clusters(params = {}) ⇒ Types::DBClusterMessage

Describes existing Amazon Aurora DB clusters and Multi-AZ DB clusters. This API supports pagination.

For more information on Amazon Aurora DB clusters, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

This operation can also return information for Amazon Neptune DB instances and Amazon DocumentDB instances.

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* db_cluster_available
* db_cluster_deleted

Examples:

Example: To describe a DB cluster


# The following example retrieves the details of the specified DB cluster.

resp = client.describe_db_clusters({
  db_cluster_identifier: "mydbcluster", 
})

resp.to_h outputs the following:
{
  db_clusters: [
    {
      allocated_storage: 1, 
      associated_roles: [
      ], 
      availability_zones: [
        "us-east-1a", 
        "us-east-1b", 
        "us-east-1e", 
      ], 
      backup_retention_period: 1, 
      cluster_create_time: Time.parse("2019-04-15T14:18:42.785Z"), 
      db_cluster_arn: "arn:aws:rds:us-east-1:123456789012:cluster:mydbcluster", 
      db_cluster_identifier: "mydbcluster", 
      db_cluster_members: [
        {
          db_cluster_parameter_group_status: "in-sync", 
          db_instance_identifier: "dbinstance3", 
          is_cluster_writer: false, 
          promotion_tier: 1, 
        }, 
        {
          db_cluster_parameter_group_status: "in-sync", 
          db_instance_identifier: "dbinstance1", 
          is_cluster_writer: false, 
          promotion_tier: 1, 
        }, 
        {
          db_cluster_parameter_group_status: "in-sync", 
          db_instance_identifier: "dbinstance2", 
          is_cluster_writer: false, 
          promotion_tier: 1, 
        }, 
        {
          db_cluster_parameter_group_status: "in-sync", 
          db_instance_identifier: "mydbcluster", 
          is_cluster_writer: false, 
          promotion_tier: 1, 
        }, 
        {
          db_cluster_parameter_group_status: "in-sync", 
          db_instance_identifier: "mydbcluster-us-east-1b", 
          is_cluster_writer: false, 
          promotion_tier: 1, 
        }, 
        {
          db_cluster_parameter_group_status: "in-sync", 
          db_instance_identifier: "mydbcluster", 
          is_cluster_writer: true, 
          promotion_tier: 1, 
        }, 
      ], 
      db_cluster_parameter_group: "default.aurora-mysql5.7", 
      db_subnet_group: "default", 
      database_name: "mydbcluster", 
      db_cluster_resource_id: "cluster-AKIAIOSFODNN7EXAMPLE", 
      deletion_protection: false, 
      earliest_restorable_time: Time.parse("2019-06-19T09:16:28.210Z"), 
      endpoint: "mydbcluster.cluster-cnpexample.us-east-1.rds.amazonaws.com", 
      engine: "aurora-mysql", 
      engine_mode: "provisioned", 
      engine_version: "5.7.mysql_aurora.2.04.2", 
      hosted_zone_id: "Z2R2ITUGPM61AM", 
      http_endpoint_enabled: false, 
      iam_database_authentication_enabled: false, 
      kms_key_id: "arn:aws:kms:us-east-1:814387698303:key/AKIAIOSFODNN7EXAMPLE", 
      latest_restorable_time: Time.parse("2019-06-20T22:38:14.908Z"), 
      master_username: "myadmin", 
      multi_az: true, 
      port: 3306, 
      preferred_backup_window: "09:09-09:39", 
      preferred_maintenance_window: "sat:04:09-sat:04:39", 
      read_replica_identifiers: [
      ], 
      reader_endpoint: "mydbcluster.cluster-ro-cnpexample.us-east-1.rds.amazonaws.com", 
      status: "available", 
      storage_encrypted: true, 
      vpc_security_groups: [
        {
          status: "active", 
          vpc_security_group_id: "sg-0b9130572daf3dc16", 
        }, 
      ], 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_db_clusters({
  db_cluster_identifier: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
  include_shared: false,
})

Response structure


resp.marker #=> String
resp.db_clusters #=> Array
resp.db_clusters[0].allocated_storage #=> Integer
resp.db_clusters[0].availability_zones #=> Array
resp.db_clusters[0].availability_zones[0] #=> String
resp.db_clusters[0].backup_retention_period #=> Integer
resp.db_clusters[0].character_set_name #=> String
resp.db_clusters[0].database_name #=> String
resp.db_clusters[0].db_cluster_identifier #=> String
resp.db_clusters[0].db_cluster_parameter_group #=> String
resp.db_clusters[0].db_subnet_group #=> String
resp.db_clusters[0].status #=> String
resp.db_clusters[0].automatic_restart_time #=> Time
resp.db_clusters[0].percent_progress #=> String
resp.db_clusters[0].earliest_restorable_time #=> Time
resp.db_clusters[0].endpoint #=> String
resp.db_clusters[0].reader_endpoint #=> String
resp.db_clusters[0].custom_endpoints #=> Array
resp.db_clusters[0].custom_endpoints[0] #=> String
resp.db_clusters[0].multi_az #=> Boolean
resp.db_clusters[0].engine #=> String
resp.db_clusters[0].engine_version #=> String
resp.db_clusters[0].latest_restorable_time #=> Time
resp.db_clusters[0].port #=> Integer
resp.db_clusters[0].master_username #=> String
resp.db_clusters[0].db_cluster_option_group_memberships #=> Array
resp.db_clusters[0].db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_clusters[0].db_cluster_option_group_memberships[0].status #=> String
resp.db_clusters[0].preferred_backup_window #=> String
resp.db_clusters[0].preferred_maintenance_window #=> String
resp.db_clusters[0].replication_source_identifier #=> String
resp.db_clusters[0].read_replica_identifiers #=> Array
resp.db_clusters[0].read_replica_identifiers[0] #=> String
resp.db_clusters[0].status_infos #=> Array
resp.db_clusters[0].status_infos[0].status_type #=> String
resp.db_clusters[0].status_infos[0].normal #=> Boolean
resp.db_clusters[0].status_infos[0].status #=> String
resp.db_clusters[0].status_infos[0].message #=> String
resp.db_clusters[0].db_cluster_members #=> Array
resp.db_clusters[0].db_cluster_members[0].db_instance_identifier #=> String
resp.db_clusters[0].db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_clusters[0].db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_clusters[0].db_cluster_members[0].promotion_tier #=> Integer
resp.db_clusters[0].vpc_security_groups #=> Array
resp.db_clusters[0].vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_clusters[0].vpc_security_groups[0].status #=> String
resp.db_clusters[0].hosted_zone_id #=> String
resp.db_clusters[0].storage_encrypted #=> Boolean
resp.db_clusters[0].kms_key_id #=> String
resp.db_clusters[0].db_cluster_resource_id #=> String
resp.db_clusters[0].db_cluster_arn #=> String
resp.db_clusters[0].associated_roles #=> Array
resp.db_clusters[0].associated_roles[0].role_arn #=> String
resp.db_clusters[0].associated_roles[0].status #=> String
resp.db_clusters[0].associated_roles[0].feature_name #=> String
resp.db_clusters[0].iam_database_authentication_enabled #=> Boolean
resp.db_clusters[0].clone_group_id #=> String
resp.db_clusters[0].cluster_create_time #=> Time
resp.db_clusters[0].earliest_backtrack_time #=> Time
resp.db_clusters[0].backtrack_window #=> Integer
resp.db_clusters[0].backtrack_consumed_change_records #=> Integer
resp.db_clusters[0].enabled_cloudwatch_logs_exports #=> Array
resp.db_clusters[0].enabled_cloudwatch_logs_exports[0] #=> String
resp.db_clusters[0].capacity #=> Integer
resp.db_clusters[0].engine_mode #=> String
resp.db_clusters[0].scaling_configuration_info.min_capacity #=> Integer
resp.db_clusters[0].scaling_configuration_info.max_capacity #=> Integer
resp.db_clusters[0].scaling_configuration_info.auto_pause #=> Boolean
resp.db_clusters[0].scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_clusters[0].scaling_configuration_info.timeout_action #=> String
resp.db_clusters[0].scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_clusters[0].rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_clusters[0].rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_clusters[0].rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_clusters[0].deletion_protection #=> Boolean
resp.db_clusters[0].http_endpoint_enabled #=> Boolean
resp.db_clusters[0].activity_stream_mode #=> String, one of "sync", "async"
resp.db_clusters[0].activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_clusters[0].activity_stream_kms_key_id #=> String
resp.db_clusters[0].activity_stream_kinesis_stream_name #=> String
resp.db_clusters[0].copy_tags_to_snapshot #=> Boolean
resp.db_clusters[0]. #=> Boolean
resp.db_clusters[0].domain_memberships #=> Array
resp.db_clusters[0].domain_memberships[0].domain #=> String
resp.db_clusters[0].domain_memberships[0].status #=> String
resp.db_clusters[0].domain_memberships[0].fqdn #=> String
resp.db_clusters[0].domain_memberships[0].iam_role_name #=> String
resp.db_clusters[0].domain_memberships[0].ou #=> String
resp.db_clusters[0].domain_memberships[0].auth_secret_arn #=> String
resp.db_clusters[0].domain_memberships[0].dns_ips #=> Array
resp.db_clusters[0].domain_memberships[0].dns_ips[0] #=> String
resp.db_clusters[0].tag_list #=> Array
resp.db_clusters[0].tag_list[0].key #=> String
resp.db_clusters[0].tag_list[0].value #=> String
resp.db_clusters[0].global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_clusters[0].global_write_forwarding_requested #=> Boolean
resp.db_clusters[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_clusters[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_clusters[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_clusters[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_clusters[0].pending_modified_values.db_cluster_identifier #=> String
resp.db_clusters[0].pending_modified_values.master_user_password #=> String
resp.db_clusters[0].pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_clusters[0].pending_modified_values.engine_version #=> String
resp.db_clusters[0].pending_modified_values.backup_retention_period #=> Integer
resp.db_clusters[0].pending_modified_values.allocated_storage #=> Integer
resp.db_clusters[0].pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_clusters[0].pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_clusters[0].pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_clusters[0].pending_modified_values.iops #=> Integer
resp.db_clusters[0].pending_modified_values.storage_type #=> String
resp.db_clusters[0].pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_clusters[0].pending_modified_values.certificate_details.valid_till #=> Time
resp.db_clusters[0].db_cluster_instance_class #=> String
resp.db_clusters[0].storage_type #=> String
resp.db_clusters[0].iops #=> Integer
resp.db_clusters[0].publicly_accessible #=> Boolean
resp.db_clusters[0].auto_minor_version_upgrade #=> Boolean
resp.db_clusters[0].monitoring_interval #=> Integer
resp.db_clusters[0].monitoring_role_arn #=> String
resp.db_clusters[0].database_insights_mode #=> String, one of "standard", "advanced"
resp.db_clusters[0].performance_insights_enabled #=> Boolean
resp.db_clusters[0].performance_insights_kms_key_id #=> String
resp.db_clusters[0].performance_insights_retention_period #=> Integer
resp.db_clusters[0].serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_clusters[0].serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_clusters[0].serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_clusters[0].network_type #=> String
resp.db_clusters[0].db_system_id #=> String
resp.db_clusters[0].master_user_secret.secret_arn #=> String
resp.db_clusters[0].master_user_secret.secret_status #=> String
resp.db_clusters[0].master_user_secret.kms_key_id #=> String
resp.db_clusters[0].io_optimized_next_allowed_modification_time #=> Time
resp.db_clusters[0].local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_clusters[0].aws_backup_recovery_point_arn #=> String
resp.db_clusters[0].limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_clusters[0].limitless_database.min_required_acu #=> Float
resp.db_clusters[0].storage_throughput #=> Integer
resp.db_clusters[0].cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_clusters[0].certificate_details.ca_identifier #=> String
resp.db_clusters[0].certificate_details.valid_till #=> Time
resp.db_clusters[0].engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (String)

    The user-supplied DB cluster identifier or the Amazon Resource Name (ARN) of the DB cluster. If this parameter is specified, information for only the specific DB cluster is returned. This parameter isn’t case-sensitive.

    Constraints:

    • If supplied, must match an existing DB cluster identifier.

    ^

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more DB clusters to describe.

    Supported Filters:

    • ‘clone-group-id` - Accepts clone group identifiers. The results list only includes information about the DB clusters associated with these clone groups.

    • ‘db-cluster-id` - Accepts DB cluster identifiers and DB cluster Amazon Resource Names (ARNs). The results list only includes information about the DB clusters identified by these ARNs.

    • ‘db-cluster-resource-id` - Accepts DB cluster resource identifiers. The results list will only include information about the DB clusters identified by these DB cluster resource identifiers.

    • ‘domain` - Accepts Active Directory directory IDs. The results list only includes information about the DB clusters associated with these domains.

    • ‘engine` - Accepts engine names. The results list only includes information about the DB clusters for these engines.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBClusters` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

  • :include_shared (Boolean)

    Specifies whether the output includes information about clusters shared from other Amazon Web Services accounts.

Returns:

See Also:



12782
12783
12784
12785
# File 'lib/aws-sdk-rds/client.rb', line 12782

def describe_db_clusters(params = {}, options = {})
  req = build_request(:describe_db_clusters, params)
  req.send_request(options)
end

#describe_db_engine_versions(params = {}) ⇒ Types::DBEngineVersionMessage

Describes the properties of specific versions of DB engines.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe the DB engine versions for the MySQL DB engine


# The following example displays details about each of the DB engine versions for the specified DB engine.

resp = client.describe_db_engine_versions({
  engine: "mysql", 
})

resp.to_h outputs the following:
{
  db_engine_versions: [
    {
      db_engine_description: "MySQL Community Edition", 
      db_engine_version_description: "MySQL 5.7.33", 
      db_parameter_group_family: "mysql5.7", 
      engine: "mysql", 
      engine_version: "5.7.33", 
      valid_upgrade_target: [
        {
          auto_upgrade: false, 
          description: "MySQL 5.7.34", 
          engine: "mysql", 
          engine_version: "5.7.34", 
          is_major_version_upgrade: false, 
        }, 
        {
          auto_upgrade: false, 
          description: "MySQL 5.7.36", 
          engine: "mysql", 
          engine_version: "5.7.36", 
          is_major_version_upgrade: false, 
        }, 
      ], 
    }, 
  ], # Some output ommitted.
}

Request syntax with placeholder values


resp = client.describe_db_engine_versions({
  engine: "String",
  engine_version: "String",
  db_parameter_group_family: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
  default_only: false,
  list_supported_character_sets: false,
  list_supported_timezones: false,
  include_all: false,
})

Response structure


resp.marker #=> String
resp.db_engine_versions #=> Array
resp.db_engine_versions[0].engine #=> String
resp.db_engine_versions[0].engine_version #=> String
resp.db_engine_versions[0].db_parameter_group_family #=> String
resp.db_engine_versions[0].db_engine_description #=> String
resp.db_engine_versions[0].db_engine_version_description #=> String
resp.db_engine_versions[0].default_character_set.character_set_name #=> String
resp.db_engine_versions[0].default_character_set.character_set_description #=> String
resp.db_engine_versions[0].image.image_id #=> String
resp.db_engine_versions[0].image.status #=> String
resp.db_engine_versions[0].db_engine_media_type #=> String
resp.db_engine_versions[0].supported_character_sets #=> Array
resp.db_engine_versions[0].supported_character_sets[0].character_set_name #=> String
resp.db_engine_versions[0].supported_character_sets[0].character_set_description #=> String
resp.db_engine_versions[0].supported_nchar_character_sets #=> Array
resp.db_engine_versions[0].supported_nchar_character_sets[0].character_set_name #=> String
resp.db_engine_versions[0].supported_nchar_character_sets[0].character_set_description #=> String
resp.db_engine_versions[0].valid_upgrade_target #=> Array
resp.db_engine_versions[0].valid_upgrade_target[0].engine #=> String
resp.db_engine_versions[0].valid_upgrade_target[0].engine_version #=> String
resp.db_engine_versions[0].valid_upgrade_target[0].description #=> String
resp.db_engine_versions[0].valid_upgrade_target[0].auto_upgrade #=> Boolean
resp.db_engine_versions[0].valid_upgrade_target[0].is_major_version_upgrade #=> Boolean
resp.db_engine_versions[0].valid_upgrade_target[0].supported_engine_modes #=> Array
resp.db_engine_versions[0].valid_upgrade_target[0].supported_engine_modes[0] #=> String
resp.db_engine_versions[0].valid_upgrade_target[0].supports_parallel_query #=> Boolean
resp.db_engine_versions[0].valid_upgrade_target[0].supports_global_databases #=> Boolean
resp.db_engine_versions[0].valid_upgrade_target[0].supports_babelfish #=> Boolean
resp.db_engine_versions[0].valid_upgrade_target[0].supports_limitless_database #=> Boolean
resp.db_engine_versions[0].valid_upgrade_target[0].supports_local_write_forwarding #=> Boolean
resp.db_engine_versions[0].valid_upgrade_target[0].supports_integrations #=> Boolean
resp.db_engine_versions[0].supported_timezones #=> Array
resp.db_engine_versions[0].supported_timezones[0].timezone_name #=> String
resp.db_engine_versions[0].exportable_log_types #=> Array
resp.db_engine_versions[0].exportable_log_types[0] #=> String
resp.db_engine_versions[0].supports_log_exports_to_cloudwatch_logs #=> Boolean
resp.db_engine_versions[0].supports_read_replica #=> Boolean
resp.db_engine_versions[0].supported_engine_modes #=> Array
resp.db_engine_versions[0].supported_engine_modes[0] #=> String
resp.db_engine_versions[0].supported_feature_names #=> Array
resp.db_engine_versions[0].supported_feature_names[0] #=> String
resp.db_engine_versions[0].status #=> String
resp.db_engine_versions[0].supports_parallel_query #=> Boolean
resp.db_engine_versions[0].supports_global_databases #=> Boolean
resp.db_engine_versions[0].major_engine_version #=> String
resp.db_engine_versions[0].database_installation_files_s3_bucket_name #=> String
resp.db_engine_versions[0].database_installation_files_s3_prefix #=> String
resp.db_engine_versions[0].db_engine_version_arn #=> String
resp.db_engine_versions[0].kms_key_id #=> String
resp.db_engine_versions[0].create_time #=> Time
resp.db_engine_versions[0].tag_list #=> Array
resp.db_engine_versions[0].tag_list[0].key #=> String
resp.db_engine_versions[0].tag_list[0].value #=> String
resp.db_engine_versions[0].supports_babelfish #=> Boolean
resp.db_engine_versions[0].custom_db_engine_version_manifest #=> String
resp.db_engine_versions[0].supports_limitless_database #=> Boolean
resp.db_engine_versions[0].supports_certificate_rotation_without_restart #=> Boolean
resp.db_engine_versions[0].supported_ca_certificate_identifiers #=> Array
resp.db_engine_versions[0].supported_ca_certificate_identifiers[0] #=> String
resp.db_engine_versions[0].supports_local_write_forwarding #=> Boolean
resp.db_engine_versions[0].supports_integrations #=> Boolean
resp.db_engine_versions[0].serverless_v2_features_support.min_capacity #=> Float
resp.db_engine_versions[0].serverless_v2_features_support.max_capacity #=> Float

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :engine (String)

    The database engine to return version details for.

    Valid Values:

    • ‘aurora-mysql`

    • ‘aurora-postgresql`

    • ‘custom-oracle-ee`

    • ‘custom-oracle-ee-cdb`

    • ‘custom-oracle-se2`

    • ‘custom-oracle-se2-cdb`

    • ‘db2-ae`

    • ‘db2-se`

    • ‘mariadb`

    • ‘mysql`

    • ‘oracle-ee`

    • ‘oracle-ee-cdb`

    • ‘oracle-se2`

    • ‘oracle-se2-cdb`

    • ‘postgres`

    • ‘sqlserver-ee`

    • ‘sqlserver-se`

    • ‘sqlserver-ex`

    • ‘sqlserver-web`

  • :engine_version (String)

    A specific database engine version to return details for.

    Example: ‘5.1.49`

  • :db_parameter_group_family (String)

    The name of a specific DB parameter group family to return details for.

    Constraints:

    • If supplied, must match an existing DB parameter group family.

    ^

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more DB engine versions to describe.

    Supported filters:

    • ‘db-parameter-group-family` - Accepts parameter groups family names. The results list only includes information about the DB engine versions for these parameter group families.

    • ‘engine` - Accepts engine names. The results list only includes information about the DB engine versions for these engines.

    • ‘engine-mode` - Accepts DB engine modes. The results list only includes information about the DB engine versions for these engine modes. Valid DB engine modes are the following:

      • ‘global`

      • ‘multimaster`

      • ‘parallelquery`

      • ‘provisioned`

      • ‘serverless`

    • ‘engine-version` - Accepts engine versions. The results list only includes information about the DB engine versions for these engine versions.

    • ‘status` - Accepts engine version statuses. The results list only includes information about the DB engine versions for these statuses. Valid statuses are the following:

      • ‘available`

      • ‘deprecated`

  • :max_records (Integer)

    The maximum number of records to include in the response. If more than the ‘MaxRecords` value is available, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

  • :default_only (Boolean)

    Specifies whether to return only the default version of the specified engine or the engine and major version combination.

  • :list_supported_character_sets (Boolean)

    Specifies whether to list the supported character sets for each engine version.

    If this parameter is enabled and the requested engine supports the ‘CharacterSetName` parameter for `CreateDBInstance`, the response includes a list of supported character sets for each engine version.

    For RDS Custom, the default is not to list supported character sets. If you enable this parameter, RDS Custom returns no results.

  • :list_supported_timezones (Boolean)

    Specifies whether to list the supported time zones for each engine version.

    If this parameter is enabled and the requested engine supports the ‘TimeZone` parameter for `CreateDBInstance`, the response includes a list of supported time zones for each engine version.

    For RDS Custom, the default is not to list supported time zones. If you enable this parameter, RDS Custom returns no results.

  • :include_all (Boolean)

    Specifies whether to also list the engine versions that aren’t available. The default is to list only available engine versions.

Returns:

See Also:



13065
13066
13067
13068
# File 'lib/aws-sdk-rds/client.rb', line 13065

def describe_db_engine_versions(params = {}, options = {})
  req = build_request(:describe_db_engine_versions, params)
  req.send_request(options)
end

#describe_db_instance_automated_backups(params = {}) ⇒ Types::DBInstanceAutomatedBackupMessage

Displays backups for both current and deleted instances. For example, use this operation to find details about automated backups for previously deleted instances. Current instances with retention periods greater than zero (0) are returned for both the ‘DescribeDBInstanceAutomatedBackups` and `DescribeDBInstances` operations.

All parameters are optional.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe the automated backups for a DB instance


# The following example displays details about the automated backups for the specified DB instance. The details include
# replicated automated backups in other AWS Regions.

resp = client.describe_db_instance_automated_backups({
  db_instance_identifier: "new-orcl-db", 
})

resp.to_h outputs the following:
{
  db_instance_automated_backups: [
    {
      allocated_storage: 20, 
      backup_retention_period: 14, 
      db_instance_arn: "arn:aws:rds:us-east-1:123456789012:db:new-orcl-db", 
      db_instance_automated_backups_arn: "arn:aws:rds:us-west-2:123456789012:auto-backup:ab-jkib2gfq5rv7replzadausbrktni2bn4example", 
      db_instance_identifier: "new-orcl-db", 
      dbi_resource_id: "db-JKIB2GFQ5RV7REPLZA4EXAMPLE", 
      encrypted: false, 
      engine: "oracle-se2", 
      engine_version: "12.1.0.2.v21", 
      iam_database_authentication_enabled: false, 
      instance_create_time: Time.parse("2020-12-04T15:28:31Z"), 
      license_model: "bring-your-own-license", 
      master_username: "admin", 
      option_group_name: "default:oracle-se2-12-1", 
      port: 1521, 
      region: "us-east-1", 
      restore_window: {
        earliest_time: Time.parse("2020-12-07T21:05:20.939Z"), 
        latest_time: Time.parse("2020-12-07T21:05:20.939Z"), 
      }, 
      status: "replicating", 
      storage_type: "gp2", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_db_instance_automated_backups({
  dbi_resource_id: "String",
  db_instance_identifier: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
  db_instance_automated_backups_arn: "String",
})

Response structure


resp.marker #=> String
resp.db_instance_automated_backups #=> Array
resp.db_instance_automated_backups[0].db_instance_arn #=> String
resp.db_instance_automated_backups[0].dbi_resource_id #=> String
resp.db_instance_automated_backups[0].region #=> String
resp.db_instance_automated_backups[0].db_instance_identifier #=> String
resp.db_instance_automated_backups[0].restore_window.earliest_time #=> Time
resp.db_instance_automated_backups[0].restore_window.latest_time #=> Time
resp.db_instance_automated_backups[0].allocated_storage #=> Integer
resp.db_instance_automated_backups[0].status #=> String
resp.db_instance_automated_backups[0].port #=> Integer
resp.db_instance_automated_backups[0].availability_zone #=> String
resp.db_instance_automated_backups[0].vpc_id #=> String
resp.db_instance_automated_backups[0].instance_create_time #=> Time
resp.db_instance_automated_backups[0].master_username #=> String
resp.db_instance_automated_backups[0].engine #=> String
resp.db_instance_automated_backups[0].engine_version #=> String
resp.db_instance_automated_backups[0].license_model #=> String
resp.db_instance_automated_backups[0].iops #=> Integer
resp.db_instance_automated_backups[0].option_group_name #=> String
resp.db_instance_automated_backups[0].tde_credential_arn #=> String
resp.db_instance_automated_backups[0].encrypted #=> Boolean
resp.db_instance_automated_backups[0].storage_type #=> String
resp.db_instance_automated_backups[0].kms_key_id #=> String
resp.db_instance_automated_backups[0].timezone #=> String
resp.db_instance_automated_backups[0].iam_database_authentication_enabled #=> Boolean
resp.db_instance_automated_backups[0].backup_retention_period #=> Integer
resp.db_instance_automated_backups[0].db_instance_automated_backups_arn #=> String
resp.db_instance_automated_backups[0].db_instance_automated_backups_replications #=> Array
resp.db_instance_automated_backups[0].db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance_automated_backups[0].backup_target #=> String
resp.db_instance_automated_backups[0].storage_throughput #=> Integer
resp.db_instance_automated_backups[0].aws_backup_recovery_point_arn #=> String
resp.db_instance_automated_backups[0].dedicated_log_volume #=> Boolean
resp.db_instance_automated_backups[0].multi_tenant #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :dbi_resource_id (String)

    The resource ID of the DB instance that is the source of the automated backup. This parameter isn’t case-sensitive.

  • :db_instance_identifier (String) — default: Optional

    The user-supplied instance identifier. If this parameter is specified, it must match the identifier of an existing DB instance. It returns information from the specific DB instance’s automated backup. This parameter isn’t case-sensitive.

  • :filters (Array<Types::Filter>)

    A filter that specifies which resources to return based on status.

    Supported filters are the following:

    • ‘status`

      • ‘active` - Automated backups for current instances.

      • ‘creating` - Automated backups that are waiting for the first automated snapshot to be available.

      • ‘retained` - Automated backups for deleted instances and after backup replication is stopped.

    • ‘db-instance-id` - Accepts DB instance identifiers and Amazon Resource Names (ARNs). The results list includes only information about the DB instance automated backups identified by these ARNs.

    • ‘dbi-resource-id` - Accepts DB resource identifiers and Amazon Resource Names (ARNs). The results list includes only information about the DB instance resources identified by these ARNs.

    Returns all resources by default. The status for each resource is specified in the response.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

  • :marker (String)

    The pagination token provided in the previous request. If this parameter is specified the response includes only records beyond the marker, up to ‘MaxRecords`.

  • :db_instance_automated_backups_arn (String)

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

    This setting doesn’t apply to RDS Custom.

Returns:

See Also:



13237
13238
13239
13240
# File 'lib/aws-sdk-rds/client.rb', line 13237

def describe_db_instance_automated_backups(params = {}, options = {})
  req = build_request(:describe_db_instance_automated_backups, params)
  req.send_request(options)
end

#describe_db_instances(params = {}) ⇒ Types::DBInstanceMessage

Describes provisioned RDS instances. This API supports pagination.

<note markdown=“1”> This operation can also return information for Amazon Neptune DB instances and Amazon DocumentDB instances.

</note>

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* db_instance_available
* db_instance_deleted

Examples:

Example: To describe a DB instance


# The following example retrieves details about the specified DB instance.

resp = client.describe_db_instances({
  db_instance_identifier: "mydbinstancecf", 
})

resp.to_h outputs the following:
{
  db_instances: [
    {
      db_instance_class: "db.t3.small", 
      db_instance_identifier: "mydbinstancecf", 
      db_instance_status: "available", 
      endpoint: {
        address: "mydbinstancecf.abcexample.us-east-1.rds.amazonaws.com", 
        hosted_zone_id: "Z2R2ITUGPM61AM", 
        port: 3306, 
      }, 
      engine: "mysql", 
      master_username: "admin", 
    }, 
  ], # Some output ommitted.
}

Request syntax with placeholder values


resp = client.describe_db_instances({
  db_instance_identifier: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.db_instances #=> Array
resp.db_instances[0].db_instance_identifier #=> String
resp.db_instances[0].db_instance_class #=> String
resp.db_instances[0].engine #=> String
resp.db_instances[0].db_instance_status #=> String
resp.db_instances[0].automatic_restart_time #=> Time
resp.db_instances[0].master_username #=> String
resp.db_instances[0].db_name #=> String
resp.db_instances[0].endpoint.address #=> String
resp.db_instances[0].endpoint.port #=> Integer
resp.db_instances[0].endpoint.hosted_zone_id #=> String
resp.db_instances[0].allocated_storage #=> Integer
resp.db_instances[0].instance_create_time #=> Time
resp.db_instances[0].preferred_backup_window #=> String
resp.db_instances[0].backup_retention_period #=> Integer
resp.db_instances[0].db_security_groups #=> Array
resp.db_instances[0].db_security_groups[0].db_security_group_name #=> String
resp.db_instances[0].db_security_groups[0].status #=> String
resp.db_instances[0].vpc_security_groups #=> Array
resp.db_instances[0].vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instances[0].vpc_security_groups[0].status #=> String
resp.db_instances[0].db_parameter_groups #=> Array
resp.db_instances[0].db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instances[0].db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instances[0].availability_zone #=> String
resp.db_instances[0].db_subnet_group.db_subnet_group_name #=> String
resp.db_instances[0].db_subnet_group.db_subnet_group_description #=> String
resp.db_instances[0].db_subnet_group.vpc_id #=> String
resp.db_instances[0].db_subnet_group.subnet_group_status #=> String
resp.db_instances[0].db_subnet_group.subnets #=> Array
resp.db_instances[0].db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instances[0].db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instances[0].db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instances[0].db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instances[0].db_subnet_group.db_subnet_group_arn #=> String
resp.db_instances[0].db_subnet_group.supported_network_types #=> Array
resp.db_instances[0].db_subnet_group.supported_network_types[0] #=> String
resp.db_instances[0].preferred_maintenance_window #=> String
resp.db_instances[0].pending_modified_values.db_instance_class #=> String
resp.db_instances[0].pending_modified_values.allocated_storage #=> Integer
resp.db_instances[0].pending_modified_values.master_user_password #=> String
resp.db_instances[0].pending_modified_values.port #=> Integer
resp.db_instances[0].pending_modified_values.backup_retention_period #=> Integer
resp.db_instances[0].pending_modified_values.multi_az #=> Boolean
resp.db_instances[0].pending_modified_values.engine_version #=> String
resp.db_instances[0].pending_modified_values.license_model #=> String
resp.db_instances[0].pending_modified_values.iops #=> Integer
resp.db_instances[0].pending_modified_values.db_instance_identifier #=> String
resp.db_instances[0].pending_modified_values.storage_type #=> String
resp.db_instances[0].pending_modified_values.ca_certificate_identifier #=> String
resp.db_instances[0].pending_modified_values.db_subnet_group_name #=> String
resp.db_instances[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instances[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instances[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instances[0].pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instances[0].pending_modified_values.processor_features #=> Array
resp.db_instances[0].pending_modified_values.processor_features[0].name #=> String
resp.db_instances[0].pending_modified_values.processor_features[0].value #=> String
resp.db_instances[0].pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instances[0].pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instances[0].pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instances[0].pending_modified_values.storage_throughput #=> Integer
resp.db_instances[0].pending_modified_values.engine #=> String
resp.db_instances[0].pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instances[0].pending_modified_values.multi_tenant #=> Boolean
resp.db_instances[0].latest_restorable_time #=> Time
resp.db_instances[0].multi_az #=> Boolean
resp.db_instances[0].engine_version #=> String
resp.db_instances[0].auto_minor_version_upgrade #=> Boolean
resp.db_instances[0].read_replica_source_db_instance_identifier #=> String
resp.db_instances[0].read_replica_db_instance_identifiers #=> Array
resp.db_instances[0].read_replica_db_instance_identifiers[0] #=> String
resp.db_instances[0].read_replica_db_cluster_identifiers #=> Array
resp.db_instances[0].read_replica_db_cluster_identifiers[0] #=> String
resp.db_instances[0].replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instances[0].license_model #=> String
resp.db_instances[0].iops #=> Integer
resp.db_instances[0].option_group_memberships #=> Array
resp.db_instances[0].option_group_memberships[0].option_group_name #=> String
resp.db_instances[0].option_group_memberships[0].status #=> String
resp.db_instances[0].character_set_name #=> String
resp.db_instances[0].nchar_character_set_name #=> String
resp.db_instances[0].secondary_availability_zone #=> String
resp.db_instances[0].publicly_accessible #=> Boolean
resp.db_instances[0].status_infos #=> Array
resp.db_instances[0].status_infos[0].status_type #=> String
resp.db_instances[0].status_infos[0].normal #=> Boolean
resp.db_instances[0].status_infos[0].status #=> String
resp.db_instances[0].status_infos[0].message #=> String
resp.db_instances[0].storage_type #=> String
resp.db_instances[0].tde_credential_arn #=> String
resp.db_instances[0].db_instance_port #=> Integer
resp.db_instances[0].db_cluster_identifier #=> String
resp.db_instances[0].storage_encrypted #=> Boolean
resp.db_instances[0].kms_key_id #=> String
resp.db_instances[0].dbi_resource_id #=> String
resp.db_instances[0].ca_certificate_identifier #=> String
resp.db_instances[0].domain_memberships #=> Array
resp.db_instances[0].domain_memberships[0].domain #=> String
resp.db_instances[0].domain_memberships[0].status #=> String
resp.db_instances[0].domain_memberships[0].fqdn #=> String
resp.db_instances[0].domain_memberships[0].iam_role_name #=> String
resp.db_instances[0].domain_memberships[0].ou #=> String
resp.db_instances[0].domain_memberships[0].auth_secret_arn #=> String
resp.db_instances[0].domain_memberships[0].dns_ips #=> Array
resp.db_instances[0].domain_memberships[0].dns_ips[0] #=> String
resp.db_instances[0].copy_tags_to_snapshot #=> Boolean
resp.db_instances[0].monitoring_interval #=> Integer
resp.db_instances[0].enhanced_monitoring_resource_arn #=> String
resp.db_instances[0].monitoring_role_arn #=> String
resp.db_instances[0].promotion_tier #=> Integer
resp.db_instances[0].db_instance_arn #=> String
resp.db_instances[0].timezone #=> String
resp.db_instances[0].iam_database_authentication_enabled #=> Boolean
resp.db_instances[0].database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instances[0].performance_insights_enabled #=> Boolean
resp.db_instances[0].performance_insights_kms_key_id #=> String
resp.db_instances[0].performance_insights_retention_period #=> Integer
resp.db_instances[0].enabled_cloudwatch_logs_exports #=> Array
resp.db_instances[0].enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instances[0].processor_features #=> Array
resp.db_instances[0].processor_features[0].name #=> String
resp.db_instances[0].processor_features[0].value #=> String
resp.db_instances[0].deletion_protection #=> Boolean
resp.db_instances[0].associated_roles #=> Array
resp.db_instances[0].associated_roles[0].role_arn #=> String
resp.db_instances[0].associated_roles[0].feature_name #=> String
resp.db_instances[0].associated_roles[0].status #=> String
resp.db_instances[0].listener_endpoint.address #=> String
resp.db_instances[0].listener_endpoint.port #=> Integer
resp.db_instances[0].listener_endpoint.hosted_zone_id #=> String
resp.db_instances[0].max_allocated_storage #=> Integer
resp.db_instances[0].tag_list #=> Array
resp.db_instances[0].tag_list[0].key #=> String
resp.db_instances[0].tag_list[0].value #=> String
resp.db_instances[0].db_instance_automated_backups_replications #=> Array
resp.db_instances[0].db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instances[0].customer_owned_ip_enabled #=> Boolean
resp.db_instances[0].aws_backup_recovery_point_arn #=> String
resp.db_instances[0].activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instances[0].activity_stream_kms_key_id #=> String
resp.db_instances[0].activity_stream_kinesis_stream_name #=> String
resp.db_instances[0].activity_stream_mode #=> String, one of "sync", "async"
resp.db_instances[0].activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instances[0].automation_mode #=> String, one of "full", "all-paused"
resp.db_instances[0].resume_full_automation_mode_time #=> Time
resp.db_instances[0].custom_iam_instance_profile #=> String
resp.db_instances[0].backup_target #=> String
resp.db_instances[0].network_type #=> String
resp.db_instances[0].activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instances[0].storage_throughput #=> Integer
resp.db_instances[0].db_system_id #=> String
resp.db_instances[0].master_user_secret.secret_arn #=> String
resp.db_instances[0].master_user_secret.secret_status #=> String
resp.db_instances[0].master_user_secret.kms_key_id #=> String
resp.db_instances[0].certificate_details.ca_identifier #=> String
resp.db_instances[0].certificate_details.valid_till #=> Time
resp.db_instances[0].read_replica_source_db_cluster_identifier #=> String
resp.db_instances[0].percent_progress #=> String
resp.db_instances[0].dedicated_log_volume #=> Boolean
resp.db_instances[0].is_storage_config_upgrade_available #=> Boolean
resp.db_instances[0].multi_tenant #=> Boolean
resp.db_instances[0].engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (String)

    The user-supplied instance identifier or the Amazon Resource Name (ARN) of the DB instance. If this parameter is specified, information from only the specific DB instance is returned. This parameter isn’t case-sensitive.

    Constraints:

    • If supplied, must match the identifier of an existing DB instance.

    ^

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more DB instances to describe.

    Supported Filters:

    • ‘db-cluster-id` - Accepts DB cluster identifiers and DB cluster Amazon Resource Names (ARNs). The results list only includes information about the DB instances associated with the DB clusters identified by these ARNs.

    • ‘db-instance-id` - Accepts DB instance identifiers and DB instance Amazon Resource Names (ARNs). The results list only includes information about the DB instances identified by these ARNs.

    • ‘dbi-resource-id` - Accepts DB instance resource identifiers. The results list only includes information about the DB instances identified by these DB instance resource identifiers.

    • ‘domain` - Accepts Active Directory directory IDs. The results list only includes information about the DB instances associated with these domains.

    • ‘engine` - Accepts engine names. The results list only includes information about the DB instances for these engines.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBInstances` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



13527
13528
13529
13530
# File 'lib/aws-sdk-rds/client.rb', line 13527

def describe_db_instances(params = {}, options = {})
  req = build_request(:describe_db_instances, params)
  req.send_request(options)
end

#describe_db_log_files(params = {}) ⇒ Types::DescribeDBLogFilesResponse

Returns a list of DB log files for the DB instance.

This command doesn’t apply to RDS Custom.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe the log files for a DB instance


# The following example retrieves details about the log files for the specified DB instance.

resp = client.describe_db_log_files({
  db_instance_identifier: "test-instance", 
})

resp.to_h outputs the following:
{
  describe_db_log_files: [
    {
      last_written: 1533060000000, 
      log_file_name: "error/mysql-error-running.log", 
      size: 0, 
    }, 
    {
      last_written: 1532994300000, 
      log_file_name: "error/mysql-error-running.log.0", 
      size: 2683, 
    }, 
    {
      last_written: 1533057300000, 
      log_file_name: "error/mysql-error-running.log.18", 
      size: 107, 
    }, 
    {
      last_written: 1532991000000, 
      log_file_name: "error/mysql-error-running.log.23", 
      size: 13105, 
    }, 
    {
      last_written: 1533061200000, 
      log_file_name: "error/mysql-error.log", 
      size: 0, 
    }, 
    {
      last_written: 1532989252000, 
      log_file_name: "mysqlUpgrade", 
      size: 3519, 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_db_log_files({
  db_instance_identifier: "String", # required
  filename_contains: "String",
  file_last_written: 1,
  file_size: 1,
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.describe_db_log_files #=> Array
resp.describe_db_log_files[0].log_file_name #=> String
resp.describe_db_log_files[0].last_written #=> Integer
resp.describe_db_log_files[0].size #=> Integer
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The customer-assigned name of the DB instance that contains the log files you want to list.

    Constraints:

    • Must match the identifier of an existing DBInstance.

    ^

  • :filename_contains (String)

    Filters the available log files for log file names that contain the specified string.

  • :file_last_written (Integer)

    Filters the available log files for files written since the specified date, in POSIX timestamp format with milliseconds.

  • :file_size (Integer)

    Filters the available log files for files larger than the specified size.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

  • :marker (String)

    The pagination token provided in the previous request. If this parameter is specified the response includes only records beyond the marker, up to MaxRecords.

Returns:

See Also:



13653
13654
13655
13656
# File 'lib/aws-sdk-rds/client.rb', line 13653

def describe_db_log_files(params = {}, options = {})
  req = build_request(:describe_db_log_files, params)
  req.send_request(options)
end

#describe_db_parameter_groups(params = {}) ⇒ Types::DBParameterGroupsMessage

Returns a list of ‘DBParameterGroup` descriptions. If a `DBParameterGroupName` is specified, the list will contain only the description of the specified DB parameter group.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe your DB parameter groups


# The following example retrieves details about your DB parameter groups.

resp = client.describe_db_parameter_groups({
})

resp.to_h outputs the following:
{
  db_parameter_groups: [
    {
      db_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:pg:default.aurora-mysql5.7", 
      db_parameter_group_family: "aurora-mysql5.7", 
      db_parameter_group_name: "default.aurora-mysql5.7", 
      description: "Default parameter group for aurora-mysql5.7", 
    }, 
    {
      db_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:pg:default.aurora-postgresql9.6", 
      db_parameter_group_family: "aurora-postgresql9.6", 
      db_parameter_group_name: "default.aurora-postgresql9.6", 
      description: "Default parameter group for aurora-postgresql9.6", 
    }, 
    {
      db_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:pg:default.aurora5.6", 
      db_parameter_group_family: "aurora5.6", 
      db_parameter_group_name: "default.aurora5.6", 
      description: "Default parameter group for aurora5.6", 
    }, 
    {
      db_parameter_group_arn: "arn:aws:rds:us-east-1:123456789012:pg:default.mariadb10.1", 
      db_parameter_group_family: "mariadb10.1", 
      db_parameter_group_name: "default.mariadb10.1", 
      description: "Default parameter group for mariadb10.1", 
    }, 
  ], # Some output ommitted.
}

Request syntax with placeholder values


resp = client.describe_db_parameter_groups({
  db_parameter_group_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.db_parameter_groups #=> Array
resp.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_parameter_groups[0].db_parameter_group_family #=> String
resp.db_parameter_groups[0].description #=> String
resp.db_parameter_groups[0].db_parameter_group_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_parameter_group_name (String)

    The name of a specific DB parameter group to return details for.

    Constraints:

    • If supplied, must match the name of an existing DBClusterParameterGroup.

    ^

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBParameterGroups` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



13763
13764
13765
13766
# File 'lib/aws-sdk-rds/client.rb', line 13763

def describe_db_parameter_groups(params = {}, options = {})
  req = build_request(:describe_db_parameter_groups, params)
  req.send_request(options)
end

#describe_db_parameters(params = {}) ⇒ Types::DBParameterGroupDetails

Returns the detailed parameter list for a particular DB parameter group.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe the parameters in a DB parameter group


# The following example retrieves the details of the specified DB parameter group.

resp = client.describe_db_parameters({
  db_parameter_group_name: "mydbpg", 
})

resp.to_h outputs the following:
{
  parameters: [
    {
      allowed_values: "0,1", 
      apply_method: "pending-reboot", 
      apply_type: "static", 
      data_type: "boolean", 
      description: "Controls whether user-defined functions that have only an xxx symbol for the main function can be loaded", 
      is_modifiable: false, 
      parameter_name: "allow-suspicious-udfs", 
      source: "engine-default", 
    }, 
    {
      allowed_values: "0,1", 
      apply_method: "pending-reboot", 
      apply_type: "static", 
      data_type: "boolean", 
      description: "Controls whether the server autogenerates SSL key and certificate files in the data directory, if they do not already exist.", 
      is_modifiable: false, 
      parameter_name: "auto_generate_certs", 
      source: "engine-default", 
    }, 
  ], # Some output omitted.
}

Request syntax with placeholder values


resp = client.describe_db_parameters({
  db_parameter_group_name: "String", # required
  source: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.parameters #=> Array
resp.parameters[0].parameter_name #=> String
resp.parameters[0].parameter_value #=> String
resp.parameters[0].description #=> String
resp.parameters[0].source #=> String
resp.parameters[0].apply_type #=> String
resp.parameters[0].data_type #=> String
resp.parameters[0].allowed_values #=> String
resp.parameters[0].is_modifiable #=> Boolean
resp.parameters[0].minimum_engine_version #=> String
resp.parameters[0].apply_method #=> String, one of "immediate", "pending-reboot"
resp.parameters[0].supported_engine_modes #=> Array
resp.parameters[0].supported_engine_modes[0] #=> String
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_parameter_group_name (required, String)

    The name of a specific DB parameter group to return details for.

    Constraints:

    • If supplied, must match the name of an existing DBParameterGroup.

    ^

  • :source (String)

    The parameter types to return.

    Default: All parameter types returned

    Valid Values: ‘user | system | engine-default`

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more DB parameters to describe.

    The only supported filter is ‘parameter-name`. The results list only includes information about the DB parameters with these names.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBParameters` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



13887
13888
13889
13890
# File 'lib/aws-sdk-rds/client.rb', line 13887

def describe_db_parameters(params = {}, options = {})
  req = build_request(:describe_db_parameters, params)
  req.send_request(options)
end

#describe_db_proxies(params = {}) ⇒ Types::DescribeDBProxiesResponse

Returns information about DB proxies.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_db_proxies({
  db_proxy_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
})

Response structure


resp.db_proxies #=> Array
resp.db_proxies[0].db_proxy_name #=> String
resp.db_proxies[0].db_proxy_arn #=> String
resp.db_proxies[0].status #=> String, one of "available", "modifying", "incompatible-network", "insufficient-resource-limits", "creating", "deleting", "suspended", "suspending", "reactivating"
resp.db_proxies[0].engine_family #=> String
resp.db_proxies[0].vpc_id #=> String
resp.db_proxies[0].vpc_security_group_ids #=> Array
resp.db_proxies[0].vpc_security_group_ids[0] #=> String
resp.db_proxies[0].vpc_subnet_ids #=> Array
resp.db_proxies[0].vpc_subnet_ids[0] #=> String
resp.db_proxies[0].auth #=> Array
resp.db_proxies[0].auth[0].description #=> String
resp.db_proxies[0].auth[0].user_name #=> String
resp.db_proxies[0].auth[0].auth_scheme #=> String, one of "SECRETS"
resp.db_proxies[0].auth[0].secret_arn #=> String
resp.db_proxies[0].auth[0].iam_auth #=> String, one of "DISABLED", "REQUIRED", "ENABLED"
resp.db_proxies[0].auth[0].client_password_auth_type #=> String, one of "MYSQL_NATIVE_PASSWORD", "MYSQL_CACHING_SHA2_PASSWORD", "POSTGRES_SCRAM_SHA_256", "POSTGRES_MD5", "SQL_SERVER_AUTHENTICATION"
resp.db_proxies[0].role_arn #=> String
resp.db_proxies[0].endpoint #=> String
resp.db_proxies[0].require_tls #=> Boolean
resp.db_proxies[0].idle_client_timeout #=> Integer
resp.db_proxies[0].debug_logging #=> Boolean
resp.db_proxies[0].created_date #=> Time
resp.db_proxies[0].updated_date #=> Time
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_name (String)

    The name of the DB proxy. If you omit this parameter, the output includes information about all DB proxies owned by your Amazon Web Services account ID.

  • :filters (Array<Types::Filter>)

    This parameter is not currently supported.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

Returns:

See Also:



13970
13971
13972
13973
# File 'lib/aws-sdk-rds/client.rb', line 13970

def describe_db_proxies(params = {}, options = {})
  req = build_request(:describe_db_proxies, params)
  req.send_request(options)
end

#describe_db_proxy_endpoints(params = {}) ⇒ Types::DescribeDBProxyEndpointsResponse

Returns information about DB proxy endpoints.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_db_proxy_endpoints({
  db_proxy_name: "DBProxyName",
  db_proxy_endpoint_name: "DBProxyEndpointName",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
})

Response structure


resp.db_proxy_endpoints #=> Array
resp.db_proxy_endpoints[0].db_proxy_endpoint_name #=> String
resp.db_proxy_endpoints[0].db_proxy_endpoint_arn #=> String
resp.db_proxy_endpoints[0].db_proxy_name #=> String
resp.db_proxy_endpoints[0].status #=> String, one of "available", "modifying", "incompatible-network", "insufficient-resource-limits", "creating", "deleting"
resp.db_proxy_endpoints[0].vpc_id #=> String
resp.db_proxy_endpoints[0].vpc_security_group_ids #=> Array
resp.db_proxy_endpoints[0].vpc_security_group_ids[0] #=> String
resp.db_proxy_endpoints[0].vpc_subnet_ids #=> Array
resp.db_proxy_endpoints[0].vpc_subnet_ids[0] #=> String
resp.db_proxy_endpoints[0].endpoint #=> String
resp.db_proxy_endpoints[0].created_date #=> Time
resp.db_proxy_endpoints[0].target_role #=> String, one of "READ_WRITE", "READ_ONLY"
resp.db_proxy_endpoints[0].is_default #=> Boolean
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_name (String)

    The name of the DB proxy whose endpoints you want to describe. If you omit this parameter, the output includes information about all DB proxy endpoints associated with all your DB proxies.

  • :db_proxy_endpoint_name (String)

    The name of a DB proxy endpoint to describe. If you omit this parameter, the output includes information about all DB proxy endpoints associated with the specified proxy.

  • :filters (Array<Types::Filter>)

    This parameter is not currently supported.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

Returns:

See Also:



14049
14050
14051
14052
# File 'lib/aws-sdk-rds/client.rb', line 14049

def describe_db_proxy_endpoints(params = {}, options = {})
  req = build_request(:describe_db_proxy_endpoints, params)
  req.send_request(options)
end

#describe_db_proxy_target_groups(params = {}) ⇒ Types::DescribeDBProxyTargetGroupsResponse

Returns information about DB proxy target groups, represented by ‘DBProxyTargetGroup` data structures.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_db_proxy_target_groups({
  db_proxy_name: "String", # required
  target_group_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
})

Response structure


resp.target_groups #=> Array
resp.target_groups[0].db_proxy_name #=> String
resp.target_groups[0].target_group_name #=> String
resp.target_groups[0].target_group_arn #=> String
resp.target_groups[0].is_default #=> Boolean
resp.target_groups[0].status #=> String
resp.target_groups[0].connection_pool_config.max_connections_percent #=> Integer
resp.target_groups[0].connection_pool_config.max_idle_connections_percent #=> Integer
resp.target_groups[0].connection_pool_config.connection_borrow_timeout #=> Integer
resp.target_groups[0].connection_pool_config.session_pinning_filters #=> Array
resp.target_groups[0].connection_pool_config.session_pinning_filters[0] #=> String
resp.target_groups[0].connection_pool_config.init_query #=> String
resp.target_groups[0].created_date #=> Time
resp.target_groups[0].updated_date #=> Time
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_name (required, String)

    The identifier of the ‘DBProxy` associated with the target group.

  • :target_group_name (String)

    The identifier of the ‘DBProxyTargetGroup` to describe.

  • :filters (Array<Types::Filter>)

    This parameter is not currently supported.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

Returns:

See Also:



14125
14126
14127
14128
# File 'lib/aws-sdk-rds/client.rb', line 14125

def describe_db_proxy_target_groups(params = {}, options = {})
  req = build_request(:describe_db_proxy_target_groups, params)
  req.send_request(options)
end

#describe_db_proxy_targets(params = {}) ⇒ Types::DescribeDBProxyTargetsResponse

Returns information about ‘DBProxyTarget` objects. This API supports pagination.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_db_proxy_targets({
  db_proxy_name: "String", # required
  target_group_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
})

Response structure


resp.targets #=> Array
resp.targets[0].target_arn #=> String
resp.targets[0].endpoint #=> String
resp.targets[0].tracked_cluster_id #=> String
resp.targets[0].rds_resource_id #=> String
resp.targets[0].port #=> Integer
resp.targets[0].type #=> String, one of "RDS_INSTANCE", "RDS_SERVERLESS_ENDPOINT", "TRACKED_CLUSTER"
resp.targets[0].role #=> String, one of "READ_WRITE", "READ_ONLY", "UNKNOWN"
resp.targets[0].target_health.state #=> String, one of "REGISTERING", "AVAILABLE", "UNAVAILABLE"
resp.targets[0].target_health.reason #=> String, one of "UNREACHABLE", "CONNECTION_FAILED", "AUTH_FAILURE", "PENDING_PROXY_CAPACITY", "INVALID_REPLICATION_STATE"
resp.targets[0].target_health.description #=> String
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_name (required, String)

    The identifier of the ‘DBProxyTarget` to describe.

  • :target_group_name (String)

    The identifier of the ‘DBProxyTargetGroup` to describe.

  • :filters (Array<Types::Filter>)

    This parameter is not currently supported.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: Minimum 20, maximum 100.

Returns:

See Also:



14198
14199
14200
14201
# File 'lib/aws-sdk-rds/client.rb', line 14198

def describe_db_proxy_targets(params = {}, options = {})
  req = build_request(:describe_db_proxy_targets, params)
  req.send_request(options)
end

#describe_db_recommendations(params = {}) ⇒ Types::DBRecommendationsMessage

Describes the recommendations to resolve the issues for your DB instances, DB clusters, and DB parameter groups.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_db_recommendations({
  last_updated_after: Time.now,
  last_updated_before: Time.now,
  locale: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.db_recommendations #=> Array
resp.db_recommendations[0].recommendation_id #=> String
resp.db_recommendations[0].type_id #=> String
resp.db_recommendations[0].severity #=> String
resp.db_recommendations[0].resource_arn #=> String
resp.db_recommendations[0].status #=> String
resp.db_recommendations[0].created_time #=> Time
resp.db_recommendations[0].updated_time #=> Time
resp.db_recommendations[0].detection #=> String
resp.db_recommendations[0].recommendation #=> String
resp.db_recommendations[0].description #=> String
resp.db_recommendations[0].reason #=> String
resp.db_recommendations[0].recommended_actions #=> Array
resp.db_recommendations[0].recommended_actions[0].action_id #=> String
resp.db_recommendations[0].recommended_actions[0].title #=> String
resp.db_recommendations[0].recommended_actions[0].description #=> String
resp.db_recommendations[0].recommended_actions[0].operation #=> String
resp.db_recommendations[0].recommended_actions[0].parameters #=> Array
resp.db_recommendations[0].recommended_actions[0].parameters[0].key #=> String
resp.db_recommendations[0].recommended_actions[0].parameters[0].value #=> String
resp.db_recommendations[0].recommended_actions[0].apply_modes #=> Array
resp.db_recommendations[0].recommended_actions[0].apply_modes[0] #=> String
resp.db_recommendations[0].recommended_actions[0].status #=> String
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.start_time #=> Time
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.end_time #=> Time
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics #=> Array
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics[0].name #=> String
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics[0].references #=> Array
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics[0].references[0].name #=> String
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics[0].references[0].reference_details.scalar_reference_details.value #=> Float
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics[0].statistics_details #=> String
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.dimensions #=> Array
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.dimensions[0] #=> String
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.group #=> String
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.limit #=> Integer
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.metric #=> String
resp.db_recommendations[0].recommended_actions[0].issue_details.performance_issue_details.analysis #=> String
resp.db_recommendations[0].recommended_actions[0].context_attributes #=> Array
resp.db_recommendations[0].recommended_actions[0].context_attributes[0].key #=> String
resp.db_recommendations[0].recommended_actions[0].context_attributes[0].value #=> String
resp.db_recommendations[0].category #=> String
resp.db_recommendations[0].source #=> String
resp.db_recommendations[0].type_detection #=> String
resp.db_recommendations[0].type_recommendation #=> String
resp.db_recommendations[0].impact #=> String
resp.db_recommendations[0].additional_info #=> String
resp.db_recommendations[0].links #=> Array
resp.db_recommendations[0].links[0].text #=> String
resp.db_recommendations[0].links[0].url #=> String
resp.db_recommendations[0].issue_details.performance_issue_details.start_time #=> Time
resp.db_recommendations[0].issue_details.performance_issue_details.end_time #=> Time
resp.db_recommendations[0].issue_details.performance_issue_details.metrics #=> Array
resp.db_recommendations[0].issue_details.performance_issue_details.metrics[0].name #=> String
resp.db_recommendations[0].issue_details.performance_issue_details.metrics[0].references #=> Array
resp.db_recommendations[0].issue_details.performance_issue_details.metrics[0].references[0].name #=> String
resp.db_recommendations[0].issue_details.performance_issue_details.metrics[0].references[0].reference_details.scalar_reference_details.value #=> Float
resp.db_recommendations[0].issue_details.performance_issue_details.metrics[0].statistics_details #=> String
resp.db_recommendations[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.dimensions #=> Array
resp.db_recommendations[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.dimensions[0] #=> String
resp.db_recommendations[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.group #=> String
resp.db_recommendations[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.limit #=> Integer
resp.db_recommendations[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.metric #=> String
resp.db_recommendations[0].issue_details.performance_issue_details.analysis #=> String
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :last_updated_after (Time, DateTime, Date, Integer, String)

    A filter to include only the recommendations that were updated after this specified time.

  • :last_updated_before (Time, DateTime, Date, Integer, String)

    A filter to include only the recommendations that were updated before this specified time.

  • :locale (String)

    The language that you choose to return the list of recommendations.

    Valid values:

    • ‘en`

    • ‘en_UK`

    • ‘de`

    • ‘es`

    • ‘fr`

    • ‘id`

    • ‘it`

    • ‘ja`

    • ‘ko`

    • ‘pt_BR`

    • ‘zh_TW`

    • ‘zh_CN`

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more recommendations to describe.

    Supported Filters:

    • ‘recommendation-id` - Accepts a list of recommendation identifiers. The results list only includes the recommendations whose identifier is one of the specified filter values.

    • ‘status` - Accepts a list of recommendation statuses.

      Valid values:

      • ‘active` - The recommendations which are ready for you to apply.

      • ‘pending` - The applied or scheduled recommendations which are in progress.

      • ‘resolved` - The recommendations which are completed.

      • ‘dismissed` - The recommendations that you dismissed.

      The results list only includes the recommendations whose status is one of the specified filter values.

    • ‘severity` - Accepts a list of recommendation severities. The results list only includes the recommendations whose severity is one of the specified filter values.

      Valid values:

      • ‘high`

      • ‘medium`

      • ‘low`

      • ‘informational`

    • ‘type-id` - Accepts a list of recommendation type identifiers. The results list only includes the recommendations whose type is one of the specified filter values.

    • ‘dbi-resource-id` - Accepts a list of database resource identifiers. The results list only includes the recommendations that generated for the specified databases.

    • ‘cluster-resource-id` - Accepts a list of cluster resource identifiers. The results list only includes the recommendations that generated for the specified clusters.

    • ‘pg-arn` - Accepts a list of parameter group ARNs. The results list only includes the recommendations that generated for the specified parameter groups.

    • ‘cluster-pg-arn` - Accepts a list of cluster parameter group ARNs. The results list only includes the recommendations that generated for the specified cluster parameter groups.

  • :max_records (Integer)

    The maximum number of recommendations to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBRecommendations` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



14406
14407
14408
14409
# File 'lib/aws-sdk-rds/client.rb', line 14406

def describe_db_recommendations(params = {}, options = {})
  req = build_request(:describe_db_recommendations, params)
  req.send_request(options)
end

#describe_db_security_groups(params = {}) ⇒ Types::DBSecurityGroupMessage

Returns a list of ‘DBSecurityGroup` descriptions. If a `DBSecurityGroupName` is specified, the list will contain only the descriptions of the specified DB security group.

<note markdown=“1”> EC2-Classic was retired on August 15, 2022. If you haven’t migrated from EC2-Classic to a VPC, we recommend that you migrate as soon as possible. For more information, see [Migrate from EC2-Classic to a VPC] in the *Amazon EC2 User Guide*, the blog [EC2-Classic Networking is Retiring – Here’s How to Prepare], and [Moving a DB instance not in a VPC into a VPC] in the *Amazon RDS User Guide*.

</note>

[1]: docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html [2]: aws.amazon.com/blogs/aws/ec2-classic-is-retiring-heres-how-to-prepare/ [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.Non-VPC2VPC.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list DB security group settings


# This example lists settings for the specified security group.

resp = client.describe_db_security_groups({
  db_security_group_name: "mydbsecuritygroup", 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.describe_db_security_groups({
  db_security_group_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.db_security_groups #=> Array
resp.db_security_groups[0].owner_id #=> String
resp.db_security_groups[0].db_security_group_name #=> String
resp.db_security_groups[0].db_security_group_description #=> String
resp.db_security_groups[0].vpc_id #=> String
resp.db_security_groups[0].ec2_security_groups #=> Array
resp.db_security_groups[0].ec2_security_groups[0].status #=> String
resp.db_security_groups[0].ec2_security_groups[0].ec2_security_group_name #=> String
resp.db_security_groups[0].ec2_security_groups[0].ec2_security_group_id #=> String
resp.db_security_groups[0].ec2_security_groups[0].ec2_security_group_owner_id #=> String
resp.db_security_groups[0].ip_ranges #=> Array
resp.db_security_groups[0].ip_ranges[0].status #=> String
resp.db_security_groups[0].ip_ranges[0].cidrip #=> String
resp.db_security_groups[0].db_security_group_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_security_group_name (String)

    The name of the DB security group to return details for.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBSecurityGroups` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



14508
14509
14510
14511
# File 'lib/aws-sdk-rds/client.rb', line 14508

def describe_db_security_groups(params = {}, options = {})
  req = build_request(:describe_db_security_groups, params)
  req.send_request(options)
end

#describe_db_shard_groups(params = {}) ⇒ Types::DescribeDBShardGroupsResponse

Describes existing Aurora Limitless Database DB shard groups.

Examples:

Request syntax with placeholder values


resp = client.describe_db_shard_groups({
  db_shard_group_identifier: "DBShardGroupIdentifier",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
})

Response structure


resp.db_shard_groups #=> Array
resp.db_shard_groups[0].db_shard_group_resource_id #=> String
resp.db_shard_groups[0].db_shard_group_identifier #=> String
resp.db_shard_groups[0].db_cluster_identifier #=> String
resp.db_shard_groups[0].max_acu #=> Float
resp.db_shard_groups[0].min_acu #=> Float
resp.db_shard_groups[0].compute_redundancy #=> Integer
resp.db_shard_groups[0].status #=> String
resp.db_shard_groups[0].publicly_accessible #=> Boolean
resp.db_shard_groups[0].endpoint #=> String
resp.db_shard_groups[0].db_shard_group_arn #=> String
resp.db_shard_groups[0].tag_list #=> Array
resp.db_shard_groups[0].tag_list[0].key #=> String
resp.db_shard_groups[0].tag_list[0].value #=> String
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_shard_group_identifier (String)

    The user-supplied DB shard group identifier. If this parameter is specified, information for only the specific DB shard group is returned. This parameter isn’t case-sensitive.

    Constraints:

    • If supplied, must match an existing DB shard group identifier.

    ^

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more DB shard groups to describe.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBShardGroups` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100

Returns:

See Also:



14586
14587
14588
14589
# File 'lib/aws-sdk-rds/client.rb', line 14586

def describe_db_shard_groups(params = {}, options = {})
  req = build_request(:describe_db_shard_groups, params)
  req.send_request(options)
end

#describe_db_snapshot_attributes(params = {}) ⇒ Types::DescribeDBSnapshotAttributesResult

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

When sharing snapshots with other Amazon Web Services accounts, ‘DescribeDBSnapshotAttributes` returns the `restore` attribute and a list of IDs for the Amazon Web Services 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 Amazon Web Services accounts.

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

Examples:

Example: To describe the attribute names and values for a DB snapshot


# The following example describes the attribute names and values for a DB snapshot.

resp = client.describe_db_snapshot_attributes({
  db_snapshot_identifier: "mydbsnapshot", 
})

resp.to_h outputs the following:
{
  db_snapshot_attributes_result: {
    db_snapshot_attributes: [
      {
        attribute_name: "restore", 
        attribute_values: [
          "123456789012", 
          "210987654321", 
        ], 
      }, 
    ], 
    db_snapshot_identifier: "mydbsnapshot", 
  }, 
}

Request syntax with placeholder values


resp = client.describe_db_snapshot_attributes({
  db_snapshot_identifier: "String", # required
})

Response structure


resp.db_snapshot_attributes_result.db_snapshot_identifier #=> String
resp.db_snapshot_attributes_result.db_snapshot_attributes #=> Array
resp.db_snapshot_attributes_result.db_snapshot_attributes[0].attribute_name #=> String
resp.db_snapshot_attributes_result.db_snapshot_attributes[0].attribute_values #=> Array
resp.db_snapshot_attributes_result.db_snapshot_attributes[0].attribute_values[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_snapshot_identifier (required, String)

    The identifier for the DB snapshot to describe the attributes for.

Returns:

See Also:



14656
14657
14658
14659
# File 'lib/aws-sdk-rds/client.rb', line 14656

def describe_db_snapshot_attributes(params = {}, options = {})
  req = build_request(:describe_db_snapshot_attributes, params)
  req.send_request(options)
end

#describe_db_snapshot_tenant_databases(params = {}) ⇒ Types::DBSnapshotTenantDatabasesMessage

Describes the tenant databases that exist in a DB snapshot. This command only applies to RDS for Oracle DB instances in the multi-tenant configuration.

You can use this command to inspect the tenant databases within a snapshot before restoring it. You can’t directly interact with the tenant databases in a DB snapshot. If you restore a snapshot that was taken from DB instance using the multi-tenant configuration, you restore all its tenant databases.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_db_snapshot_tenant_databases({
  db_instance_identifier: "String",
  db_snapshot_identifier: "String",
  snapshot_type: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
  dbi_resource_id: "String",
})

Response structure


resp.marker #=> String
resp.db_snapshot_tenant_databases #=> Array
resp.db_snapshot_tenant_databases[0].db_snapshot_identifier #=> String
resp.db_snapshot_tenant_databases[0].db_instance_identifier #=> String
resp.db_snapshot_tenant_databases[0].dbi_resource_id #=> String
resp.db_snapshot_tenant_databases[0].engine_name #=> String
resp.db_snapshot_tenant_databases[0].snapshot_type #=> String
resp.db_snapshot_tenant_databases[0].tenant_database_create_time #=> Time
resp.db_snapshot_tenant_databases[0].tenant_db_name #=> String
resp.db_snapshot_tenant_databases[0].master_username #=> String
resp.db_snapshot_tenant_databases[0].tenant_database_resource_id #=> String
resp.db_snapshot_tenant_databases[0].character_set_name #=> String
resp.db_snapshot_tenant_databases[0].db_snapshot_tenant_database_arn #=> String
resp.db_snapshot_tenant_databases[0].nchar_character_set_name #=> String
resp.db_snapshot_tenant_databases[0].tag_list #=> Array
resp.db_snapshot_tenant_databases[0].tag_list[0].key #=> String
resp.db_snapshot_tenant_databases[0].tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (String)

    The ID of the DB instance used to create the DB snapshots. This parameter isn’t case-sensitive.

    Constraints:

    • If supplied, must match the identifier of an existing ‘DBInstance`.

    ^

  • :db_snapshot_identifier (String)

    The ID of a DB snapshot that contains the tenant databases to describe. This value is stored as a lowercase string.

    Constraints:

    • If you specify this parameter, the value must match the ID of an existing DB snapshot.

    • If you specify an automatic snapshot, you must also specify ‘SnapshotType`.

  • :snapshot_type (String)

    The type of DB snapshots to be returned. You can specify one of the following values:

    • ‘automated` – All DB snapshots that have been automatically taken by Amazon RDS for my Amazon Web Services account.

    • ‘manual` – All DB snapshots that have been taken by my Amazon Web Services account.

    • ‘shared` – All manual DB snapshots that have been shared to my Amazon Web Services account.

    • ‘public` – All DB snapshots that have been marked as public.

    • ‘awsbackup` – All DB snapshots managed by the Amazon Web Services Backup service.

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more tenant databases to describe.

    Supported filters:

    • ‘tenant-db-name` - Tenant database names. The results list only includes information about the tenant databases that match these tenant DB names.

    • ‘tenant-database-resource-id` - Tenant database resource identifiers. The results list only includes information about the tenant databases contained within the DB snapshots.

    • ‘dbi-resource-id` - DB instance resource identifiers. The results list only includes information about snapshots containing tenant databases contained within the DB instances identified by these resource identifiers.

    • ‘db-instance-id` - Accepts DB instance identifiers and DB instance Amazon Resource Names (ARNs).

    • ‘db-snapshot-id` - Accepts DB snapshot identifiers.

    • ‘snapshot-type` - Accepts types of DB snapshots.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBSnapshotTenantDatabases` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

  • :dbi_resource_id (String)

    A specific DB resource identifier to describe.

Returns:

See Also:



14799
14800
14801
14802
# File 'lib/aws-sdk-rds/client.rb', line 14799

def describe_db_snapshot_tenant_databases(params = {}, options = {})
  req = build_request(:describe_db_snapshot_tenant_databases, params)
  req.send_request(options)
end

#describe_db_snapshots(params = {}) ⇒ Types::DBSnapshotMessage

Returns information about DB snapshots. This API action supports pagination.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* db_snapshot_available
* db_snapshot_deleted

Examples:

Example: To describe a DB snapshot for a DB instance


# The following example retrieves the details of a DB snapshot for a DB instance.

resp = client.describe_db_snapshots({
  db_snapshot_identifier: "mydbsnapshot", 
})

resp.to_h outputs the following:
{
  db_snapshots: [
    {
      allocated_storage: 20, 
      availability_zone: "us-east-1f", 
      db_instance_identifier: "mysqldb", 
      db_snapshot_arn: "arn:aws:rds:us-east-1:123456789012:snapshot:mydbsnapshot", 
      db_snapshot_identifier: "mydbsnapshot", 
      dbi_resource_id: "db-AKIAIOSFODNN7EXAMPLE", 
      encrypted: false, 
      engine: "mysql", 
      engine_version: "5.6.37", 
      iam_database_authentication_enabled: false, 
      instance_create_time: Time.parse("2018-02-08T22:24:55.973Z"), 
      license_model: "general-public-license", 
      master_username: "mysqladmin", 
      option_group_name: "default:mysql-5-6", 
      percent_progress: 100, 
      port: 3306, 
      processor_features: [
      ], 
      snapshot_create_time: Time.parse("2018-02-08T22:28:08.598Z"), 
      snapshot_type: "manual", 
      status: "available", 
      storage_type: "gp2", 
      vpc_id: "vpc-6594f31c", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_db_snapshots({
  db_instance_identifier: "String",
  db_snapshot_identifier: "String",
  snapshot_type: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
  include_shared: false,
  include_public: false,
  dbi_resource_id: "String",
})

Response structure


resp.marker #=> String
resp.db_snapshots #=> Array
resp.db_snapshots[0].db_snapshot_identifier #=> String
resp.db_snapshots[0].db_instance_identifier #=> String
resp.db_snapshots[0].snapshot_create_time #=> Time
resp.db_snapshots[0].engine #=> String
resp.db_snapshots[0].allocated_storage #=> Integer
resp.db_snapshots[0].status #=> String
resp.db_snapshots[0].port #=> Integer
resp.db_snapshots[0].availability_zone #=> String
resp.db_snapshots[0].vpc_id #=> String
resp.db_snapshots[0].instance_create_time #=> Time
resp.db_snapshots[0].master_username #=> String
resp.db_snapshots[0].engine_version #=> String
resp.db_snapshots[0].license_model #=> String
resp.db_snapshots[0].snapshot_type #=> String
resp.db_snapshots[0].iops #=> Integer
resp.db_snapshots[0].option_group_name #=> String
resp.db_snapshots[0].percent_progress #=> Integer
resp.db_snapshots[0].source_region #=> String
resp.db_snapshots[0].source_db_snapshot_identifier #=> String
resp.db_snapshots[0].storage_type #=> String
resp.db_snapshots[0].tde_credential_arn #=> String
resp.db_snapshots[0].encrypted #=> Boolean
resp.db_snapshots[0].kms_key_id #=> String
resp.db_snapshots[0].db_snapshot_arn #=> String
resp.db_snapshots[0].timezone #=> String
resp.db_snapshots[0].iam_database_authentication_enabled #=> Boolean
resp.db_snapshots[0].processor_features #=> Array
resp.db_snapshots[0].processor_features[0].name #=> String
resp.db_snapshots[0].processor_features[0].value #=> String
resp.db_snapshots[0].dbi_resource_id #=> String
resp.db_snapshots[0].tag_list #=> Array
resp.db_snapshots[0].tag_list[0].key #=> String
resp.db_snapshots[0].tag_list[0].value #=> String
resp.db_snapshots[0].original_snapshot_create_time #=> Time
resp.db_snapshots[0].snapshot_database_time #=> Time
resp.db_snapshots[0].snapshot_target #=> String
resp.db_snapshots[0].storage_throughput #=> Integer
resp.db_snapshots[0].db_system_id #=> String
resp.db_snapshots[0].dedicated_log_volume #=> Boolean
resp.db_snapshots[0].multi_tenant #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (String)

    The ID of the DB instance to retrieve the list of DB snapshots for. This parameter isn’t case-sensitive.

    Constraints:

    • If supplied, must match the identifier of an existing DBInstance.

    ^

  • :db_snapshot_identifier (String)

    A specific DB snapshot identifier to describe. This value is stored as a lowercase string.

    Constraints:

    • If supplied, must match the identifier of an existing DBSnapshot.

    • If this identifier is for an automated snapshot, the ‘SnapshotType` parameter must also be specified.

  • :snapshot_type (String)

    The type of snapshots to be returned. You can specify one of the following values:

    • ‘automated` - Return all DB snapshots that have been automatically taken by Amazon RDS for my Amazon Web Services account.

    • ‘manual` - Return all DB snapshots that have been taken by my Amazon Web Services account.

    • ‘shared` - Return all manual DB snapshots that have been shared to my Amazon Web Services account.

    • ‘public` - Return all DB snapshots that have been marked as public.

    • ‘awsbackup` - Return the DB snapshots managed by the Amazon Web Services Backup service.

      For information about Amazon Web Services Backup, see the [ *Amazon Web Services Backup Developer Guide.* ][1]

      The ‘awsbackup` type does not apply to Aurora.

    If you don’t specify a ‘SnapshotType` value, then both automated and manual snapshots are returned. Shared and public DB snapshots are not included in the returned results by default. You can include shared snapshots with these results by enabling the `IncludeShared` parameter. You can include public snapshots with these results by enabling the `IncludePublic` parameter.

    The ‘IncludeShared` and `IncludePublic` parameters don’t apply for ‘SnapshotType` values of `manual` or `automated`. The `IncludePublic` parameter doesn’t apply when ‘SnapshotType` is set to `shared`. The `IncludeShared` parameter doesn’t apply when ‘SnapshotType` is set to `public`.

    [1]: docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more DB snapshots to describe.

    Supported filters:

    • ‘db-instance-id` - Accepts DB instance identifiers and DB instance Amazon Resource Names (ARNs).

    • ‘db-snapshot-id` - Accepts DB snapshot identifiers.

    • ‘dbi-resource-id` - Accepts identifiers of source DB instances.

    • ‘snapshot-type` - Accepts types of DB snapshots.

    • ‘engine` - Accepts names of database engines.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeDBSnapshots` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

  • :include_shared (Boolean)

    Specifies whether to include shared manual DB cluster snapshots from other Amazon Web Services accounts that this Amazon Web Services account has been given permission to copy or restore. By default, these snapshots are not included.

    You can give an Amazon Web Services account permission to restore a manual DB snapshot from another Amazon Web Services account by using the ‘ModifyDBSnapshotAttribute` API action.

    This setting doesn’t apply to RDS Custom.

  • :include_public (Boolean)

    Specifies whether to include manual DB cluster snapshots that are public and can be copied or restored by any Amazon Web Services account. By default, the public snapshots are not included.

    You can share a manual DB snapshot as public by using the ModifyDBSnapshotAttribute API.

    This setting doesn’t apply to RDS Custom.

  • :dbi_resource_id (String)

    A specific DB resource ID to describe.

Returns:

See Also:



15046
15047
15048
15049
# File 'lib/aws-sdk-rds/client.rb', line 15046

def describe_db_snapshots(params = {}, options = {})
  req = build_request(:describe_db_snapshots, params)
  req.send_request(options)
end

#describe_db_subnet_groups(params = {}) ⇒ Types::DBSubnetGroupMessage

Returns a list of DBSubnetGroup descriptions. If a DBSubnetGroupName is specified, the list will contain only the descriptions of the specified DBSubnetGroup.

For an overview of CIDR ranges, go to the [Wikipedia Tutorial].

[1]: en.wikipedia.org/wiki/Classless_Inter-Domain_Routing

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe a DB subnet group


# The following example retrieves the details of the specified DB subnet group.

resp = client.describe_db_subnet_groups({
})

resp.to_h outputs the following:
{
  db_subnet_groups: [
    {
      db_subnet_group_arn: "arn:aws:rds:us-east-1:123456789012:subgrp:mydbsubnetgroup", 
      db_subnet_group_description: "My DB Subnet Group", 
      db_subnet_group_name: "mydbsubnetgroup", 
      subnet_group_status: "Complete", 
      subnets: [
        {
          subnet_availability_zone: {
            name: "us-east-1a", 
          }, 
          subnet_identifier: "subnet-d8c8e7f4", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1f", 
          }, 
          subnet_identifier: "subnet-718fdc7d", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1a", 
          }, 
          subnet_identifier: "subnet-cbc8e7e7", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-east-1a", 
          }, 
          subnet_identifier: "subnet-0ccde220", 
          subnet_status: "Active", 
        }, 
      ], 
      vpc_id: "vpc-971c12ee", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_db_subnet_groups({
  db_subnet_group_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.db_subnet_groups #=> Array
resp.db_subnet_groups[0].db_subnet_group_name #=> String
resp.db_subnet_groups[0].db_subnet_group_description #=> String
resp.db_subnet_groups[0].vpc_id #=> String
resp.db_subnet_groups[0].subnet_group_status #=> String
resp.db_subnet_groups[0].subnets #=> Array
resp.db_subnet_groups[0].subnets[0].subnet_identifier #=> String
resp.db_subnet_groups[0].subnets[0].subnet_availability_zone.name #=> String
resp.db_subnet_groups[0].subnets[0].subnet_outpost.arn #=> String
resp.db_subnet_groups[0].subnets[0].subnet_status #=> String
resp.db_subnet_groups[0].db_subnet_group_arn #=> String
resp.db_subnet_groups[0].supported_network_types #=> Array
resp.db_subnet_groups[0].supported_network_types[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_subnet_group_name (String)

    The name of the DB subnet group to return details for.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous DescribeDBSubnetGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

Returns:

See Also:



15176
15177
15178
15179
# File 'lib/aws-sdk-rds/client.rb', line 15176

def describe_db_subnet_groups(params = {}, options = {})
  req = build_request(:describe_db_subnet_groups, params)
  req.send_request(options)
end

#describe_engine_default_cluster_parameters(params = {}) ⇒ Types::DescribeEngineDefaultClusterParametersResult

Returns the default engine and system parameter information for the cluster database engine.

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html

Examples:

Example: To describe the default engine and system parameter information for the Aurora database engine


# The following example retrieves the details of the default engine and system parameter information for Aurora DB
# clusters with MySQL 5.7 compatibility.

resp = client.describe_engine_default_cluster_parameters({
  db_parameter_group_family: "aurora-mysql5.7", 
})

resp.to_h outputs the following:
{
  engine_defaults: {
    parameters: [
      {
        apply_type: "dynamic", 
        data_type: "string", 
        description: "IAM role ARN used to load data from AWS S3", 
        is_modifiable: true, 
        parameter_name: "aurora_load_from_s3_role", 
        source: "engine-default", 
        supported_engine_modes: [
          "provisioned", 
        ], 
      }, 
    ], 
  }, # Some output omitted.
}

Request syntax with placeholder values


resp = client.describe_engine_default_cluster_parameters({
  db_parameter_group_family: "String", # required
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.engine_defaults.db_parameter_group_family #=> String
resp.engine_defaults.marker #=> String
resp.engine_defaults.parameters #=> Array
resp.engine_defaults.parameters[0].parameter_name #=> String
resp.engine_defaults.parameters[0].parameter_value #=> String
resp.engine_defaults.parameters[0].description #=> String
resp.engine_defaults.parameters[0].source #=> String
resp.engine_defaults.parameters[0].apply_type #=> String
resp.engine_defaults.parameters[0].data_type #=> String
resp.engine_defaults.parameters[0].allowed_values #=> String
resp.engine_defaults.parameters[0].is_modifiable #=> Boolean
resp.engine_defaults.parameters[0].minimum_engine_version #=> String
resp.engine_defaults.parameters[0].apply_method #=> String, one of "immediate", "pending-reboot"
resp.engine_defaults.parameters[0].supported_engine_modes #=> Array
resp.engine_defaults.parameters[0].supported_engine_modes[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_parameter_group_family (required, String)

    The name of the DB cluster parameter group family to return engine parameter information for.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeEngineDefaultClusterParameters` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



15283
15284
15285
15286
# File 'lib/aws-sdk-rds/client.rb', line 15283

def describe_engine_default_cluster_parameters(params = {}, options = {})
  req = build_request(:describe_engine_default_cluster_parameters, params)
  req.send_request(options)
end

#describe_engine_default_parameters(params = {}) ⇒ Types::DescribeEngineDefaultParametersResult

Returns the default engine and system parameter information for the specified database engine.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe the default engine and system parameter information for the database engine


# The following example retrieves details for the default engine and system parameter information for MySQL 5.7 DB
# instances.

resp = client.describe_engine_default_parameters({
  db_parameter_group_family: "mysql5.7", 
})

resp.to_h outputs the following:
{
  engine_defaults: {
    parameters: [
      {
        allowed_values: "0,1", 
        apply_type: "static", 
        data_type: "boolean", 
        description: "Controls whether user-defined functions that have only an xxx symbol for the main function can be loaded", 
        is_modifiable: false, 
        parameter_name: "allow-suspicious-udfs", 
        source: "engine-default", 
      }, 
    ], 
  }, # Some output omitted.
}

Request syntax with placeholder values


resp = client.describe_engine_default_parameters({
  db_parameter_group_family: "String", # required
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.engine_defaults.db_parameter_group_family #=> String
resp.engine_defaults.marker #=> String
resp.engine_defaults.parameters #=> Array
resp.engine_defaults.parameters[0].parameter_name #=> String
resp.engine_defaults.parameters[0].parameter_value #=> String
resp.engine_defaults.parameters[0].description #=> String
resp.engine_defaults.parameters[0].source #=> String
resp.engine_defaults.parameters[0].apply_type #=> String
resp.engine_defaults.parameters[0].data_type #=> String
resp.engine_defaults.parameters[0].allowed_values #=> String
resp.engine_defaults.parameters[0].is_modifiable #=> Boolean
resp.engine_defaults.parameters[0].minimum_engine_version #=> String
resp.engine_defaults.parameters[0].apply_method #=> String, one of "immediate", "pending-reboot"
resp.engine_defaults.parameters[0].supported_engine_modes #=> Array
resp.engine_defaults.parameters[0].supported_engine_modes[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_parameter_group_family (required, String)

    The name of the DB parameter group family.

    Valid Values:

    • ‘aurora-mysql5.7`

    • ‘aurora-mysql8.0`

    • ‘aurora-postgresql10`

    • ‘aurora-postgresql11`

    • ‘aurora-postgresql12`

    • ‘aurora-postgresql13`

    • ‘aurora-postgresql14`

    • ‘custom-oracle-ee-19`

    • ‘custom-oracle-ee-cdb-19`

    • ‘db2-ae`

    • ‘db2-se`

    • ‘mariadb10.2`

    • ‘mariadb10.3`

    • ‘mariadb10.4`

    • ‘mariadb10.5`

    • ‘mariadb10.6`

    • ‘mysql5.7`

    • ‘mysql8.0`

    • ‘oracle-ee-19`

    • ‘oracle-ee-cdb-19`

    • ‘oracle-ee-cdb-21`

    • ‘oracle-se2-19`

    • ‘oracle-se2-cdb-19`

    • ‘oracle-se2-cdb-21`

    • ‘postgres10`

    • ‘postgres11`

    • ‘postgres12`

    • ‘postgres13`

    • ‘postgres14`

    • ‘sqlserver-ee-11.0`

    • ‘sqlserver-ee-12.0`

    • ‘sqlserver-ee-13.0`

    • ‘sqlserver-ee-14.0`

    • ‘sqlserver-ee-15.0`

    • ‘sqlserver-ex-11.0`

    • ‘sqlserver-ex-12.0`

    • ‘sqlserver-ex-13.0`

    • ‘sqlserver-ex-14.0`

    • ‘sqlserver-ex-15.0`

    • ‘sqlserver-se-11.0`

    • ‘sqlserver-se-12.0`

    • ‘sqlserver-se-13.0`

    • ‘sqlserver-se-14.0`

    • ‘sqlserver-se-15.0`

    • ‘sqlserver-web-11.0`

    • ‘sqlserver-web-12.0`

    • ‘sqlserver-web-13.0`

    • ‘sqlserver-web-14.0`

    • ‘sqlserver-web-15.0`

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more parameters to describe.

    The only supported filter is ‘parameter-name`. The results list only includes information about the parameters with these names.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeEngineDefaultParameters` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



15485
15486
15487
15488
# File 'lib/aws-sdk-rds/client.rb', line 15485

def describe_engine_default_parameters(params = {}, options = {})
  req = build_request(:describe_engine_default_parameters, params)
  req.send_request(options)
end

#describe_event_categories(params = {}) ⇒ Types::EventCategoriesMessage

Displays a list of categories for all event source types, or, if specified, for a specified source type. You can also see this list in the “Amazon RDS event categories and event messages” section of the

*Amazon RDS User Guide* ][1

or the [ *Amazon Aurora User Guide*

][2].

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.Messages.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Events.Messages.html

Examples:

Example: To describe event categories


# The following example retrieves details about the event categories for all available event sources.

resp = client.describe_event_categories({
  filters: [
  ], 
  source_type: "", 
})

resp.to_h outputs the following:
{
  event_categories_map_list: [
    {
      event_categories: [
        "deletion", 
        "read replica", 
        "failover", 
        "restoration", 
        "maintenance", 
        "low storage", 
        "configuration change", 
        "backup", 
        "creation", 
        "availability", 
        "recovery", 
        "failure", 
        "backtrack", 
        "notification", 
      ], 
      source_type: "db-instance", 
    }, 
    {
      event_categories: [
        "configuration change", 
        "failure", 
      ], 
      source_type: "db-security-group", 
    }, 
    {
      event_categories: [
        "configuration change", 
      ], 
      source_type: "db-parameter-group", 
    }, 
    {
      event_categories: [
        "deletion", 
        "creation", 
        "restoration", 
        "notification", 
      ], 
      source_type: "db-snapshot", 
    }, 
    {
      event_categories: [
        "failover", 
        "failure", 
        "notification", 
      ], 
      source_type: "db-cluster", 
    }, 
    {
      event_categories: [
        "backup", 
      ], 
      source_type: "db-cluster-snapshot", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_event_categories({
  source_type: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
})

Response structure


resp.event_categories_map_list #=> Array
resp.event_categories_map_list[0].source_type #=> String
resp.event_categories_map_list[0].event_categories #=> Array
resp.event_categories_map_list[0].event_categories[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_type (String)

    The type of source that is generating the events. For RDS Proxy events, specify ‘db-proxy`.

    Valid Values: ‘db-instance` | `db-cluster` | `db-parameter-group` | `db-security-group` | `db-snapshot` | `db-cluster-snapshot` | `db-proxy`

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

Returns:

See Also:



15611
15612
15613
15614
# File 'lib/aws-sdk-rds/client.rb', line 15611

def describe_event_categories(params = {}, options = {})
  req = build_request(:describe_event_categories, params)
  req.send_request(options)
end

#describe_event_subscriptions(params = {}) ⇒ Types::EventSubscriptionsMessage

Lists all the subscription descriptions for a customer account. The description for a subscription includes ‘SubscriptionName`, `SNSTopicARN`, `CustomerID`, `SourceType`, `SourceID`, `CreationTime`, and `Status`.

If you specify a ‘SubscriptionName`, lists the description for that subscription.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe event subscriptions


# This example describes all of the Amazon RDS event subscriptions for the current AWS account.

resp = client.describe_event_subscriptions({
})

resp.to_h outputs the following:
{
  event_subscriptions_list: [
    {
      cust_subscription_id: "my-instance-events", 
      customer_aws_id: "123456789012", 
      enabled: true, 
      event_categories_list: [
        "backup", 
        "recovery", 
      ], 
      event_subscription_arn: "arn:aws:rds:us-east-1:123456789012:es:my-instance-events", 
      sns_topic_arn: "arn:aws:sns:us-east-1:123456789012:interesting-events", 
      source_type: "db-instance", 
      status: "creating", 
      subscription_creation_time: "2018-07-31 23:22:01.893", 
    }, 
  ], # Some output omitted.
}

Request syntax with placeholder values


resp = client.describe_event_subscriptions({
  subscription_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.event_subscriptions_list #=> Array
resp.event_subscriptions_list[0].customer_aws_id #=> String
resp.event_subscriptions_list[0].cust_subscription_id #=> String
resp.event_subscriptions_list[0].sns_topic_arn #=> String
resp.event_subscriptions_list[0].status #=> String
resp.event_subscriptions_list[0].subscription_creation_time #=> String
resp.event_subscriptions_list[0].source_type #=> String
resp.event_subscriptions_list[0].source_ids_list #=> Array
resp.event_subscriptions_list[0].source_ids_list[0] #=> String
resp.event_subscriptions_list[0].event_categories_list #=> Array
resp.event_subscriptions_list[0].event_categories_list[0] #=> String
resp.event_subscriptions_list[0].enabled #=> Boolean
resp.event_subscriptions_list[0].event_subscription_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :subscription_name (String)

    The name of the RDS event notification subscription you want to describe.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords` .

Returns:

See Also:



15717
15718
15719
15720
# File 'lib/aws-sdk-rds/client.rb', line 15717

def describe_event_subscriptions(params = {}, options = {})
  req = build_request(:describe_event_subscriptions, params)
  req.send_request(options)
end

#describe_events(params = {}) ⇒ Types::EventsMessage

Returns events related to DB instances, DB clusters, DB parameter groups, DB security groups, DB snapshots, DB cluster snapshots, and RDS Proxies for the past 14 days. Events specific to a particular DB instance, DB cluster, DB parameter group, DB security group, DB snapshot, DB cluster snapshot group, or RDS Proxy can be obtained by providing the name as a parameter.

For more information on working with events, see [Monitoring Amazon RDS events] in the *Amazon RDS User Guide* and [Monitoring Amazon Aurora events] in the *Amazon Aurora User Guide*.

<note markdown=“1”> By default, RDS returns events that were generated in the past hour.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/working-with-events.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/working-with-events.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe events


# The following retrieves details for the events that have occurred for the specified DB instance.

resp = client.describe_events({
  source_identifier: "test-instance", 
  source_type: "db-instance", 
})

resp.to_h outputs the following:
{
  events: [
    {
      date: Time.parse("2018-07-31T23:09:23.983Z"), 
      event_categories: [
        "backup", 
      ], 
      message: "Backing up DB instance", 
      source_arn: "arn:aws:rds:us-east-1:123456789012:db:test-instance", 
      source_identifier: "test-instance", 
      source_type: "db-instance", 
    }, 
    {
      date: Time.parse("2018-07-31T23:15:13.049Z"), 
      event_categories: [
        "backup", 
      ], 
      message: "Finished DB Instance backup", 
      source_arn: "arn:aws:rds:us-east-1:123456789012:db:test-instance", 
      source_identifier: "test-instance", 
      source_type: "db-instance", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_events({
  source_identifier: "String",
  source_type: "db-instance", # accepts db-instance, db-parameter-group, db-security-group, db-snapshot, db-cluster, db-cluster-snapshot, custom-engine-version, db-proxy, blue-green-deployment
  start_time: Time.now,
  end_time: Time.now,
  duration: 1,
  event_categories: ["String"],
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.events #=> Array
resp.events[0].source_identifier #=> String
resp.events[0].source_type #=> String, one of "db-instance", "db-parameter-group", "db-security-group", "db-snapshot", "db-cluster", "db-cluster-snapshot", "custom-engine-version", "db-proxy", "blue-green-deployment"
resp.events[0].message #=> String
resp.events[0].event_categories #=> Array
resp.events[0].event_categories[0] #=> String
resp.events[0].date #=> Time
resp.events[0].source_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_identifier (String)

    The identifier of the event source for which events are returned. If not specified, then all sources are included in the response.

    Constraints:

    • If ‘SourceIdentifier` is supplied, `SourceType` must also be provided.

    • If the source type is a DB instance, a ‘DBInstanceIdentifier` value must be supplied.

    • If the source type is a DB cluster, a ‘DBClusterIdentifier` value must be supplied.

    • If the source type is a DB parameter group, a ‘DBParameterGroupName` value must be supplied.

    • If the source type is a DB security group, a ‘DBSecurityGroupName` value must be supplied.

    • If the source type is a DB snapshot, a ‘DBSnapshotIdentifier` value must be supplied.

    • If the source type is a DB cluster snapshot, a ‘DBClusterSnapshotIdentifier` value must be supplied.

    • If the source type is an RDS Proxy, a ‘DBProxyName` value must be supplied.

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

  • :source_type (String)

    The event source to retrieve events for. If no value is specified, all events are returned.

  • :start_time (Time, DateTime, Date, Integer, String)

    The beginning of the time interval to retrieve events for, specified in ISO 8601 format. For more information about ISO 8601, go to the

    ISO8601 Wikipedia page.][1

    Example: 2009-07-08T18:00Z

    [1]: en.wikipedia.org/wiki/ISO_8601

  • :end_time (Time, DateTime, Date, Integer, String)

    The end of the time interval for which to retrieve events, specified in ISO 8601 format. For more information about ISO 8601, go to the

    ISO8601 Wikipedia page.][1

    Example: 2009-07-08T18:00Z

    [1]: en.wikipedia.org/wiki/ISO_8601

  • :duration (Integer)

    The number of minutes to retrieve events for.

    Default: 60

  • :event_categories (Array<String>)

    A list of event categories that trigger notifications for a event notification subscription.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous DescribeEvents request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

Returns:

See Also:



15905
15906
15907
15908
# File 'lib/aws-sdk-rds/client.rb', line 15905

def describe_events(params = {}, options = {})
  req = build_request(:describe_events, params)
  req.send_request(options)
end

#describe_export_tasks(params = {}) ⇒ Types::ExportTasksMessage

Returns information about a snapshot or cluster export to Amazon S3. This API operation supports pagination.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe snapshot export tasks


# The following example returns information about snapshot exports to Amazon S3.

resp = client.describe_export_tasks({
})

resp.to_h outputs the following:
{
  export_tasks: [
    {
      export_task_identifier: "test-snapshot-export", 
      iam_role_arn: "arn:aws:iam::123456789012:role/service-role/ExportRole", 
      kms_key_id: "arn:aws:kms:us-west-2:123456789012:key/abcd0000-7fca-4128-82f2-aabbccddeeff", 
      percent_progress: 100, 
      s3_bucket: "mybucket", 
      s3_prefix: "", 
      snapshot_time: Time.parse("2020-03-02T18:26:28.163Z"), 
      source_arn: "arn:aws:rds:us-west-2:123456789012:snapshot:test-snapshot", 
      status: "COMPLETE", 
      task_end_time: Time.parse("2020-03-02T19:10:31.985Z"), 
      task_start_time: Time.parse("2020-03-02T18:57:56.896Z"), 
      total_extracted_data_in_gb: 0, 
    }, 
    {
      export_task_identifier: "my-s3-export", 
      iam_role_arn: "arn:aws:iam::123456789012:role/service-role/ExportRole", 
      kms_key_id: "arn:aws:kms:us-west-2:123456789012:key/abcd0000-7fca-4128-82f2-aabbccddeeff", 
      percent_progress: 0, 
      s3_bucket: "mybucket", 
      s3_prefix: "", 
      snapshot_time: Time.parse("2020-03-27T20:48:42.023Z"), 
      source_arn: "arn:aws:rds:us-west-2:123456789012:snapshot:db5-snapshot-test", 
      status: "STARTING", 
      total_extracted_data_in_gb: 0, 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_export_tasks({
  export_task_identifier: "String",
  source_arn: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
  source_type: "SNAPSHOT", # accepts SNAPSHOT, CLUSTER
})

Response structure


resp.marker #=> String
resp.export_tasks #=> Array
resp.export_tasks[0].export_task_identifier #=> String
resp.export_tasks[0].source_arn #=> String
resp.export_tasks[0].export_only #=> Array
resp.export_tasks[0].export_only[0] #=> String
resp.export_tasks[0].snapshot_time #=> Time
resp.export_tasks[0].task_start_time #=> Time
resp.export_tasks[0].task_end_time #=> Time
resp.export_tasks[0].s3_bucket #=> String
resp.export_tasks[0].s3_prefix #=> String
resp.export_tasks[0].iam_role_arn #=> String
resp.export_tasks[0].kms_key_id #=> String
resp.export_tasks[0].status #=> String
resp.export_tasks[0].percent_progress #=> Integer
resp.export_tasks[0].total_extracted_data_in_gb #=> Integer
resp.export_tasks[0].failure_cause #=> String
resp.export_tasks[0].warning_message #=> String
resp.export_tasks[0].source_type #=> String, one of "SNAPSHOT", "CLUSTER"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :export_task_identifier (String)

    The identifier of the snapshot or cluster export task to be described.

  • :source_arn (String)

    The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon S3.

  • :filters (Array<Types::Filter>)

    Filters specify one or more snapshot or cluster exports to describe. The filters are specified as name-value pairs that define what to include in the output. Filter names and values are case-sensitive.

    Supported filters include the following:

    • ‘export-task-identifier` - An identifier for the snapshot or cluster export task.

    • ‘s3-bucket` - The Amazon S3 bucket the data is exported to.

    • ‘source-arn` - The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon S3.

    • ‘status` - The status of the export task. Must be lowercase. Valid statuses are the following:

      • ‘canceled`

      • ‘canceling`

      • ‘complete`

      • ‘failed`

      • ‘in_progress`

      • ‘starting`

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeExportTasks` request. If you specify this parameter, the response includes only records beyond the marker, up to the value specified by the `MaxRecords` parameter.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified value, a pagination token called a marker is included in the response. You can use the marker in a later ‘DescribeExportTasks` request to retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :source_type (String)

    The type of source for the export.

Returns:

See Also:



16058
16059
16060
16061
# File 'lib/aws-sdk-rds/client.rb', line 16058

def describe_export_tasks(params = {}, options = {})
  req = build_request(:describe_export_tasks, params)
  req.send_request(options)
end

#describe_global_clusters(params = {}) ⇒ Types::GlobalClustersMessage

Returns information about Aurora global database clusters. This API supports pagination.

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This action only applies to Aurora DB clusters.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe global DB clusters


# The following example lists Aurora global DB clusters in the current AWS Region.

resp = client.describe_global_clusters({
})

resp.to_h outputs the following:
{
  global_clusters: [
    {
      deletion_protection: false, 
      engine: "aurora-mysql", 
      engine_version: "5.7.mysql_aurora.2.07.2", 
      global_cluster_arn: "arn:aws:rds::123456789012:global-cluster:myglobalcluster", 
      global_cluster_identifier: "myglobalcluster", 
      global_cluster_members: [
      ], 
      global_cluster_resource_id: "cluster-f5982077e3b5aabb", 
      status: "available", 
      storage_encrypted: false, 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_global_clusters({
  global_cluster_identifier: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.global_clusters #=> Array
resp.global_clusters[0].global_cluster_identifier #=> String
resp.global_clusters[0].global_cluster_resource_id #=> String
resp.global_clusters[0].global_cluster_arn #=> String
resp.global_clusters[0].status #=> String
resp.global_clusters[0].engine #=> String
resp.global_clusters[0].engine_version #=> String
resp.global_clusters[0].engine_lifecycle_support #=> String
resp.global_clusters[0].database_name #=> String
resp.global_clusters[0].storage_encrypted #=> Boolean
resp.global_clusters[0].deletion_protection #=> Boolean
resp.global_clusters[0].global_cluster_members #=> Array
resp.global_clusters[0].global_cluster_members[0].db_cluster_arn #=> String
resp.global_clusters[0].global_cluster_members[0].readers #=> Array
resp.global_clusters[0].global_cluster_members[0].readers[0] #=> String
resp.global_clusters[0].global_cluster_members[0].is_writer #=> Boolean
resp.global_clusters[0].global_cluster_members[0].global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.global_clusters[0].global_cluster_members[0].synchronization_status #=> String, one of "connected", "pending-resync"
resp.global_clusters[0].endpoint #=> String
resp.global_clusters[0].failover_state.status #=> String, one of "pending", "failing-over", "cancelling"
resp.global_clusters[0].failover_state.from_db_cluster_arn #=> String
resp.global_clusters[0].failover_state.to_db_cluster_arn #=> String
resp.global_clusters[0].failover_state.is_data_loss_allowed #=> Boolean
resp.global_clusters[0].tag_list #=> Array
resp.global_clusters[0].tag_list[0].key #=> String
resp.global_clusters[0].tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :global_cluster_identifier (String)

    The user-supplied DB cluster identifier. If this parameter is specified, information from only the specific DB cluster is returned. This parameter isn’t case-sensitive.

    Constraints:

    • If supplied, must match an existing DBClusterIdentifier.

    ^

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more global database clusters to describe. This parameter is case-sensitive.

    Currently, the only supported filter is ‘region`.

    If used, the request returns information about any global cluster with at least one member (primary or secondary) in the specified Amazon Web Services Regions.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeGlobalClusters` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



16195
16196
16197
16198
# File 'lib/aws-sdk-rds/client.rb', line 16195

def describe_global_clusters(params = {}, options = {})
  req = build_request(:describe_global_clusters, params)
  req.send_request(options)
end

#describe_integrations(params = {}) ⇒ Types::DescribeIntegrationsResponse

Describe one or more zero-ETL integrations with Amazon Redshift.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe a zero-ETL integration


# The following example retrieves information about a zero-ETL integration with Amazon Redshift.

resp = client.describe_integrations({
  integration_identifier: "5b9f3d79-7392-4a3e-896c-58eaa1b53231", 
})

resp.to_h outputs the following:
{
  integrations: [
    {
      create_time: Time.parse("2023-12-28T17:20:20.629Z"), 
      integration_arn: "arn:aws:rds:us-east-1:123456789012:integration:5b9f3d79-7392-4a3e-896c-58eaa1b53231", 
      integration_name: "my-integration", 
      kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa", 
      source_arn: "arn:aws:rds:us-east-1:123456789012:cluster:my-cluster", 
      status: "active", 
      tags: [
      ], 
      target_arn: "arn:aws:redshift-serverless:us-east-1:123456789012:namespace/62c70612-0302-4db7-8414-b5e3e049f0d8", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_integrations({
  integration_identifier: "IntegrationIdentifier",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "Marker",
})

Response structure


resp.marker #=> String
resp.integrations #=> Array
resp.integrations[0].source_arn #=> String
resp.integrations[0].target_arn #=> String
resp.integrations[0].integration_name #=> String
resp.integrations[0].integration_arn #=> String
resp.integrations[0].kms_key_id #=> String
resp.integrations[0].additional_encryption_context #=> Hash
resp.integrations[0].additional_encryption_context["String"] #=> String
resp.integrations[0].status #=> String, one of "creating", "active", "modifying", "failed", "deleting", "syncing", "needs_attention"
resp.integrations[0].tags #=> Array
resp.integrations[0].tags[0].key #=> String
resp.integrations[0].tags[0].value #=> String
resp.integrations[0].create_time #=> Time
resp.integrations[0].errors #=> Array
resp.integrations[0].errors[0].error_code #=> String
resp.integrations[0].errors[0].error_message #=> String
resp.integrations[0].data_filter #=> String
resp.integrations[0].description #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :integration_identifier (String)

    The unique identifier of the integration.

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more resources to return.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeIntegrations` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

Returns:

See Also:



16297
16298
16299
16300
# File 'lib/aws-sdk-rds/client.rb', line 16297

def describe_integrations(params = {}, options = {})
  req = build_request(:describe_integrations, params)
  req.send_request(options)
end

#describe_option_group_options(params = {}) ⇒ Types::OptionGroupOptionsMessage

Describes all available options for the specified engine.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe all available options


# The following example lists the options for an RDS for MySQL version 8.0 DB instance.

resp = client.describe_option_group_options({
  engine_name: "mysql", 
  major_engine_version: "8.0", 
})

resp.to_h outputs the following:
{
  option_group_options: [
    {
      description: "MariaDB Audit Plugin", 
      engine_name: "mysql", 
      major_engine_version: "8.0", 
      minimum_required_minor_engine_version: "25", 
      name: "MARIADB_AUDIT_PLUGIN", 
      option_group_option_settings: [
        {
          apply_type: "DYNAMIC", 
          is_modifiable: true, 
          is_required: false, 
          minimum_engine_version_per_allowed_value: [
          ], 
          setting_description: "Include specified users", 
          setting_name: "SERVER_AUDIT_INCL_USERS", 
        }, 
        {
          apply_type: "DYNAMIC", 
          is_modifiable: true, 
          is_required: false, 
          minimum_engine_version_per_allowed_value: [
          ], 
          setting_description: "Exclude specified users", 
          setting_name: "SERVER_AUDIT_EXCL_USERS", 
        }, 
      ], 
      options_conflicts_with: [
      ], 
      options_depended_on: [
      ], 
      permanent: false, 
      persistent: false, 
      port_required: false, 
      requires_auto_minor_engine_version_upgrade: false, 
      vpc_only: false, 
    }, 
  ], # Some output omitted.
}

Request syntax with placeholder values


resp = client.describe_option_group_options({
  engine_name: "String", # required
  major_engine_version: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.option_group_options #=> Array
resp.option_group_options[0].name #=> String
resp.option_group_options[0].description #=> String
resp.option_group_options[0].engine_name #=> String
resp.option_group_options[0].major_engine_version #=> String
resp.option_group_options[0].minimum_required_minor_engine_version #=> String
resp.option_group_options[0].port_required #=> Boolean
resp.option_group_options[0].default_port #=> Integer
resp.option_group_options[0].options_depended_on #=> Array
resp.option_group_options[0].options_depended_on[0] #=> String
resp.option_group_options[0].options_conflicts_with #=> Array
resp.option_group_options[0].options_conflicts_with[0] #=> String
resp.option_group_options[0].persistent #=> Boolean
resp.option_group_options[0].permanent #=> Boolean
resp.option_group_options[0].requires_auto_minor_engine_version_upgrade #=> Boolean
resp.option_group_options[0].vpc_only #=> Boolean
resp.option_group_options[0].supports_option_version_downgrade #=> Boolean
resp.option_group_options[0].option_group_option_settings #=> Array
resp.option_group_options[0].option_group_option_settings[0].setting_name #=> String
resp.option_group_options[0].option_group_option_settings[0].setting_description #=> String
resp.option_group_options[0].option_group_option_settings[0].default_value #=> String
resp.option_group_options[0].option_group_option_settings[0].apply_type #=> String
resp.option_group_options[0].option_group_option_settings[0].allowed_values #=> String
resp.option_group_options[0].option_group_option_settings[0].is_modifiable #=> Boolean
resp.option_group_options[0].option_group_option_settings[0].is_required #=> Boolean
resp.option_group_options[0].option_group_option_settings[0].minimum_engine_version_per_allowed_value #=> Array
resp.option_group_options[0].option_group_option_settings[0].minimum_engine_version_per_allowed_value[0].allowed_value #=> String
resp.option_group_options[0].option_group_option_settings[0].minimum_engine_version_per_allowed_value[0].minimum_engine_version #=> String
resp.option_group_options[0].option_group_option_versions #=> Array
resp.option_group_options[0].option_group_option_versions[0].version #=> String
resp.option_group_options[0].option_group_option_versions[0].is_default #=> Boolean
resp.option_group_options[0]. #=> Boolean
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :engine_name (required, String)

    The name of the engine to describe options for.

    Valid Values:

    • ‘db2-ae`

    • ‘db2-se`

    • ‘mariadb`

    • ‘mysql`

    • ‘oracle-ee`

    • ‘oracle-ee-cdb`

    • ‘oracle-se2`

    • ‘oracle-se2-cdb`

    • ‘postgres`

    • ‘sqlserver-ee`

    • ‘sqlserver-se`

    • ‘sqlserver-ex`

    • ‘sqlserver-web`

  • :major_engine_version (String)

    If specified, filters the results to include only options for the specified major engine version.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

Returns:

See Also:



16471
16472
16473
16474
# File 'lib/aws-sdk-rds/client.rb', line 16471

def describe_option_group_options(params = {}, options = {})
  req = build_request(:describe_option_group_options, params)
  req.send_request(options)
end

#describe_option_groups(params = {}) ⇒ Types::OptionGroups

Describes the available option groups.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe the available option groups


# The following example lists the options groups for an Oracle Database 19c instance.

resp = client.describe_option_groups({
  engine_name: "oracle-ee", 
  major_engine_version: "19", 
})

resp.to_h outputs the following:
{
  option_groups_list: [
    {
      allows_vpc_and_non_vpc_instance_memberships: true, 
      engine_name: "oracle-ee", 
      major_engine_version: "19", 
      option_group_arn: "arn:aws:rds:us-west-1:111122223333:og:default:oracle-ee-19", 
      option_group_description: "Default option group for oracle-ee 19", 
      option_group_name: "default:oracle-ee-19", 
      options: [
      ], 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_option_groups({
  option_group_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
  engine_name: "String",
  major_engine_version: "String",
})

Response structure


resp.option_groups_list #=> Array
resp.option_groups_list[0].option_group_name #=> String
resp.option_groups_list[0].option_group_description #=> String
resp.option_groups_list[0].engine_name #=> String
resp.option_groups_list[0].major_engine_version #=> String
resp.option_groups_list[0].options #=> Array
resp.option_groups_list[0].options[0].option_name #=> String
resp.option_groups_list[0].options[0].option_description #=> String
resp.option_groups_list[0].options[0].persistent #=> Boolean
resp.option_groups_list[0].options[0].permanent #=> Boolean
resp.option_groups_list[0].options[0].port #=> Integer
resp.option_groups_list[0].options[0].option_version #=> String
resp.option_groups_list[0].options[0].option_settings #=> Array
resp.option_groups_list[0].options[0].option_settings[0].name #=> String
resp.option_groups_list[0].options[0].option_settings[0].value #=> String
resp.option_groups_list[0].options[0].option_settings[0].default_value #=> String
resp.option_groups_list[0].options[0].option_settings[0].description #=> String
resp.option_groups_list[0].options[0].option_settings[0].apply_type #=> String
resp.option_groups_list[0].options[0].option_settings[0].data_type #=> String
resp.option_groups_list[0].options[0].option_settings[0].allowed_values #=> String
resp.option_groups_list[0].options[0].option_settings[0].is_modifiable #=> Boolean
resp.option_groups_list[0].options[0].option_settings[0].is_collection #=> Boolean
resp.option_groups_list[0].options[0].db_security_group_memberships #=> Array
resp.option_groups_list[0].options[0].db_security_group_memberships[0].db_security_group_name #=> String
resp.option_groups_list[0].options[0].db_security_group_memberships[0].status #=> String
resp.option_groups_list[0].options[0].vpc_security_group_memberships #=> Array
resp.option_groups_list[0].options[0].vpc_security_group_memberships[0].vpc_security_group_id #=> String
resp.option_groups_list[0].options[0].vpc_security_group_memberships[0].status #=> String
resp.option_groups_list[0].allows_vpc_and_non_vpc_instance_memberships #=> Boolean
resp.option_groups_list[0].vpc_id #=> String
resp.option_groups_list[0].option_group_arn #=> String
resp.option_groups_list[0].source_option_group #=> String
resp.option_groups_list[0]. #=> String
resp.option_groups_list[0].copy_timestamp #=> Time
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :option_group_name (String)

    The name of the option group to describe. Can’t be supplied together with EngineName or MajorEngineVersion.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :marker (String)

    An optional pagination token provided by a previous DescribeOptionGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :engine_name (String)

    A filter to only include option groups associated with this database engine.

    Valid Values:

    • ‘db2-ae`

    • ‘db2-se`

    • ‘mariadb`

    • ‘mysql`

    • ‘oracle-ee`

    • ‘oracle-ee-cdb`

    • ‘oracle-se2`

    • ‘oracle-se2-cdb`

    • ‘postgres`

    • ‘sqlserver-ee`

    • ‘sqlserver-se`

    • ‘sqlserver-ex`

    • ‘sqlserver-web`

  • :major_engine_version (String)

    Filters the list of option groups to only include groups associated with a specific database engine version. If specified, then EngineName must also be specified.

Returns:

See Also:



16629
16630
16631
16632
# File 'lib/aws-sdk-rds/client.rb', line 16629

def describe_option_groups(params = {}, options = {})
  req = build_request(:describe_option_groups, params)
  req.send_request(options)
end

#describe_orderable_db_instance_options(params = {}) ⇒ Types::OrderableDBInstanceOptionsMessage

Describes the orderable DB instance options for a specified DB engine.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe orderable DB instance options


# The following example retrieves details about the orderable options for a DB instances running the MySQL DB engine.

resp = client.describe_orderable_db_instance_options({
  engine: "mysql", 
})

resp.to_h outputs the following:
{
  orderable_db_instance_options: [
    {
      availability_zones: [
        {
          name: "us-east-1a", 
        }, 
        {
          name: "us-east-1b", 
        }, 
        {
          name: "us-east-1c", 
        }, 
        {
          name: "us-east-1d", 
        }, 
        {
          name: "us-east-1e", 
        }, 
        {
          name: "us-east-1f", 
        }, 
      ], 
      db_instance_class: "db.m4.10xlarge", 
      engine: "mysql", 
      engine_version: "5.7.33", 
      license_model: "general-public-license", 
      multi_az_capable: true, 
      read_replica_capable: true, 
      storage_type: "gp2", 
      supports_storage_encryption: true, 
      vpc: true, 
    }, 
  ], # Some output omitted.
}

Request syntax with placeholder values


resp = client.describe_orderable_db_instance_options({
  engine: "String", # required
  engine_version: "String",
  db_instance_class: "String",
  license_model: "String",
  availability_zone_group: "String",
  vpc: false,
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.orderable_db_instance_options #=> Array
resp.orderable_db_instance_options[0].engine #=> String
resp.orderable_db_instance_options[0].engine_version #=> String
resp.orderable_db_instance_options[0].db_instance_class #=> String
resp.orderable_db_instance_options[0].license_model #=> String
resp.orderable_db_instance_options[0].availability_zone_group #=> String
resp.orderable_db_instance_options[0].availability_zones #=> Array
resp.orderable_db_instance_options[0].availability_zones[0].name #=> String
resp.orderable_db_instance_options[0].multi_az_capable #=> Boolean
resp.orderable_db_instance_options[0].read_replica_capable #=> Boolean
resp.orderable_db_instance_options[0].vpc #=> Boolean
resp.orderable_db_instance_options[0].supports_storage_encryption #=> Boolean
resp.orderable_db_instance_options[0].storage_type #=> String
resp.orderable_db_instance_options[0].supports_iops #=> Boolean
resp.orderable_db_instance_options[0].supports_enhanced_monitoring #=> Boolean
resp.orderable_db_instance_options[0].supports_iam_database_authentication #=> Boolean
resp.orderable_db_instance_options[0].supports_performance_insights #=> Boolean
resp.orderable_db_instance_options[0].min_storage_size #=> Integer
resp.orderable_db_instance_options[0].max_storage_size #=> Integer
resp.orderable_db_instance_options[0].min_iops_per_db_instance #=> Integer
resp.orderable_db_instance_options[0].max_iops_per_db_instance #=> Integer
resp.orderable_db_instance_options[0].min_iops_per_gib #=> Float
resp.orderable_db_instance_options[0].max_iops_per_gib #=> Float
resp.orderable_db_instance_options[0].available_processor_features #=> Array
resp.orderable_db_instance_options[0].available_processor_features[0].name #=> String
resp.orderable_db_instance_options[0].available_processor_features[0].default_value #=> String
resp.orderable_db_instance_options[0].available_processor_features[0].allowed_values #=> String
resp.orderable_db_instance_options[0].supported_engine_modes #=> Array
resp.orderable_db_instance_options[0].supported_engine_modes[0] #=> String
resp.orderable_db_instance_options[0].supports_storage_autoscaling #=> Boolean
resp.orderable_db_instance_options[0].supports_kerberos_authentication #=> Boolean
resp.orderable_db_instance_options[0].outpost_capable #=> Boolean
resp.orderable_db_instance_options[0].supported_activity_stream_modes #=> Array
resp.orderable_db_instance_options[0].supported_activity_stream_modes[0] #=> String
resp.orderable_db_instance_options[0].supports_global_databases #=> Boolean
resp.orderable_db_instance_options[0].supports_clusters #=> Boolean
resp.orderable_db_instance_options[0].supported_network_types #=> Array
resp.orderable_db_instance_options[0].supported_network_types[0] #=> String
resp.orderable_db_instance_options[0].supports_storage_throughput #=> Boolean
resp.orderable_db_instance_options[0].min_storage_throughput_per_db_instance #=> Integer
resp.orderable_db_instance_options[0].max_storage_throughput_per_db_instance #=> Integer
resp.orderable_db_instance_options[0].min_storage_throughput_per_iops #=> Float
resp.orderable_db_instance_options[0].max_storage_throughput_per_iops #=> Float
resp.orderable_db_instance_options[0].supports_dedicated_log_volume #=> Boolean
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :engine (required, String)

    The name of the database engine to describe DB instance options for.

    Valid Values:

    • ‘aurora-mysql`

    • ‘aurora-postgresql`

    • ‘custom-oracle-ee`

    • ‘custom-oracle-ee-cdb`

    • ‘custom-oracle-se2`

    • ‘custom-oracle-se2-cdb`

    • ‘db2-ae`

    • ‘db2-se`

    • ‘mariadb`

    • ‘mysql`

    • ‘oracle-ee`

    • ‘oracle-ee-cdb`

    • ‘oracle-se2`

    • ‘oracle-se2-cdb`

    • ‘postgres`

    • ‘sqlserver-ee`

    • ‘sqlserver-se`

    • ‘sqlserver-ex`

    • ‘sqlserver-web`

  • :engine_version (String)

    A filter to include only the available options for the specified engine version.

  • :db_instance_class (String)

    A filter to include only the available options for the specified DB instance class.

  • :license_model (String)

    A filter to include only the available options for the specified license model.

    RDS Custom supports only the BYOL licensing model.

  • :availability_zone_group (String)

    The Availability Zone group associated with a Local Zone. Specify this parameter to retrieve available options for the Local Zones in the group.

    Omit this parameter to show the available options in the specified Amazon Web Services Region.

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

  • :vpc (Boolean)

    Specifies whether to show only VPC or non-VPC offerings. RDS Custom supports only VPC offerings.

    RDS Custom supports only VPC offerings. If you describe non-VPC offerings for RDS Custom, the output shows VPC offerings.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 1000.

  • :marker (String)

    An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

Returns:

See Also:



16853
16854
16855
16856
# File 'lib/aws-sdk-rds/client.rb', line 16853

def describe_orderable_db_instance_options(params = {}, options = {})
  req = build_request(:describe_orderable_db_instance_options, params)
  req.send_request(options)
end

#describe_pending_maintenance_actions(params = {}) ⇒ Types::PendingMaintenanceActionsMessage

Returns a list of resources (for example, DB instances) that have at least one pending maintenance action.

This API follows an eventual consistency model. This means that the result of the ‘DescribePendingMaintenanceActions` command might not be immediately visible to all subsequent RDS commands. Keep this in mind when you use `DescribePendingMaintenanceActions` immediately after using a previous API command such as `ApplyPendingMaintenanceActions`.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list resources with at least one pending maintenance action


# The following example lists the pending maintenace action for a DB instance.

resp = client.describe_pending_maintenance_actions({
})

resp.to_h outputs the following:
{
  pending_maintenance_actions: [
    {
      pending_maintenance_action_details: [
        {
          action: "system-update", 
          description: "Upgrade to Aurora PostgreSQL 2.4.2", 
        }, 
      ], 
      resource_identifier: "arn:aws:rds:us-west-2:123456789012:cluster:global-db1-cl1", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_pending_maintenance_actions({
  resource_identifier: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
})

Response structure


resp.pending_maintenance_actions #=> Array
resp.pending_maintenance_actions[0].resource_identifier #=> String
resp.pending_maintenance_actions[0].pending_maintenance_action_details #=> Array
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].action #=> String
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].auto_applied_after_date #=> Time
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].forced_apply_date #=> Time
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].opt_in_status #=> String
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].current_apply_date #=> Time
resp.pending_maintenance_actions[0].pending_maintenance_action_details[0].description #=> String
resp.marker #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_identifier (String)

    The ARN of a resource to return pending maintenance actions for.

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more resources to return pending maintenance actions for.

    Supported filters:

    • ‘db-cluster-id` - Accepts DB cluster identifiers and DB cluster Amazon Resource Names (ARNs). The results list only includes pending maintenance actions for the DB clusters identified by these ARNs.

    • ‘db-instance-id` - Accepts DB instance identifiers and DB instance ARNs. The results list only includes pending maintenance actions for the DB instances identified by these ARNs.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribePendingMaintenanceActions` request. If this parameter is specified, the response includes only records beyond the marker, up to a number of records specified by `MaxRecords`.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

Returns:

See Also:



16961
16962
16963
16964
# File 'lib/aws-sdk-rds/client.rb', line 16961

def describe_pending_maintenance_actions(params = {}, options = {})
  req = build_request(:describe_pending_maintenance_actions, params)
  req.send_request(options)
end

#describe_reserved_db_instances(params = {}) ⇒ Types::ReservedDBInstanceMessage

Returns information about reserved DB instances for this account, or about a specified reserved DB instance.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe reserved DB instances


# The following example retrieves details about any reserved DB instances in the current AWS account.

resp = client.describe_reserved_db_instances({
})

resp.to_h outputs the following:
{
  reserved_db_instances: [
    {
      currency_code: "USD", 
      db_instance_class: "db.t3.micro", 
      db_instance_count: 1, 
      duration: 31536000, 
      fixed_price: 0, 
      lease_id: "a1b2c3d4-6b69-4a59-be89-5e11aa446666", 
      multi_az: false, 
      offering_type: "No Upfront", 
      product_description: "sqlserver-ex(li)", 
      recurring_charges: [
        {
          recurring_charge_amount: 0.014, 
          recurring_charge_frequency: "Hourly", 
        }, 
      ], 
      reserved_db_instance_arn: "arn:aws:rds:us-west-2:123456789012:ri:myreservedinstance", 
      reserved_db_instance_id: "myreservedinstance", 
      reserved_db_instances_offering_id: "12ab34cd-59af-4b2c-a660-1abcdef23456", 
      start_time: Time.parse("2020-06-01T13:44:21.436Z"), 
      state: "payment-pending", 
      usage_price: 0, 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_reserved_db_instances({
  reserved_db_instance_id: "String",
  reserved_db_instances_offering_id: "String",
  db_instance_class: "String",
  duration: "String",
  product_description: "String",
  offering_type: "String",
  multi_az: false,
  lease_id: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.reserved_db_instances #=> Array
resp.reserved_db_instances[0].reserved_db_instance_id #=> String
resp.reserved_db_instances[0].reserved_db_instances_offering_id #=> String
resp.reserved_db_instances[0].db_instance_class #=> String
resp.reserved_db_instances[0].start_time #=> Time
resp.reserved_db_instances[0].duration #=> Integer
resp.reserved_db_instances[0].fixed_price #=> Float
resp.reserved_db_instances[0].usage_price #=> Float
resp.reserved_db_instances[0].currency_code #=> String
resp.reserved_db_instances[0].db_instance_count #=> Integer
resp.reserved_db_instances[0].product_description #=> String
resp.reserved_db_instances[0].offering_type #=> String
resp.reserved_db_instances[0].multi_az #=> Boolean
resp.reserved_db_instances[0].state #=> String
resp.reserved_db_instances[0].recurring_charges #=> Array
resp.reserved_db_instances[0].recurring_charges[0].recurring_charge_amount #=> Float
resp.reserved_db_instances[0].recurring_charges[0].recurring_charge_frequency #=> String
resp.reserved_db_instances[0].reserved_db_instance_arn #=> String
resp.reserved_db_instances[0].lease_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :reserved_db_instance_id (String)

    The reserved DB instance identifier filter value. Specify this parameter to show only the reservation that matches the specified reservation ID.

  • :reserved_db_instances_offering_id (String)

    The offering identifier filter value. Specify this parameter to show only purchased reservations matching the specified offering identifier.

  • :db_instance_class (String)

    The DB instance class filter value. Specify this parameter to show only those reservations matching the specified DB instances class.

  • :duration (String)

    The duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

    Valid Values: ‘1 | 3 | 31536000 | 94608000`

  • :product_description (String)

    The product description filter value. Specify this parameter to show only those reservations matching the specified product description.

  • :offering_type (String)

    The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

    Valid Values: ‘“Partial Upfront” | “All Upfront” | “No Upfront” `

  • :multi_az (Boolean)

    Specifies whether to show only those reservations that support Multi-AZ.

  • :lease_id (String)

    The lease identifier filter value. Specify this parameter to show only the reservation that matches the specified lease ID.

    <note markdown=“1”> Amazon Web Services Support might request the lease ID for an issue related to a reserved DB instance.

    </note>
    
  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more than the ‘MaxRecords` value is available, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

Returns:

See Also:



17122
17123
17124
17125
# File 'lib/aws-sdk-rds/client.rb', line 17122

def describe_reserved_db_instances(params = {}, options = {})
  req = build_request(:describe_reserved_db_instances, params)
  req.send_request(options)
end

#describe_reserved_db_instances_offerings(params = {}) ⇒ Types::ReservedDBInstancesOfferingMessage

Lists available reserved DB instance offerings.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe reserved DB instance offerings


# The following example retrieves details about reserved DB instance options for RDS for Oracle.

resp = client.describe_reserved_db_instances_offerings({
  product_description: "oracle", 
})

resp.to_h outputs the following:
{
  reserved_db_instances_offerings: [
    {
      currency_code: "USD", 
      db_instance_class: "db.m4.xlarge", 
      duration: 31536000, 
      fixed_price: 4089, 
      multi_az: true, 
      offering_type: "Partial Upfront", 
      product_description: "oracle-se2(li)", 
      recurring_charges: [
        {
          recurring_charge_amount: 0.594, 
          recurring_charge_frequency: "Hourly", 
        }, 
      ], 
      reserved_db_instances_offering_id: "005bdee3-9ef4-4182-aa0c-58ef7cb6c2f8", 
      usage_price: 0, 
    }, 
  ], # Some output omitted.
}

Request syntax with placeholder values


resp = client.describe_reserved_db_instances_offerings({
  reserved_db_instances_offering_id: "String",
  db_instance_class: "String",
  duration: "String",
  product_description: "String",
  offering_type: "String",
  multi_az: false,
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  max_records: 1,
  marker: "String",
})

Response structure


resp.marker #=> String
resp.reserved_db_instances_offerings #=> Array
resp.reserved_db_instances_offerings[0].reserved_db_instances_offering_id #=> String
resp.reserved_db_instances_offerings[0].db_instance_class #=> String
resp.reserved_db_instances_offerings[0].duration #=> Integer
resp.reserved_db_instances_offerings[0].fixed_price #=> Float
resp.reserved_db_instances_offerings[0].usage_price #=> Float
resp.reserved_db_instances_offerings[0].currency_code #=> String
resp.reserved_db_instances_offerings[0].product_description #=> String
resp.reserved_db_instances_offerings[0].offering_type #=> String
resp.reserved_db_instances_offerings[0].multi_az #=> Boolean
resp.reserved_db_instances_offerings[0].recurring_charges #=> Array
resp.reserved_db_instances_offerings[0].recurring_charges[0].recurring_charge_amount #=> Float
resp.reserved_db_instances_offerings[0].recurring_charges[0].recurring_charge_frequency #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :reserved_db_instances_offering_id (String)

    The offering identifier filter value. Specify this parameter to show only the available offering that matches the specified reservation identifier.

    Example: ‘438012d3-4052-4cc7-b2e3-8d3372e0e706`

  • :db_instance_class (String)

    The DB instance class filter value. Specify this parameter to show only the available offerings matching the specified DB instance class.

  • :duration (String)

    Duration filter value, specified in years or seconds. Specify this parameter to show only reservations for this duration.

    Valid Values: ‘1 | 3 | 31536000 | 94608000`

  • :product_description (String)

    Product description filter value. Specify this parameter to show only the available offerings that contain the specified product description.

    <note markdown=“1”> The results show offerings that partially match the filter value.

    </note>
    
  • :offering_type (String)

    The offering type filter value. Specify this parameter to show only the available offerings matching the specified offering type.

    Valid Values: ‘“Partial Upfront” | “All Upfront” | “No Upfront” `

  • :multi_az (Boolean)

    Specifies whether to show only those reservations that support Multi-AZ.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more than the ‘MaxRecords` value is available, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

Returns:

See Also:



17262
17263
17264
17265
# File 'lib/aws-sdk-rds/client.rb', line 17262

def describe_reserved_db_instances_offerings(params = {}, options = {})
  req = build_request(:describe_reserved_db_instances_offerings, params)
  req.send_request(options)
end

#describe_source_regions(params = {}) ⇒ Types::SourceRegionMessage

Returns a list of the source Amazon Web Services Regions where the current Amazon Web Services Region can create a read replica, copy a DB snapshot from, or replicate automated backups from.

Use this operation to determine whether cross-Region features are supported between other Regions and your current Region. This operation supports pagination.

To return information about the Regions that are enabled for your account, or all Regions, use the EC2 operation ‘DescribeRegions`. For more information, see [ DescribeRegions] in the *Amazon EC2 API Reference*.

[1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRegions.html

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To describe source Regions


# The following example retrieves details about all source AWS Regions where the current AWS Region can create a read
# replica, copy a DB snapshot from, or replicate automated backups from. It also shows that automated backups can be
# replicated only from US West (Oregon) to the destination AWS Region, US East (N. Virginia).

resp = client.describe_source_regions({
  region_name: "us-east-1", 
})

resp.to_h outputs the following:
{
  source_regions: [
    {
      endpoint: "https://rds.af-south-1.amazonaws.com", 
      region_name: "af-south-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: false, 
    }, 
    {
      endpoint: "https://rds.ap-east-1.amazonaws.com", 
      region_name: "ap-east-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: false, 
    }, 
    {
      endpoint: "https://rds.ap-northeast-1.amazonaws.com", 
      region_name: "ap-northeast-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.ap-northeast-2.amazonaws.com", 
      region_name: "ap-northeast-2", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.ap-northeast-3.amazonaws.com", 
      region_name: "ap-northeast-3", 
      status: "available", 
      supports_db_instance_automated_backups_replication: false, 
    }, 
    {
      endpoint: "https://rds.ap-south-1.amazonaws.com", 
      region_name: "ap-south-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.ap-southeast-1.amazonaws.com", 
      region_name: "ap-southeast-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.ap-southeast-2.amazonaws.com", 
      region_name: "ap-southeast-2", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.ap-southeast-3.amazonaws.com", 
      region_name: "ap-southeast-3", 
      status: "available", 
      supports_db_instance_automated_backups_replication: false, 
    }, 
    {
      endpoint: "https://rds.ca-central-1.amazonaws.com", 
      region_name: "ca-central-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.eu-north-1.amazonaws.com", 
      region_name: "eu-north-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.eu-south-1.amazonaws.com", 
      region_name: "eu-south-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: false, 
    }, 
    {
      endpoint: "https://rds.eu-west-1.amazonaws.com", 
      region_name: "eu-west-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.eu-west-2.amazonaws.com", 
      region_name: "eu-west-2", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.eu-west-3.amazonaws.com", 
      region_name: "eu-west-3", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.me-central-1.amazonaws.com", 
      region_name: "me-central-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: false, 
    }, 
    {
      endpoint: "https://rds.me-south-1.amazonaws.com", 
      region_name: "me-south-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: false, 
    }, 
    {
      endpoint: "https://rds.sa-east-1.amazonaws.com", 
      region_name: "sa-east-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.us-east-2.amazonaws.com", 
      region_name: "us-east-2", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.us-west-1.amazonaws.com", 
      region_name: "us-west-1", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
    {
      endpoint: "https://rds.us-west-2.amazonaws.com", 
      region_name: "us-west-2", 
      status: "available", 
      supports_db_instance_automated_backups_replication: true, 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.describe_source_regions({
  region_name: "String",
  max_records: 1,
  marker: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
})

Response structure


resp.marker #=> String
resp.source_regions #=> Array
resp.source_regions[0].region_name #=> String
resp.source_regions[0].endpoint #=> String
resp.source_regions[0].status #=> String
resp.source_regions[0].supports_db_instance_automated_backups_replication #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :region_name (String)

    The source Amazon Web Services Region name. For example, ‘us-east-1`.

    Constraints:

    • Must specify a valid Amazon Web Services Region name.

    ^

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so you can retrieve the remaining results.

    Default: 100

    Constraints: Minimum 20, maximum 100.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeSourceRegions` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

  • :filters (Array<Types::Filter>)

    This parameter isn’t currently supported.

Returns:

See Also:



17489
17490
17491
17492
# File 'lib/aws-sdk-rds/client.rb', line 17489

def describe_source_regions(params = {}, options = {})
  req = build_request(:describe_source_regions, params)
  req.send_request(options)
end

#describe_tenant_databases(params = {}) ⇒ Types::TenantDatabasesMessage

Describes the tenant databases in a DB instance that uses the multi-tenant configuration. Only RDS for Oracle CDB instances are supported.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* tenant_database_available
* tenant_database_deleted

Examples:

Request syntax with placeholder values


resp = client.describe_tenant_databases({
  db_instance_identifier: "String",
  tenant_db_name: "String",
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
  marker: "String",
  max_records: 1,
})

Response structure


resp.marker #=> String
resp.tenant_databases #=> Array
resp.tenant_databases[0].tenant_database_create_time #=> Time
resp.tenant_databases[0].db_instance_identifier #=> String
resp.tenant_databases[0].tenant_db_name #=> String
resp.tenant_databases[0].status #=> String
resp.tenant_databases[0].master_username #=> String
resp.tenant_databases[0].dbi_resource_id #=> String
resp.tenant_databases[0].tenant_database_resource_id #=> String
resp.tenant_databases[0].tenant_database_arn #=> String
resp.tenant_databases[0].character_set_name #=> String
resp.tenant_databases[0].nchar_character_set_name #=> String
resp.tenant_databases[0].deletion_protection #=> Boolean
resp.tenant_databases[0].pending_modified_values.master_user_password #=> String
resp.tenant_databases[0].pending_modified_values.tenant_db_name #=> String
resp.tenant_databases[0].tag_list #=> Array
resp.tenant_databases[0].tag_list[0].key #=> String
resp.tenant_databases[0].tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (String)

    The user-supplied DB instance identifier, which must match the identifier of an existing instance owned by the Amazon Web Services account. This parameter isn’t case-sensitive.

  • :tenant_db_name (String)

    The user-supplied tenant database name, which must match the name of an existing tenant database on the specified DB instance owned by your Amazon Web Services account. This parameter isn’t case-sensitive.

  • :filters (Array<Types::Filter>)

    A filter that specifies one or more database tenants to describe.

    Supported filters:

    • ‘tenant-db-name` - Tenant database names. The results list only includes information about the tenant databases that match these tenant DB names.

    • ‘tenant-database-resource-id` - Tenant database resource identifiers.

    • ‘dbi-resource-id` - DB instance resource identifiers. The results list only includes information about the tenants contained within the DB instances identified by these resource identifiers.

  • :marker (String)

    An optional pagination token provided by a previous ‘DescribeTenantDatabases` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by `MaxRecords`.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Returns:

See Also:



17589
17590
17591
17592
# File 'lib/aws-sdk-rds/client.rb', line 17589

def describe_tenant_databases(params = {}, options = {})
  req = build_request(:describe_tenant_databases, params)
  req.send_request(options)
end

#describe_valid_db_instance_modifications(params = {}) ⇒ Types::DescribeValidDBInstanceModificationsResult

You can call ‘DescribeValidDBInstanceModifications` to learn what modifications you can make to your DB instance. You can use this information when you call `ModifyDBInstance`.

This command doesn’t apply to RDS Custom.

Examples:

Example: To describe valid modifications for a DB instance


# The following example retrieves details about the valid modifications for the specified DB instance.

resp = client.describe_valid_db_instance_modifications({
  db_instance_identifier: "database-test1", 
})

resp.to_h outputs the following:
{
  valid_db_instance_modifications_message: {
    storage: [
      {
        storage_size: [
          {
            from: 20, 
            step: 1, 
            to: 20, 
          }, 
          {
            from: 22, 
            step: 1, 
            to: 6144, 
          }, 
        ], 
        storage_type: "gp2", 
      }, 
    ], 
  }, # Some output omitted.
}

Request syntax with placeholder values


resp = client.describe_valid_db_instance_modifications({
  db_instance_identifier: "String", # required
})

Response structure


resp.valid_db_instance_modifications_message.storage #=> Array
resp.valid_db_instance_modifications_message.storage[0].storage_type #=> String
resp.valid_db_instance_modifications_message.storage[0].storage_size #=> Array
resp.valid_db_instance_modifications_message.storage[0].storage_size[0].from #=> Integer
resp.valid_db_instance_modifications_message.storage[0].storage_size[0].to #=> Integer
resp.valid_db_instance_modifications_message.storage[0].storage_size[0].step #=> Integer
resp.valid_db_instance_modifications_message.storage[0].provisioned_iops #=> Array
resp.valid_db_instance_modifications_message.storage[0].provisioned_iops[0].from #=> Integer
resp.valid_db_instance_modifications_message.storage[0].provisioned_iops[0].to #=> Integer
resp.valid_db_instance_modifications_message.storage[0].provisioned_iops[0].step #=> Integer
resp.valid_db_instance_modifications_message.storage[0].iops_to_storage_ratio #=> Array
resp.valid_db_instance_modifications_message.storage[0].iops_to_storage_ratio[0].from #=> Float
resp.valid_db_instance_modifications_message.storage[0].iops_to_storage_ratio[0].to #=> Float
resp.valid_db_instance_modifications_message.storage[0].supports_storage_autoscaling #=> Boolean
resp.valid_db_instance_modifications_message.storage[0].provisioned_storage_throughput #=> Array
resp.valid_db_instance_modifications_message.storage[0].provisioned_storage_throughput[0].from #=> Integer
resp.valid_db_instance_modifications_message.storage[0].provisioned_storage_throughput[0].to #=> Integer
resp.valid_db_instance_modifications_message.storage[0].provisioned_storage_throughput[0].step #=> Integer
resp.valid_db_instance_modifications_message.storage[0].storage_throughput_to_iops_ratio #=> Array
resp.valid_db_instance_modifications_message.storage[0].storage_throughput_to_iops_ratio[0].from #=> Float
resp.valid_db_instance_modifications_message.storage[0].storage_throughput_to_iops_ratio[0].to #=> Float
resp.valid_db_instance_modifications_message.valid_processor_features #=> Array
resp.valid_db_instance_modifications_message.valid_processor_features[0].name #=> String
resp.valid_db_instance_modifications_message.valid_processor_features[0].default_value #=> String
resp.valid_db_instance_modifications_message.valid_processor_features[0].allowed_values #=> String
resp.valid_db_instance_modifications_message.supports_dedicated_log_volume #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The customer identifier or the ARN of your DB instance.

Returns:

See Also:



17678
17679
17680
17681
# File 'lib/aws-sdk-rds/client.rb', line 17678

def describe_valid_db_instance_modifications(params = {}, options = {})
  req = build_request(:describe_valid_db_instance_modifications, params)
  req.send_request(options)
end

#disable_http_endpoint(params = {}) ⇒ Types::DisableHttpEndpointResponse

Disables the HTTP endpoint for the specified DB cluster. Disabling this endpoint disables RDS Data API.

For more information, see [Using RDS Data API] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This operation applies only to Aurora Serverless v2 and provisioned DB clusters. To disable the HTTP endpoint for Aurora Serverless v1 DB clusters, use the ‘EnableHttpEndpoint` parameter of the `ModifyDBCluster` operation.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html

Examples:

Request syntax with placeholder values


resp = client.disable_http_endpoint({
  resource_arn: "String", # required
})

Response structure


resp.resource_arn #=> String
resp.http_endpoint_enabled #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the DB cluster.

Returns:

See Also:



17723
17724
17725
17726
# File 'lib/aws-sdk-rds/client.rb', line 17723

def disable_http_endpoint(params = {}, options = {})
  req = build_request(:disable_http_endpoint, params)
  req.send_request(options)
end

#download_db_log_file_portion(params = {}) ⇒ Types::DownloadDBLogFilePortionDetails

Downloads all or a portion of the specified log file, up to 1 MB in size.

This command doesn’t apply to RDS Custom.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To download a DB log file


# The following example downloads only the latest part of your log file.

resp = client.download_db_log_file_portion({
  db_instance_identifier: "test-instance", 
  log_file_name: "log.txt", 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.download_db_log_file_portion({
  db_instance_identifier: "String", # required
  log_file_name: "String", # required
  marker: "String",
  number_of_lines: 1,
})

Response structure


resp.log_file_data #=> String
resp.marker #=> String
resp.additional_data_pending #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The customer-assigned name of the DB instance that contains the log files you want to list.

    Constraints:

    • Must match the identifier of an existing DBInstance.

    ^

  • :log_file_name (required, String)

    The name of the log file to be downloaded.

  • :marker (String)

    The pagination token provided in the previous request or “0”. If the Marker parameter is specified the response includes only records beyond the marker until the end of the file or up to NumberOfLines.

  • :number_of_lines (Integer)

    The number of lines to download. If the number of lines specified results in a file over 1 MB in size, the file is truncated at 1 MB in size.

    If the NumberOfLines parameter is specified, then the block of lines returned can be from the beginning or the end of the log file, depending on the value of the Marker parameter.

    • If neither Marker or NumberOfLines are specified, the entire log file is returned up to a maximum of 10000 lines, starting with the most recent log entries first.

    • If NumberOfLines is specified and Marker isn’t specified, then the most recent lines from the end of the log file are returned.

    • If Marker is specified as “0”, then the specified number of lines from the beginning of the log file are returned.

    • You can download the log file in blocks of lines by specifying the size of the block using the NumberOfLines parameter, and by specifying a value of “0” for the Marker parameter in your first request. Include the Marker value returned in the response as the Marker value for the next request, continuing until the AdditionalDataPending response element returns false.

Returns:

See Also:



17818
17819
17820
17821
# File 'lib/aws-sdk-rds/client.rb', line 17818

def download_db_log_file_portion(params = {}, options = {})
  req = build_request(:download_db_log_file_portion, params)
  req.send_request(options)
end

#enable_http_endpoint(params = {}) ⇒ Types::EnableHttpEndpointResponse

Enables the HTTP endpoint for the DB cluster. By default, the HTTP endpoint isn’t enabled.

When enabled, this endpoint provides a connectionless web service API (RDS Data API) for running SQL queries on the Aurora DB cluster. You can also query your database from inside the RDS console with the RDS query editor.

For more information, see [Using RDS Data API] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This operation applies only to Aurora Serverless v2 and provisioned DB clusters. To enable the HTTP endpoint for Aurora Serverless v1 DB clusters, use the ‘EnableHttpEndpoint` parameter of the `ModifyDBCluster` operation.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html

Examples:

Request syntax with placeholder values


resp = client.enable_http_endpoint({
  resource_arn: "String", # required
})

Response structure


resp.resource_arn #=> String
resp.http_endpoint_enabled #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the DB cluster.

Returns:

See Also:



17868
17869
17870
17871
# File 'lib/aws-sdk-rds/client.rb', line 17868

def enable_http_endpoint(params = {}, options = {})
  req = build_request(:enable_http_endpoint, params)
  req.send_request(options)
end

#failover_db_cluster(params = {}) ⇒ Types::FailoverDBClusterResult

Forces a failover for a DB cluster.

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

For a Multi-AZ DB cluster, after RDS terminates the primary DB instance, the internal monitoring system detects that the primary DB instance is unhealthy and promotes a readable standby (read-only instances) in the DB cluster to be the primary DB instance (the cluster writer). Failover times are typically less than 35 seconds.

An Amazon Aurora DB cluster automatically fails over to an Aurora Replica, if one exists, when the primary DB instance fails. A Multi-AZ DB cluster automatically fails over to a readable standby DB instance when the primary DB instance fails.

To simulate a failure of a primary instance for testing, you can force a failover. Because each instance in a DB cluster has its own endpoint address, make sure to clean up and re-establish any existing connections that use those endpoint addresses when the failover is complete.

For more information on Amazon Aurora DB clusters, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To perform a failover for a DB cluster


# This example performs a failover for the specified DB cluster to the specified DB instance.

resp = client.failover_db_cluster({
  db_cluster_identifier: "myaurorainstance-cluster", 
  target_db_instance_identifier: "myaurorareplica", 
})

resp.to_h outputs the following:
{
  db_cluster: {
  }, 
}

Request syntax with placeholder values


resp = client.failover_db_cluster({
  db_cluster_identifier: "String", # required
  target_db_instance_identifier: "String",
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The identifier of the DB cluster to force a failover for. This parameter isn’t case-sensitive.

    Constraints:

    • Must match the identifier of an existing DB cluster.

    ^

  • :target_db_instance_identifier (String)

    The name of the DB instance to promote to the primary DB instance.

    Specify the DB instance identifier for an Aurora Replica or a Multi-AZ readable standby in the DB cluster, for example ‘mydbcluster-replica1`.

    This setting isn’t supported for RDS for MySQL Multi-AZ DB clusters.

Returns:

See Also:



18100
18101
18102
18103
# File 'lib/aws-sdk-rds/client.rb', line 18100

def failover_db_cluster(params = {}, options = {})
  req = build_request(:failover_db_cluster, params)
  req.send_request(options)
end

#failover_global_cluster(params = {}) ⇒ Types::FailoverGlobalClusterResult

Promotes the specified secondary DB cluster to be the primary DB cluster in the global database cluster to fail over or switch over a global database. Switchover operations were previously called “managed planned failovers.”

<note markdown=“1”> Although this operation can be used either to fail over or to switch over a global database cluster, its intended use is for global database failover. To switch over a global database cluster, we recommend that you use the SwitchoverGlobalCluster operation instead.

</note>

How you use this operation depends on whether you are failing over or switching over your global database cluster:

  • Failing over - Specify the ‘AllowDataLoss` parameter and don’t specify the ‘Switchover` parameter.

  • Switching over - Specify the ‘Switchover` parameter or omit it, but don’t specify the ‘AllowDataLoss` parameter.

**About failing over and switching over**

While failing over and switching over a global database cluster both change the primary DB cluster, you use these operations for different reasons:

  • *Failing over* - Use this operation to respond to an unplanned event, such as a Regional disaster in the primary Region. Failing over can result in a loss of write transaction data that wasn’t replicated to the chosen secondary before the failover event occurred. However, the recovery process that promotes a DB instance on the chosen seconday DB cluster to be the primary writer DB instance guarantees that the data is in a transactionally consistent state.

    For more information about failing over an Amazon Aurora global database, see [Performing managed failovers for Aurora global databases] in the *Amazon Aurora User Guide*.

  • *Switching over* - Use this operation on a healthy global database cluster for planned events, such as Regional rotation or to fail back to the original primary DB cluster after a failover operation. With this operation, there is no data loss.

    For more information about switching over an Amazon Aurora global database, see [Performing switchovers for Aurora global databases] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-disaster-recovery.html#aurora-global-database-failover.managed-unplanned [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-disaster-recovery.html#aurora-global-database-disaster-recovery.managed-failover

Examples:

Request syntax with placeholder values


resp = client.failover_global_cluster({
  global_cluster_identifier: "GlobalClusterIdentifier", # required
  target_db_cluster_identifier: "DBClusterIdentifier", # required
  allow_data_loss: false,
  switchover: false,
})

Response structure


resp.global_cluster.global_cluster_identifier #=> String
resp.global_cluster.global_cluster_resource_id #=> String
resp.global_cluster.global_cluster_arn #=> String
resp.global_cluster.status #=> String
resp.global_cluster.engine #=> String
resp.global_cluster.engine_version #=> String
resp.global_cluster.engine_lifecycle_support #=> String
resp.global_cluster.database_name #=> String
resp.global_cluster.storage_encrypted #=> Boolean
resp.global_cluster.deletion_protection #=> Boolean
resp.global_cluster.global_cluster_members #=> Array
resp.global_cluster.global_cluster_members[0].db_cluster_arn #=> String
resp.global_cluster.global_cluster_members[0].readers #=> Array
resp.global_cluster.global_cluster_members[0].readers[0] #=> String
resp.global_cluster.global_cluster_members[0].is_writer #=> Boolean
resp.global_cluster.global_cluster_members[0].global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.global_cluster.global_cluster_members[0].synchronization_status #=> String, one of "connected", "pending-resync"
resp.global_cluster.endpoint #=> String
resp.global_cluster.failover_state.status #=> String, one of "pending", "failing-over", "cancelling"
resp.global_cluster.failover_state.from_db_cluster_arn #=> String
resp.global_cluster.failover_state.to_db_cluster_arn #=> String
resp.global_cluster.failover_state.is_data_loss_allowed #=> Boolean
resp.global_cluster.tag_list #=> Array
resp.global_cluster.tag_list[0].key #=> String
resp.global_cluster.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :global_cluster_identifier (required, String)

    The identifier of the global database cluster (Aurora global database) this operation should apply to. The identifier is the unique key assigned by the user when the Aurora global database is created. In other words, it’s the name of the Aurora global database.

    Constraints:

    • Must match the identifier of an existing global database cluster.

    ^

  • :target_db_cluster_identifier (required, String)

    The identifier of the secondary Aurora DB cluster that you want to promote to the primary for the global database cluster. Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.

  • :allow_data_loss (Boolean)

    Specifies whether to allow data loss for this global database cluster operation. Allowing data loss triggers a global failover operation.

    If you don’t specify ‘AllowDataLoss`, the global database cluster operation defaults to a switchover.

    Constraints:

    • Can’t be specified together with the ‘Switchover` parameter.

    ^

  • :switchover (Boolean)

    Specifies whether to switch over this global database cluster.

    Constraints:

    • Can’t be specified together with the ‘AllowDataLoss` parameter.

    ^

Returns:

See Also:



18244
18245
18246
18247
# File 'lib/aws-sdk-rds/client.rb', line 18244

def failover_global_cluster(params = {}, options = {})
  req = build_request(:failover_global_cluster, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::TagListMessage

Lists all tags on an Amazon RDS resource.

For an overview on tagging an Amazon RDS resource, see [Tagging Amazon RDS Resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS Resources] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

Examples:

Example: To list tags on an Amazon RDS resource


# The following example lists all tags on a DB instance.

resp = client.list_tags_for_resource({
  resource_name: "arn:aws:rds:us-east-1:123456789012:db:orcl1", 
})

resp.to_h outputs the following:
{
  tag_list: [
    {
      key: "Environment", 
      value: "test", 
    }, 
    {
      key: "Name", 
      value: "MyDatabase", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_name: "String", # required
  filters: [
    {
      name: "String", # required
      values: ["String"], # required
    },
  ],
})

Response structure


resp.tag_list #=> Array
resp.tag_list[0].key #=> String
resp.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

Returns:

See Also:



18322
18323
18324
18325
# File 'lib/aws-sdk-rds/client.rb', line 18322

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#modify_activity_stream(params = {}) ⇒ Types::ModifyActivityStreamResponse

Changes the audit policy state of a database activity stream to either locked (default) or unlocked. A locked policy is read-only, whereas an unlocked policy is read/write. If your activity stream is started and locked, you can unlock it, customize your audit policy, and then lock your activity stream. Restarting the activity stream isn’t required. For more information, see [ Modifying a database activity stream] in the *Amazon RDS User Guide*.

This operation is supported for RDS for Oracle and Microsoft SQL Server.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/DBActivityStreams.Modifying.html

Examples:

Request syntax with placeholder values


resp = client.modify_activity_stream({
  resource_arn: "String",
  audit_policy_state: "locked", # accepts locked, unlocked
})

Response structure


resp.kms_key_id #=> String
resp.kinesis_stream_name #=> String
resp.status #=> String, one of "stopped", "starting", "started", "stopping"
resp.mode #=> String, one of "sync", "async"
resp.engine_native_audit_fields_included #=> Boolean
resp.policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (String)

    The Amazon Resource Name (ARN) of the RDS for Oracle or Microsoft SQL Server DB instance. For example, ‘arn:aws:rds:us-east-1:12345667890:db:my-orcl-db`.

  • :audit_policy_state (String)

    The audit policy state. When a policy is unlocked, it is read/write. When it is locked, it is read-only. You can edit your audit policy only when the activity stream is unlocked or stopped.

Returns:

See Also:



18381
18382
18383
18384
# File 'lib/aws-sdk-rds/client.rb', line 18381

def modify_activity_stream(params = {}, options = {})
  req = build_request(:modify_activity_stream, params)
  req.send_request(options)
end

#modify_certificates(params = {}) ⇒ Types::ModifyCertificatesResult

Override the system-default Secure Sockets Layer/Transport Layer Security (SSL/TLS) certificate for Amazon RDS for new DB instances, or remove the override.

By using this operation, you can specify an RDS-approved SSL/TLS certificate for new DB instances that is different from the default certificate provided by RDS. You can also use this operation to remove the override, so that new DB instances use the default certificate provided by RDS.

You might need to override the default certificate in the following situations:

  • You already migrated your applications to support the latest certificate authority (CA) certificate, but the new CA certificate is not yet the RDS default CA certificate for the specified Amazon Web Services Region.

  • RDS has already moved to a new default CA certificate for the specified Amazon Web Services Region, but you are still in the process of supporting the new CA certificate. In this case, you temporarily need additional time to finish your application changes.

For more information about rotating your SSL/TLS certificate for RDS DB engines, see [ Rotating Your SSL/TLS Certificate] in the *Amazon RDS User Guide*.

For more information about rotating your SSL/TLS certificate for Aurora DB engines, see [ Rotating Your SSL/TLS Certificate] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL-certificate-rotation.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL-certificate-rotation.html

Examples:

Example: To temporarily override the system-default SSL/TLS certificate for new DB instances


# The following example temporarily overrides the system-default SSL/TLS certificate for new DB instances.

resp = client.modify_certificates({
  certificate_identifier: "rds-ca-2019", 
})

resp.to_h outputs the following:
{
  certificate: {
    certificate_arn: "arn:aws:rds:us-east-1::cert:rds-ca-2019", 
    certificate_identifier: "rds-ca-2019", 
    certificate_type: "CA", 
    customer_override: true, 
    customer_override_valid_till: Time.parse("2024-08-22T17:08:50Z"), 
    thumbprint: "EXAMPLE123456789012", 
    valid_from: Time.parse("2019-09-19T18:16:53Z"), 
    valid_till: Time.parse("2024-08-22T17:08:50Z"), 
  }, 
}

Request syntax with placeholder values


resp = client.modify_certificates({
  certificate_identifier: "String",
  remove_customer_override: false,
})

Response structure


resp.certificate.certificate_identifier #=> String
resp.certificate.certificate_type #=> String
resp.certificate.thumbprint #=> String
resp.certificate.valid_from #=> Time
resp.certificate.valid_till #=> Time
resp.certificate.certificate_arn #=> String
resp.certificate.customer_override #=> Boolean
resp.certificate.customer_override_valid_till #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :certificate_identifier (String)

    The new default certificate identifier to override the current one with.

    To determine the valid values, use the ‘describe-certificates` CLI command or the `DescribeCertificates` API operation.

  • :remove_customer_override (Boolean)

    Specifies whether to remove the override for the default certificate. If the override is removed, the default certificate is the system default.

Returns:

See Also:



18483
18484
18485
18486
# File 'lib/aws-sdk-rds/client.rb', line 18483

def modify_certificates(params = {}, options = {})
  req = build_request(:modify_certificates, params)
  req.send_request(options)
end

#modify_current_db_cluster_capacity(params = {}) ⇒ Types::DBClusterCapacityInfo

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

Aurora Serverless v1 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 v1 can automatically scale the DB cluster based on the cooldown period for scaling up and the cooldown period for scaling down.

For more information about Aurora Serverless v1, see [Using Amazon Aurora Serverless v1] in the *Amazon Aurora User Guide*.

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

<note markdown=“1”> This operation only applies to Aurora Serverless v1 DB clusters.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.how-it-works.html#aurora-serverless.how-it-works.auto-scaling

Examples:

Example: To scale the capacity of an Aurora Serverless DB cluster


# The following example scales the capacity of an Aurora Serverless DB cluster to 8.

resp = client.modify_current_db_cluster_capacity({
  capacity: 8, 
  db_cluster_identifier: "mydbcluster", 
})

resp.to_h outputs the following:
{
  current_capacity: 1, 
  db_cluster_identifier: "mydbcluster", 
  pending_capacity: 8, 
  seconds_before_timeout: 300, 
  timeout_action: "ForceApplyCapacityChange", 
}

Request syntax with placeholder values


resp = client.modify_current_db_cluster_capacity({
  db_cluster_identifier: "String", # required
  capacity: 1,
  seconds_before_timeout: 1,
  timeout_action: "String",
})

Response structure


resp.db_cluster_identifier #=> String
resp.pending_capacity #=> Integer
resp.current_capacity #=> Integer
resp.seconds_before_timeout #=> Integer
resp.timeout_action #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The DB cluster identifier for the cluster being modified. This parameter isn’t case-sensitive.

    Constraints:

    • Must match the identifier of an existing DB cluster.

    ^

  • :capacity (Integer)

    The DB cluster capacity.

    When you change the capacity of a paused Aurora Serverless v1 DB cluster, it automatically resumes.

    Constraints:

    • For Aurora MySQL, valid capacity values are ‘1`, `2`, `4`, `8`, `16`, `32`, `64`, `128`, and `256`.

    • For Aurora PostgreSQL, valid capacity values are ‘2`, `4`, `8`, `16`, `32`, `64`, `192`, and `384`.

  • :seconds_before_timeout (Integer)

    The amount of time, in seconds, that Aurora Serverless v1 tries to find a scaling point to perform seamless scaling before enforcing the timeout action. The default is 300.

    Specify a value between 10 and 600 seconds.

  • :timeout_action (String)

    The action to take when the timeout is reached, either ‘ForceApplyCapacityChange` or `RollbackCapacityChange`.

    ‘ForceApplyCapacityChange`, the default, sets the capacity to the specified value as soon as possible.

    ‘RollbackCapacityChange` ignores the capacity change if a scaling point isn’t found in the timeout period.

Returns:

See Also:



18608
18609
18610
18611
# File 'lib/aws-sdk-rds/client.rb', line 18608

def modify_current_db_cluster_capacity(params = {}, options = {})
  req = build_request(:modify_current_db_cluster_capacity, params)
  req.send_request(options)
end

#modify_custom_db_engine_version(params = {}) ⇒ Types::DBEngineVersion

Modifies the status of a custom engine version (CEV). You can find CEVs to modify by calling ‘DescribeDBEngineVersions`.

<note markdown=“1”> The MediaImport service that imports files from Amazon S3 to create CEVs isn’t integrated with Amazon Web Services CloudTrail. If you turn on data logging for Amazon RDS in CloudTrail, calls to the ‘ModifyCustomDbEngineVersion` event aren’t logged. However, you might see calls from the API gateway that accesses your Amazon S3 bucket. These calls originate from the MediaImport service for the ‘ModifyCustomDbEngineVersion` event.

</note>

For more information, see [Modifying CEV status] in the *Amazon RDS User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-cev.html#custom-cev.modify

Examples:

Request syntax with placeholder values


resp = client.modify_custom_db_engine_version({
  engine: "CustomEngineName", # required
  engine_version: "CustomEngineVersion", # required
  description: "Description",
  status: "available", # accepts available, inactive, inactive-except-restore
})

Response structure


resp.engine #=> String
resp.engine_version #=> String
resp.db_parameter_group_family #=> String
resp.db_engine_description #=> String
resp.db_engine_version_description #=> String
resp.default_character_set.character_set_name #=> String
resp.default_character_set.character_set_description #=> String
resp.image.image_id #=> String
resp.image.status #=> String
resp.db_engine_media_type #=> String
resp.supported_character_sets #=> Array
resp.supported_character_sets[0].character_set_name #=> String
resp.supported_character_sets[0].character_set_description #=> String
resp.supported_nchar_character_sets #=> Array
resp.supported_nchar_character_sets[0].character_set_name #=> String
resp.supported_nchar_character_sets[0].character_set_description #=> String
resp.valid_upgrade_target #=> Array
resp.valid_upgrade_target[0].engine #=> String
resp.valid_upgrade_target[0].engine_version #=> String
resp.valid_upgrade_target[0].description #=> String
resp.valid_upgrade_target[0].auto_upgrade #=> Boolean
resp.valid_upgrade_target[0].is_major_version_upgrade #=> Boolean
resp.valid_upgrade_target[0].supported_engine_modes #=> Array
resp.valid_upgrade_target[0].supported_engine_modes[0] #=> String
resp.valid_upgrade_target[0].supports_parallel_query #=> Boolean
resp.valid_upgrade_target[0].supports_global_databases #=> Boolean
resp.valid_upgrade_target[0].supports_babelfish #=> Boolean
resp.valid_upgrade_target[0].supports_limitless_database #=> Boolean
resp.valid_upgrade_target[0].supports_local_write_forwarding #=> Boolean
resp.valid_upgrade_target[0].supports_integrations #=> Boolean
resp.supported_timezones #=> Array
resp.supported_timezones[0].timezone_name #=> String
resp.exportable_log_types #=> Array
resp.exportable_log_types[0] #=> String
resp.supports_log_exports_to_cloudwatch_logs #=> Boolean
resp.supports_read_replica #=> Boolean
resp.supported_engine_modes #=> Array
resp.supported_engine_modes[0] #=> String
resp.supported_feature_names #=> Array
resp.supported_feature_names[0] #=> String
resp.status #=> String
resp.supports_parallel_query #=> Boolean
resp.supports_global_databases #=> Boolean
resp.major_engine_version #=> String
resp.database_installation_files_s3_bucket_name #=> String
resp.database_installation_files_s3_prefix #=> String
resp.db_engine_version_arn #=> String
resp.kms_key_id #=> String
resp.create_time #=> Time
resp.tag_list #=> Array
resp.tag_list[0].key #=> String
resp.tag_list[0].value #=> String
resp.supports_babelfish #=> Boolean
resp.custom_db_engine_version_manifest #=> String
resp.supports_limitless_database #=> Boolean
resp.supports_certificate_rotation_without_restart #=> Boolean
resp.supported_ca_certificate_identifiers #=> Array
resp.supported_ca_certificate_identifiers[0] #=> String
resp.supports_local_write_forwarding #=> Boolean
resp.supports_integrations #=> Boolean
resp.serverless_v2_features_support.min_capacity #=> Float
resp.serverless_v2_features_support.max_capacity #=> Float

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :engine (required, String)

    The database engine. RDS Custom for Oracle supports the following values:

    • ‘custom-oracle-ee`

    • ‘custom-oracle-ee-cdb`

    • ‘custom-oracle-se2`

    • ‘custom-oracle-se2-cdb`

  • :engine_version (required, String)

    The custom engine version (CEV) that you want to modify. This option is required for RDS Custom for Oracle, but optional for Amazon RDS. The combination of ‘Engine` and `EngineVersion` is unique per customer per Amazon Web Services Region.

  • :description (String)

    An optional description of your CEV.

  • :status (String)

    The availability status to be assigned to the CEV. Valid values are as follows:

    available

    : You can use this CEV to create a new RDS Custom DB instance.

    inactive

    : You can create a new RDS Custom instance by restoring a DB snapshot

    with this CEV. You can't patch or create new instances with this
    CEV.
    

    You can change any status to any status. A typical reason to change status is to prevent the accidental use of a CEV, or to make a deprecated CEV eligible for use again. For example, you might change the status of your CEV from ‘available` to `inactive`, and from `inactive` back to `available`. To change the availability status of the CEV, it must not currently be in use by an RDS Custom instance, snapshot, or automated backup.

Returns:

See Also:



18792
18793
18794
18795
# File 'lib/aws-sdk-rds/client.rb', line 18792

def modify_custom_db_engine_version(params = {}, options = {})
  req = build_request(:modify_custom_db_engine_version, params)
  req.send_request(options)
end

#modify_db_cluster(params = {}) ⇒ Types::ModifyDBClusterResult

Modifies the settings of an Amazon Aurora DB cluster or a Multi-AZ DB cluster. You can change one or more settings by specifying these parameters and the new values in the request.

For more information on Amazon Aurora DB clusters, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To modify a DB cluster


# The following example changes the master user password for the DB cluster named cluster-2 and sets the backup retention
# period to 14 days. The ApplyImmediately parameter causes the changes to be made immediately, instead of waiting until
# the next maintenance window.

resp = client.modify_db_cluster({
  apply_immediately: true, 
  backup_retention_period: 14, 
  db_cluster_identifier: "cluster-2", 
  master_user_password: "newpassword99", 
})

resp.to_h outputs the following:
{
  db_cluster: {
    allocated_storage: 1, 
    associated_roles: [
    ], 
    availability_zones: [
      "eu-central-1b", 
      "eu-central-1c", 
      "eu-central-1a", 
    ], 
    backup_retention_period: 14, 
    cluster_create_time: Time.parse("2020-04-03T14:44:02.764Z"), 
    copy_tags_to_snapshot: true, 
    cross_account_clone: false, 
    db_cluster_arn: "arn:aws:rds:eu-central-1:123456789012:cluster:cluster-2", 
    db_cluster_identifier: "cluster-2", 
    db_cluster_members: [
      {
        db_cluster_parameter_group_status: "in-sync", 
        db_instance_identifier: "cluster-2-instance-1", 
        is_cluster_writer: true, 
        promotion_tier: 1, 
      }, 
    ], 
    db_cluster_parameter_group: "default.aurora5.6", 
    db_subnet_group: "default-vpc-2305ca49", 
    database_name: "", 
    db_cluster_resource_id: "cluster-AGJ7XI77XVIS6FUXHU1EXAMPLE", 
    deletion_protection: false, 
    domain_memberships: [
    ], 
    earliest_restorable_time: Time.parse("2020-06-03T02:07:29.637Z"), 
    endpoint: "cluster-2.cluster-############.eu-central-1.rds.amazonaws.com", 
    engine: "aurora", 
    engine_mode: "provisioned", 
    engine_version: "5.6.10a", 
    hosted_zone_id: "Z1RLNU0EXAMPLE", 
    http_endpoint_enabled: false, 
    iam_database_authentication_enabled: false, 
    kms_key_id: "arn:aws:kms:eu-central-1:123456789012:key/d1bd7c8f-5cdb-49ca-8a62-a1b2c3d4e5f6", 
    latest_restorable_time: Time.parse("2020-06-04T15:11:25.748Z"), 
    master_username: "admin", 
    multi_az: false, 
    port: 3306, 
    preferred_backup_window: "01:55-02:25", 
    preferred_maintenance_window: "thu:21:14-thu:21:44", 
    read_replica_identifiers: [
    ], 
    reader_endpoint: "cluster-2.cluster-ro-############.eu-central-1.rds.amazonaws.com", 
    status: "available", 
    storage_encrypted: true, 
    vpc_security_groups: [
      {
        status: "active", 
        vpc_security_group_id: "sg-20a5c047", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.modify_db_cluster({
  db_cluster_identifier: "String", # required
  new_db_cluster_identifier: "String",
  apply_immediately: false,
  backup_retention_period: 1,
  db_cluster_parameter_group_name: "String",
  vpc_security_group_ids: ["String"],
  port: 1,
  master_user_password: "String",
  option_group_name: "String",
  preferred_backup_window: "String",
  preferred_maintenance_window: "String",
  enable_iam_database_authentication: false,
  backtrack_window: 1,
  cloudwatch_logs_export_configuration: {
    enable_log_types: ["String"],
    disable_log_types: ["String"],
  },
  engine_version: "String",
  allow_major_version_upgrade: false,
  db_instance_parameter_group_name: "String",
  domain: "String",
  domain_iam_role_name: "String",
  scaling_configuration: {
    min_capacity: 1,
    max_capacity: 1,
    auto_pause: false,
    seconds_until_auto_pause: 1,
    timeout_action: "String",
    seconds_before_timeout: 1,
  },
  deletion_protection: false,
  enable_http_endpoint: false,
  copy_tags_to_snapshot: false,
  enable_global_write_forwarding: false,
  db_cluster_instance_class: "String",
  allocated_storage: 1,
  storage_type: "String",
  iops: 1,
  auto_minor_version_upgrade: false,
  monitoring_interval: 1,
  monitoring_role_arn: "String",
  database_insights_mode: "standard", # accepts standard, advanced
  enable_performance_insights: false,
  performance_insights_kms_key_id: "String",
  performance_insights_retention_period: 1,
  serverless_v2_scaling_configuration: {
    min_capacity: 1.0,
    max_capacity: 1.0,
    seconds_until_auto_pause: 1,
  },
  network_type: "String",
  manage_master_user_password: false,
  rotate_master_user_password: false,
  master_user_secret_kms_key_id: "String",
  engine_mode: "String",
  allow_engine_mode_change: false,
  enable_local_write_forwarding: false,
  aws_backup_recovery_point_arn: "AwsBackupRecoveryPointArn",
  enable_limitless_database: false,
  ca_certificate_identifier: "String",
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The DB cluster identifier for the cluster being modified. This parameter isn’t case-sensitive.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Constraints:

    • Must match the identifier of an existing DB cluster.

    ^

  • :new_db_cluster_identifier (String)

    The new DB cluster identifier for the DB cluster when renaming a DB cluster. This value is stored as a lowercase string.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    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: ‘my-cluster2`

  • :apply_immediately (Boolean)

    Specifies whether the modifications in this request are asynchronously applied as soon as possible, regardless of the ‘PreferredMaintenanceWindow` setting for the DB cluster. If this parameter is disabled, changes to the DB cluster are applied during the next maintenance window.

    Most modifications can be applied immediately or during the next scheduled maintenance window. Some modifications, such as turning on deletion protection and changing the master password, are applied immediately—regardless of when you choose to apply them.

    By default, this parameter is disabled.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :backup_retention_period (Integer)

    The number of days for which automated backups are retained. Specify a minimum value of ‘1`.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Default: ‘1`

    Constraints:

    • Must be a value from 1 to 35.

    ^

  • :db_cluster_parameter_group_name (String)

    The name of the DB cluster parameter group to use for the DB cluster.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :vpc_security_group_ids (Array<String>)

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

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :port (Integer)

    The port number on which the DB cluster accepts connections.

    Valid for Cluster Type: Aurora DB clusters only

    Valid Values: ‘1150-65535`

    Default: The same port as the original DB cluster.

  • :master_user_password (String)

    The new password for the master database user.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Constraints:

    • Must contain from 8 to 41 characters.

    • Can contain any printable ASCII character except “/”, “”“, or ”@“.

    • Can’t be specified if ‘ManageMasterUserPassword` is turned on.

  • :option_group_name (String)

    The option group to associate the DB cluster with.

    DB clusters are associated with a default option group that can’t be modified.

  • :preferred_backup_window (String)

    The daily time range during which automated backups are created if automated backups are enabled, using the ‘BackupRetentionPeriod` parameter.

    The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. To view the time blocks available, see [ Backup window] in the *Amazon Aurora User Guide*.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Managing.Backups.html#Aurora.Managing.Backups.BackupWindow

  • :preferred_maintenance_window (String)

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

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week. To see the time blocks available, see [ Adjusting the Preferred DB Cluster Maintenance Window] in the *Amazon Aurora User Guide*.

    Constraints:

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

    • Days must be one of ‘Mon | Tue | Wed | Thu | Fri | Sat | Sun`.

    • Must be in Universal Coordinated Time (UTC).

    • Must be at least 30 minutes.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_UpgradeDBInstance.Maintenance.html#AdjustingTheMaintenanceWindow.Aurora

  • :enable_iam_database_authentication (Boolean)

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

    For more information, see [ IAM Database Authentication] in the *Amazon Aurora User Guide* or [IAM database authentication for MariaDB, MySQL, and PostgreSQL] in the *Amazon RDS User Guide*.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html

  • :backtrack_window (Integer)

    The target backtrack window, in seconds. To disable backtracking, set this value to ‘0`.

    Valid for Cluster Type: Aurora MySQL DB clusters only

    Default: ‘0`

    Constraints:

    • If specified, this value must be set to a number from 0 to 259,200 (72 hours).

    ^

  • :cloudwatch_logs_export_configuration (Types::CloudwatchLogsExportConfiguration)

    The configuration setting for the log types to be enabled for export to CloudWatch Logs for a specific DB cluster.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    The following values are valid for each DB engine:

    • Aurora MySQL - ‘audit | error | general | slowquery`

    • Aurora PostgreSQL - ‘postgresql`

    • RDS for MySQL - ‘error | general | slowquery`

    • RDS for PostgreSQL - ‘postgresql | upgrade`

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :engine_version (String)

    The version number of the database engine to which you want to upgrade. Changing this parameter results in an outage. The change is applied during the next maintenance window unless ‘ApplyImmediately` is enabled.

    If the cluster that you’re modifying has one or more read replicas, all replicas must be running an engine version that’s the same or later than the version you specify.

    To list all of the available engine versions for Aurora MySQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine aurora-mysql –query “DBEngineVersions[].EngineVersion”`

    To list all of the available engine versions for Aurora PostgreSQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine aurora-postgresql –query “DBEngineVersions[].EngineVersion”`

    To list all of the available engine versions for RDS for MySQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine mysql –query “DBEngineVersions[].EngineVersion”`

    To list all of the available engine versions for RDS for PostgreSQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine postgres –query “DBEngineVersions[].EngineVersion”`

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :allow_major_version_upgrade (Boolean)

    Specifies whether major version upgrades are allowed.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Constraints:

    • You must allow major version upgrades when specifying a value for the ‘EngineVersion` parameter that is a different major version than the DB cluster’s current version.

    ^

  • :db_instance_parameter_group_name (String)

    The name of the DB parameter group to apply to all instances of the DB cluster.

    <note markdown=“1”> When you apply a parameter group using the ‘DBInstanceParameterGroupName` parameter, the DB cluster isn’t rebooted automatically. Also, parameter changes are applied immediately rather than during the next maintenance window.

    </note>
    

    Valid for Cluster Type: Aurora DB clusters only

    Default: The existing name setting

    Constraints:

    • The DB parameter group must be in the same DB parameter group family as this DB cluster.

    • The ‘DBInstanceParameterGroupName` parameter is valid in combination with the `AllowMajorVersionUpgrade` parameter for a major version upgrade only.

  • :domain (String)

    The Active Directory directory ID to move the DB cluster to. Specify ‘none` to remove the cluster from its current domain. The domain must be created prior to this operation.

    For more information, see [Kerberos Authentication] in the *Amazon Aurora User Guide*.

    Valid for Cluster Type: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/kerberos-authentication.html

  • :domain_iam_role_name (String)

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

    Valid for Cluster Type: Aurora DB clusters only

  • :scaling_configuration (Types::ScalingConfiguration)

    The scaling properties of the DB cluster. You can only modify scaling properties for DB clusters in ‘serverless` DB engine mode.

    Valid for Cluster Type: Aurora DB clusters only

  • :deletion_protection (Boolean)

    Specifies whether the DB cluster has deletion protection enabled. The database can’t be deleted when deletion protection is enabled. By default, deletion protection isn’t enabled.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :enable_http_endpoint (Boolean)

    Specifies whether to enable the HTTP endpoint for an Aurora Serverless v1 DB cluster. By default, the HTTP endpoint isn’t enabled.

    When enabled, the HTTP endpoint provides a connectionless web service API (RDS Data API) for running SQL queries on the Aurora Serverless v1 DB cluster. You can also query your database from inside the RDS console with the RDS query editor.

    For more information, see [Using RDS Data API] in the *Amazon Aurora User Guide*.

    <note markdown=“1”> This parameter applies only to Aurora Serverless v1 DB clusters. To enable or disable the HTTP endpoint for an Aurora Serverless v2 or provisioned DB cluster, use the ‘EnableHttpEndpoint` and `DisableHttpEndpoint` operations.

    </note>
    

    Valid for Cluster Type: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html

  • :copy_tags_to_snapshot (Boolean)

    Specifies whether to copy all tags from the DB cluster to snapshots of the DB cluster. The default is not to copy them.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :enable_global_write_forwarding (Boolean)

    Specifies whether to enable this DB cluster to forward write operations to the primary cluster of a global cluster (Aurora global database). By default, write operations are not allowed on Aurora DB clusters that are secondary clusters in an Aurora global database.

    You can set this value only on Aurora DB clusters that are members of an Aurora global database. With this parameter enabled, a secondary cluster can forward writes to the current primary cluster, and the resulting changes are replicated back to this cluster. For the primary DB cluster of an Aurora global database, this value is used immediately if the primary is demoted by a global cluster API operation, but it does nothing until then.

    Valid for Cluster Type: Aurora DB clusters only

  • :db_cluster_instance_class (String)

    The compute and memory capacity of each DB instance in the Multi-AZ DB cluster, for example ‘db.m6gd.xlarge`. 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*.

    Valid for Cluster Type: Multi-AZ DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html

  • :allocated_storage (Integer)

    The amount of storage in gibibytes (GiB) to allocate to each DB instance in the Multi-AZ DB cluster.

    Valid for Cluster Type: Multi-AZ DB clusters only

  • :storage_type (String)

    The storage type to associate with the DB cluster.

    For information on storage types for Aurora DB clusters, see [Storage configurations for Amazon Aurora DB clusters]. For information on storage types for Multi-AZ DB clusters, see [Settings for creating Multi-AZ DB clusters].

    When specified for a Multi-AZ DB cluster, a value for the ‘Iops` parameter is required.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Valid Values:

    • Aurora DB clusters - ‘aurora | aurora-iopt1`

    • Multi-AZ DB clusters - ‘io1 | io2 | gp3`

    Default:

    • Aurora DB clusters - ‘aurora`

    • Multi-AZ DB clusters - ‘io1`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Overview.StorageReliability.html#aurora-storage-type [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/create-multi-az-db-cluster.html#create-multi-az-db-cluster-settings

  • :iops (Integer)

    The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster.

    For information about valid IOPS values, see [Amazon RDS Provisioned IOPS storage] in the *Amazon RDS User Guide*.

    Valid for Cluster Type: Multi-AZ DB clusters only

    Constraints:

    • Must be a multiple between .5 and 50 of the storage amount for the DB cluster.

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS

  • :auto_minor_version_upgrade (Boolean)

    Specifies whether minor engine upgrades are applied automatically to the DB cluster during the maintenance window. By default, minor engine upgrades are applied automatically.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :monitoring_interval (Integer)

    The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. To turn off collecting Enhanced Monitoring metrics, specify ‘0`.

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

    Valid for Cluster Type: Multi-AZ DB clusters only

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

    Default: ‘0`

  • :monitoring_role_arn (String)

    The Amazon Resource Name (ARN) for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs. An example is ‘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.

    Valid for Cluster Type: Multi-AZ DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html#USER_Monitoring.OS.IAMRole

  • :database_insights_mode (String)

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

    If you change the value from ‘standard` to `advanced`, you must set the `PerformanceInsightsEnabled` parameter to `true` and the `PerformanceInsightsRetentionPeriod` parameter to 465.

    If you change the value from ‘advanced` to `standard`, you must set the `PerformanceInsightsEnabled` parameter to `false`.

    Valid for Cluster Type: Aurora DB clusters only

  • :enable_performance_insights (Boolean)

    Specifies whether to turn on Performance Insights for the DB cluster.

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

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html

  • :performance_insights_kms_key_id (String)

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

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

    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.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :performance_insights_retention_period (Integer)

    The number of days to retain Performance Insights data.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    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 issues an error.

  • :serverless_v2_scaling_configuration (Types::ServerlessV2ScalingConfiguration)

    Contains the scaling configuration of an Aurora Serverless v2 DB cluster.

    For more information, see [Using Amazon Aurora Serverless v2] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.html

  • :network_type (String)

    The network type of the DB cluster.

    The network type is determined by the ‘DBSubnetGroup` specified for the DB cluster. 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 Aurora User Guide.*

    Valid for Cluster Type: Aurora DB clusters only

    Valid Values: ‘IPV4 | DUAL`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :manage_master_user_password (Boolean)

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

    If the DB cluster 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 cluster 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, 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* and

    Password management with Amazon Web Services Secrets Manager][2

    in

    the *Amazon Aurora User Guide.*

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html

  • :rotate_master_user_password (Boolean)

    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 cluster. 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* and

    Password management with Amazon Web Services Secrets Manager][2

    in

    the *Amazon Aurora User Guide.*

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

    Constraints:

    • You must apply the change immediately when rotating the master user password.

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html

  • :master_user_secret_kms_key_id (String)

    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 cluster doesn’t manage the master user password in Amazon Web Services Secrets Manager.

      If the DB cluster already manages the master user password in Amazon Web Services Secrets Manager, you can’t change the KMS key that is 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.

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

  • :engine_mode (String)

    The DB engine mode of the DB cluster, either ‘provisioned` or `serverless`.

    <note markdown=“1”> The DB engine mode can be modified only from ‘serverless` to `provisioned`.

    </note>
    

    For more information, see [ CreateDBCluster].

    Valid for Cluster Type: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html

  • :allow_engine_mode_change (Boolean)

    Specifies whether engine mode changes from ‘serverless` to `provisioned` are allowed.

    Valid for Cluster Type: Aurora Serverless v1 DB clusters only

    Constraints:

    • You must allow engine mode changes when specifying a different value for the ‘EngineMode` parameter from the DB cluster’s current engine mode.

    ^

  • :enable_local_write_forwarding (Boolean)

    Specifies whether read replicas can forward write operations to the writer DB instance in the DB cluster. By default, write operations aren’t allowed on reader DB instances.

    Valid for: Aurora DB clusters only

  • :aws_backup_recovery_point_arn (String)

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

  • :enable_limitless_database (Boolean)

    Specifies whether to enable Aurora Limitless Database. You must enable Aurora Limitless Database to create a DB shard group.

    Valid for: Aurora DB clusters only

    <note markdown=“1”> This setting is no longer used. Instead use the ‘ClusterScalabilityType` setting when you create your Aurora Limitless Database DB cluster.

    </note>
    
  • :ca_certificate_identifier (String)

    The CA certificate identifier to use for the DB cluster’s server certificate.

    For more information, see [Using SSL/TLS to encrypt a connection to a DB instance] in the *Amazon RDS User Guide*.

    Valid for Cluster Type: Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html

Returns:

See Also:



19818
19819
19820
19821
# File 'lib/aws-sdk-rds/client.rb', line 19818

def modify_db_cluster(params = {}, options = {})
  req = build_request(:modify_db_cluster, params)
  req.send_request(options)
end

#modify_db_cluster_endpoint(params = {}) ⇒ Types::DBClusterEndpoint

Modifies the properties of an endpoint in an Amazon Aurora DB cluster.

<note markdown=“1”> This operation only applies to Aurora DB clusters.

</note>

Examples:

Example: To modify a custom DB cluster endpoint


# The following example modifies the specified custom DB cluster endpoint.

resp = client.modify_db_cluster_endpoint({
  db_cluster_endpoint_identifier: "mycustomendpoint", 
  static_members: [
    "dbinstance1", 
    "dbinstance2", 
    "dbinstance3", 
  ], 
})

resp.to_h outputs the following:
{
  custom_endpoint_type: "READER", 
  db_cluster_endpoint_arn: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:mycustomendpoint", 
  db_cluster_endpoint_identifier: "mycustomendpoint", 
  db_cluster_endpoint_resource_identifier: "cluster-endpoint-ANPAJ4AE5446DAEXAMPLE", 
  db_cluster_identifier: "mydbcluster", 
  endpoint: "mycustomendpoint.cluster-custom-cnpexample.us-east-1.rds.amazonaws.com", 
  endpoint_type: "CUSTOM", 
  excluded_members: [
  ], 
  static_members: [
    "dbinstance1", 
    "dbinstance2", 
    "dbinstance3", 
  ], 
  status: "modifying", 
}

Request syntax with placeholder values


resp = client.modify_db_cluster_endpoint({
  db_cluster_endpoint_identifier: "String", # required
  endpoint_type: "String",
  static_members: ["String"],
  excluded_members: ["String"],
})

Response structure


resp.db_cluster_endpoint_identifier #=> String
resp.db_cluster_identifier #=> String
resp.db_cluster_endpoint_resource_identifier #=> String
resp.endpoint #=> String
resp.status #=> String
resp.endpoint_type #=> String
resp.custom_endpoint_type #=> String
resp.static_members #=> Array
resp.static_members[0] #=> String
resp.excluded_members #=> Array
resp.excluded_members[0] #=> String
resp.db_cluster_endpoint_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_endpoint_identifier (required, String)

    The identifier of the endpoint to modify. This parameter is stored as a lowercase string.

  • :endpoint_type (String)

    The type of the endpoint. One of: ‘READER`, `WRITER`, `ANY`.

  • :static_members (Array<String>)

    List of DB instance identifiers that are part of the custom endpoint group.

  • :excluded_members (Array<String>)

    List of DB instance identifiers that aren’t part of the custom endpoint group. All other eligible instances are reachable through the custom endpoint. Only relevant if the list of static members is empty.

Returns:

See Also:



19919
19920
19921
19922
# File 'lib/aws-sdk-rds/client.rb', line 19919

def modify_db_cluster_endpoint(params = {}, options = {})
  req = build_request(:modify_db_cluster_endpoint, params)
  req.send_request(options)
end

#modify_db_cluster_parameter_group(params = {}) ⇒ Types::DBClusterParameterGroupNameMessage

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.

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 operation 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` operation to verify that your DB cluster parameter group has been created or modified.

If the modified DB cluster parameter group is used by an Aurora

Serverless v1 cluster, Aurora applies the update immediately. The cluster restart might interrupt your workload. In that case, your application must reopen any connections and retry any transactions that were active when the parameter changes took effect.

For more information on Amazon Aurora DB clusters, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: console.aws.amazon.com/rds/ [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To modify parameters in a DB cluster parameter group


# The following example modifies the values of parameters in a DB cluster parameter group.

resp = client.modify_db_cluster_parameter_group({
  db_cluster_parameter_group_name: "mydbclusterpg", 
  parameters: [
    {
      apply_method: "immediate", 
      parameter_name: "server_audit_logging", 
      parameter_value: "1", 
    }, 
    {
      apply_method: "immediate", 
      parameter_name: "server_audit_logs_upload", 
      parameter_value: "1", 
    }, 
  ], 
})

resp.to_h outputs the following:
{
  db_cluster_parameter_group_name: "mydbclusterpg", 
}

Request syntax with placeholder values


resp = client.modify_db_cluster_parameter_group({
  db_cluster_parameter_group_name: "String", # required
  parameters: [ # required
    {
      parameter_name: "String",
      parameter_value: "String",
      description: "String",
      source: "String",
      apply_type: "String",
      data_type: "String",
      allowed_values: "String",
      is_modifiable: false,
      minimum_engine_version: "String",
      apply_method: "immediate", # accepts immediate, pending-reboot
      supported_engine_modes: ["String"],
    },
  ],
})

Response structure


resp.db_cluster_parameter_group_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_parameter_group_name (required, String)

    The name of the DB cluster parameter group to modify.

  • :parameters (required, Array<Types::Parameter>)

    A list of parameters in the DB cluster parameter group to modify.

    Valid Values (for the application method): ‘immediate | pending-reboot`

    <note markdown=“1”> You can use the ‘immediate` value with dynamic parameters only. You can use the `pending-reboot` value for both dynamic and static parameters.

    When the application method is `immediate`, changes to dynamic
    

    parameters are applied immediately to the DB clusters associated with the parameter group. When the application method is ‘pending-reboot`, changes to dynamic and static parameters are applied after a reboot without failover to the DB clusters associated with the parameter group.

    </note>
    

Returns:

See Also:



20040
20041
20042
20043
# File 'lib/aws-sdk-rds/client.rb', line 20040

def modify_db_cluster_parameter_group(params = {}, options = {})
  req = build_request(:modify_db_cluster_parameter_group, params)
  req.send_request(options)
end

#modify_db_cluster_snapshot_attribute(params = {}) ⇒ Types::ModifyDBClusterSnapshotAttributeResult

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 Amazon Web Services accounts, specify ‘restore` as the `AttributeName` and use the `ValuesToAdd` parameter to add a list of IDs of the Amazon Web Services 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 Amazon Web Services accounts.

<note markdown=“1”> Don’t add the ‘all` value for any manual DB cluster snapshots that contain private information that you don’t want available to all Amazon Web Services accounts.

</note>

If a manual DB cluster snapshot is encrypted, it can be shared, but only by specifying a list of authorized Amazon Web Services account IDs for the ‘ValuesToAdd` parameter. You can’t use ‘all` as a value for that parameter in this case.

To view which Amazon Web Services accounts have access to copy or restore a manual DB cluster snapshot, or whether a manual DB cluster snapshot is public or private, use the DescribeDBClusterSnapshotAttributes API operation. The accounts are returned as values for the ‘restore` attribute.

Examples:

Example: To modify a DB cluster snapshot attribute


# The following example makes changes to the specified DB cluster snapshot attribute.

resp = client.modify_db_cluster_snapshot_attribute({
  attribute_name: "restore", 
  db_cluster_snapshot_identifier: "myclustersnapshot", 
  values_to_add: [
    "123456789012", 
  ], 
})

resp.to_h outputs the following:
{
  db_cluster_snapshot_attributes_result: {
    db_cluster_snapshot_attributes: [
      {
        attribute_name: "restore", 
        attribute_values: [
          "123456789012", 
        ], 
      }, 
    ], 
    db_cluster_snapshot_identifier: "myclustersnapshot", 
  }, 
}

Request syntax with placeholder values


resp = client.modify_db_cluster_snapshot_attribute({
  db_cluster_snapshot_identifier: "String", # required
  attribute_name: "String", # required
  values_to_add: ["String"],
  values_to_remove: ["String"],
})

Response structure


resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_identifier #=> String
resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes #=> Array
resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_name #=> String
resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_values #=> Array
resp.db_cluster_snapshot_attributes_result.db_cluster_snapshot_attributes[0].attribute_values[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_snapshot_identifier (required, String)

    The identifier for the DB cluster snapshot to modify the attributes for.

  • :attribute_name (required, String)

    The name of the DB cluster snapshot attribute to modify.

    To manage authorization for other Amazon Web Services accounts to copy or restore a manual DB cluster snapshot, set this value to ‘restore`.

    <note markdown=“1”> To view the list of attributes available to modify, use the DescribeDBClusterSnapshotAttributes API operation.

    </note>
    
  • :values_to_add (Array<String>)

    A list of DB cluster snapshot attributes to add to the attribute specified by ‘AttributeName`.

    To authorize other Amazon Web Services accounts to copy or restore a manual DB cluster snapshot, set this list to include one or more Amazon Web Services account IDs, or ‘all` to make the manual DB cluster snapshot restorable by any Amazon Web Services account. Do not add the `all` value for any manual DB cluster snapshots that contain private information that you don’t want available to all Amazon Web Services accounts.

  • :values_to_remove (Array<String>)

    A list of DB cluster snapshot attributes to remove from the attribute specified by ‘AttributeName`.

    To remove authorization for other Amazon Web Services accounts to copy or restore a manual DB cluster snapshot, set this list to include one or more Amazon Web Services account identifiers, or ‘all` to remove authorization for any Amazon Web Services account to copy or restore the DB cluster snapshot. If you specify `all`, an Amazon Web Services account whose account ID is explicitly added to the `restore` attribute can still copy or restore a manual DB cluster snapshot.

Returns:

See Also:



20165
20166
20167
20168
# File 'lib/aws-sdk-rds/client.rb', line 20165

def modify_db_cluster_snapshot_attribute(params = {}, options = {})
  req = build_request(:modify_db_cluster_snapshot_attribute, params)
  req.send_request(options)
end

#modify_db_instance(params = {}) ⇒ Types::ModifyDBInstanceResult

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

Examples:

Example: To modify a DB instance


# The following example associates an option group and a parameter group with a compatible Microsoft SQL Server DB
# instance. The ApplyImmediately parameter causes the option and parameter groups to be associated immediately, instead of
# waiting until the next maintenance window.

resp = client.modify_db_instance({
  apply_immediately: true, 
  db_instance_identifier: "database-2", 
  db_parameter_group_name: "test-sqlserver-se-2017", 
  option_group_name: "test-se-2017", 
})

resp.to_h outputs the following:
{
  db_instance: {
    associated_roles: [
    ], 
    auto_minor_version_upgrade: false, 
    availability_zone: "us-west-2d", 
    character_set_name: "SQL_Latin1_General_CP1_CI_AS", 
    db_instance_class: "db.r4.large", 
    db_instance_identifier: "database-2", 
    db_instance_status: "available", 
    db_parameter_groups: [
      {
        db_parameter_group_name: "test-sqlserver-se-2017", 
        parameter_apply_status: "applying", 
      }, 
    ], 
    deletion_protection: false, 
    engine: "sqlserver-se", 
    engine_version: "14.00.3281.6.v1", 
    license_model: "license-included", 
    max_allocated_storage: 1000, 
    multi_az: true, 
    option_group_memberships: [
      {
        option_group_name: "test-se-2017", 
        status: "pending-apply", 
      }, 
    ], 
    publicly_accessible: true, 
    read_replica_db_instance_identifiers: [
    ], 
    secondary_availability_zone: "us-west-2c", 
    storage_type: "gp2", 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.modify_db_instance({
  db_instance_identifier: "String", # required
  allocated_storage: 1,
  db_instance_class: "String",
  db_subnet_group_name: "String",
  db_security_groups: ["String"],
  vpc_security_group_ids: ["String"],
  apply_immediately: false,
  master_user_password: "String",
  db_parameter_group_name: "String",
  backup_retention_period: 1,
  preferred_backup_window: "String",
  preferred_maintenance_window: "String",
  multi_az: false,
  engine_version: "String",
  allow_major_version_upgrade: false,
  auto_minor_version_upgrade: false,
  license_model: "String",
  iops: 1,
  option_group_name: "String",
  new_db_instance_identifier: "String",
  storage_type: "String",
  tde_credential_arn: "String",
  tde_credential_password: "String",
  ca_certificate_identifier: "String",
  domain: "String",
  domain_fqdn: "String",
  domain_ou: "String",
  domain_auth_secret_arn: "String",
  domain_dns_ips: ["String"],
  copy_tags_to_snapshot: false,
  monitoring_interval: 1,
  db_port_number: 1,
  publicly_accessible: false,
  monitoring_role_arn: "String",
  domain_iam_role_name: "String",
  disable_domain: false,
  promotion_tier: 1,
  enable_iam_database_authentication: false,
  database_insights_mode: "standard", # accepts standard, advanced
  enable_performance_insights: false,
  performance_insights_kms_key_id: "String",
  performance_insights_retention_period: 1,
  cloudwatch_logs_export_configuration: {
    enable_log_types: ["String"],
    disable_log_types: ["String"],
  },
  processor_features: [
    {
      name: "String",
      value: "String",
    },
  ],
  use_default_processor_features: false,
  deletion_protection: false,
  max_allocated_storage: 1,
  certificate_rotation_restart: false,
  replica_mode: "open-read-only", # accepts open-read-only, mounted
  enable_customer_owned_ip: false,
  aws_backup_recovery_point_arn: "AwsBackupRecoveryPointArn",
  automation_mode: "full", # accepts full, all-paused
  resume_full_automation_mode_minutes: 1,
  network_type: "String",
  storage_throughput: 1,
  manage_master_user_password: false,
  rotate_master_user_password: false,
  master_user_secret_kms_key_id: "String",
  engine: "String",
  dedicated_log_volume: false,
  multi_tenant: false,
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    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.

    ^

  • :allocated_storage (Integer)

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

    ^

  • :db_instance_class (String)

    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.

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.DBInstanceClass.html [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-reqs-limits.html#custom-reqs-limits.instances [4]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-reqs-limits-MS.html#custom-reqs-limits.instancesMS

  • :db_subnet_group_name (String)

    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`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html#USER_VPC.Non-VPC2VPC

  • :db_security_groups (Array<String>)

    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.

    ^

  • :vpc_security_group_ids (Array<String>)

    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.

    ^

  • :apply_immediately (Boolean)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html

  • :master_user_password (String)

    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 markdown=“1”> 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.

    </note>
    

    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

    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 ”&amp;“ (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.

  • :db_parameter_group_name (String)

    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.

    ^

  • :backup_retention_period (Integer)

    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 markdown=“1”> 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.

    </note>
    

    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.

  • :preferred_backup_window (String)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html#USER_WorkingWithAutomatedBackups.BackupWindow

  • :preferred_maintenance_window (String)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Maintenance.html#Concepts.DBMaintenance

  • :multi_az (Boolean)

    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.

  • :engine_version (String)

    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.

    ^

  • :allow_major_version_upgrade (Boolean)

    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.

    ^

  • :auto_minor_version_upgrade (Boolean)

    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.

  • :license_model (String)

    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`

    • RDS for MySQL - ‘general-public-license`

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

    • RDS for PostgreSQL - ‘postgresql-license`

  • :iops (Integer)

    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

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

  • :option_group_name (String)

    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.

  • :new_db_instance_identifier (String)

    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`

  • :storage_type (String)

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

  • :tde_credential_arn (String)

    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 (String)

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

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

  • :ca_certificate_identifier (String)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL.html

  • :domain (String)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html

  • :domain_fqdn (String)

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

    Constraints:

    • Can’t be longer than 64 characters.

    ^

    Example: ‘mymanagedADtest.mymanagedAD.mydomain`

  • :domain_ou (String)

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

    Constraints:

    • Must be in the distinguished name format.

    • Can’t be longer than 64 characters.

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

  • :domain_auth_secret_arn (String)

    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 (Array<String>)

    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`

  • :copy_tags_to_snapshot (Boolean)

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

  • :monitoring_interval (Integer)

    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`

  • :db_port_number (Integer)

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

    ^

  • :publicly_accessible (Boolean)

    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.

  • :monitoring_role_arn (String)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html#USER_Monitoring.OS.IAMRole

  • :domain_iam_role_name (String)

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

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

  • :disable_domain (Boolean)

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

  • :promotion_tier (Integer)

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

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

    Default: ‘1`

    Valid Values: ‘0 - 15`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.AuroraHighAvailability.html#Aurora.Managing.FaultTolerance

  • :enable_iam_database_authentication (Boolean)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html

  • :database_insights_mode (String)

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

    This setting only applies to Amazon Aurora DB instances.

    <note markdown=“1”> Currently, this value is inherited from the DB cluster and can’t be changed.

    </note>
    
  • :enable_performance_insights (Boolean)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html

  • :performance_insights_kms_key_id (String)

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

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

    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 (Integer)

    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.

  • :cloudwatch_logs_export_configuration (Types::CloudwatchLogsExportConfiguration)

    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`

    • Aurora PostgreSQL - ‘postgresql`

    • RDS for MySQL - ‘error | general | slowquery`

    • RDS for PostgreSQL - ‘postgresql | upgrade`

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :processor_features (Array<Types::ProcessorFeature>)

    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.

  • :use_default_processor_features (Boolean)

    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.

  • :deletion_protection (Boolean)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html

  • :max_allocated_storage (Integer)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.Autoscaling

  • :certificate_rotation_restart (Boolean)

    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.

    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:

    • For more information about rotating your SSL/TLS certificate for RDS DB engines, see [ Rotating Your SSL/TLS Certificate.] in the *Amazon RDS User Guide.*

    • For more information about rotating your SSL/TLS certificate for Aurora DB engines, see [ Rotating Your SSL/TLS Certificate] in the *Amazon Aurora User Guide*.

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL-certificate-rotation.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL-certificate-rotation.html

  • :replica_mode (String)

    A value that sets the open mode of a replica database to either mounted or read-only.

    <note markdown=“1”> Currently, this parameter is only supported for Oracle DB instances.

    </note>
    

    Mounted DB replicas are included in Oracle 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. For more information, see [Working with Oracle Read Replicas for Amazon RDS] in the *Amazon RDS User Guide*.

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-replicas.html

  • :enable_customer_owned_ip (Boolean)

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

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html [2]: docs.aws.amazon.com/outposts/latest/userguide/routing.html#ip-addressing

  • :aws_backup_recovery_point_arn (String)

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

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

  • :automation_mode (String)

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

  • :resume_full_automation_mode_minutes (Integer)

    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.

  • :network_type (String)

    The network type of the DB instance.

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

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

    Valid Values: ‘IPV4 | DUAL`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :storage_throughput (Integer)

    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.

  • :manage_master_user_password (Boolean)

    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.

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html

  • :rotate_master_user_password (Boolean)

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

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html

  • :master_user_secret_kms_key_id (String)

    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.

  • :engine (String)

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

  • :dedicated_log_volume (Boolean)

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

  • :multi_tenant (Boolean)

    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.

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

Returns:

See Also:



21590
21591
21592
21593
# File 'lib/aws-sdk-rds/client.rb', line 21590

def modify_db_instance(params = {}, options = {})
  req = build_request(:modify_db_instance, params)
  req.send_request(options)
end

#modify_db_parameter_group(params = {}) ⇒ Types::DBParameterGroupNameMessage

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.

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

[1]: console.aws.amazon.com/rds/

Examples:

Example: To modify a DB parameter group


# The following example changes the value of the clr enabled parameter in a DB parameter group. The value of the
# ApplyMethod parameter causes the DB parameter group to be modified immediately, instead of waiting until the next
# maintenance window.

resp = client.modify_db_parameter_group({
  db_parameter_group_name: "test-sqlserver-se-2017", 
  parameters: [
    {
      apply_method: "immediate", 
      parameter_name: "clr enabled", 
      parameter_value: "1", 
    }, 
  ], 
})

resp.to_h outputs the following:
{
  db_parameter_group_name: "test-sqlserver-se-2017", 
}

Request syntax with placeholder values


resp = client.modify_db_parameter_group({
  db_parameter_group_name: "String", # required
  parameters: [ # required
    {
      parameter_name: "String",
      parameter_value: "String",
      description: "String",
      source: "String",
      apply_type: "String",
      data_type: "String",
      allowed_values: "String",
      is_modifiable: false,
      minimum_engine_version: "String",
      apply_method: "immediate", # accepts immediate, pending-reboot
      supported_engine_modes: ["String"],
    },
  ],
})

Response structure


resp.db_parameter_group_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_parameter_group_name (required, String)

    The name of the DB parameter group.

    Constraints:

    • If supplied, must match the name of an existing ‘DBParameterGroup`.

    ^

  • :parameters (required, Array<Types::Parameter>)

    An array of parameter names, values, and the application methods for the parameter update. At least one parameter name, value, and application method must be supplied; later arguments are optional. A maximum of 20 parameters can be modified in a single request.

    Valid Values (for the application method): ‘immediate | pending-reboot`

    You can use the ‘immediate` value with dynamic parameters only. You can use the `pending-reboot` value for both dynamic and static parameters.

    When the application method is ‘immediate`, changes to dynamic parameters are applied immediately to the DB instances associated with the parameter group.

    When the application method is ‘pending-reboot`, changes to dynamic and static parameters are applied after a reboot without failover to the DB instances associated with the parameter group.

    <note markdown=“1”> You can’t use ‘pending-reboot` with dynamic parameters on RDS for SQL Server DB instances. Use `immediate`.

    </note>
    

    For more information on modifying DB parameters, see [Working with DB parameter groups] in the *Amazon RDS User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html

Returns:

See Also:



21714
21715
21716
21717
# File 'lib/aws-sdk-rds/client.rb', line 21714

def modify_db_parameter_group(params = {}, options = {})
  req = build_request(:modify_db_parameter_group, params)
  req.send_request(options)
end

#modify_db_proxy(params = {}) ⇒ Types::ModifyDBProxyResponse

Changes the settings for an existing DB proxy.

Examples:

Request syntax with placeholder values


resp = client.modify_db_proxy({
  db_proxy_name: "String", # required
  new_db_proxy_name: "String",
  auth: [
    {
      description: "String",
      user_name: "String",
      auth_scheme: "SECRETS", # accepts SECRETS
      secret_arn: "String",
      iam_auth: "DISABLED", # accepts DISABLED, REQUIRED, ENABLED
      client_password_auth_type: "MYSQL_NATIVE_PASSWORD", # accepts MYSQL_NATIVE_PASSWORD, MYSQL_CACHING_SHA2_PASSWORD, POSTGRES_SCRAM_SHA_256, POSTGRES_MD5, SQL_SERVER_AUTHENTICATION
    },
  ],
  require_tls: false,
  idle_client_timeout: 1,
  debug_logging: false,
  role_arn: "String",
  security_groups: ["String"],
})

Response structure


resp.db_proxy.db_proxy_name #=> String
resp.db_proxy.db_proxy_arn #=> String
resp.db_proxy.status #=> String, one of "available", "modifying", "incompatible-network", "insufficient-resource-limits", "creating", "deleting", "suspended", "suspending", "reactivating"
resp.db_proxy.engine_family #=> String
resp.db_proxy.vpc_id #=> String
resp.db_proxy.vpc_security_group_ids #=> Array
resp.db_proxy.vpc_security_group_ids[0] #=> String
resp.db_proxy.vpc_subnet_ids #=> Array
resp.db_proxy.vpc_subnet_ids[0] #=> String
resp.db_proxy.auth #=> Array
resp.db_proxy.auth[0].description #=> String
resp.db_proxy.auth[0].user_name #=> String
resp.db_proxy.auth[0].auth_scheme #=> String, one of "SECRETS"
resp.db_proxy.auth[0].secret_arn #=> String
resp.db_proxy.auth[0].iam_auth #=> String, one of "DISABLED", "REQUIRED", "ENABLED"
resp.db_proxy.auth[0].client_password_auth_type #=> String, one of "MYSQL_NATIVE_PASSWORD", "MYSQL_CACHING_SHA2_PASSWORD", "POSTGRES_SCRAM_SHA_256", "POSTGRES_MD5", "SQL_SERVER_AUTHENTICATION"
resp.db_proxy.role_arn #=> String
resp.db_proxy.endpoint #=> String
resp.db_proxy.require_tls #=> Boolean
resp.db_proxy.idle_client_timeout #=> Integer
resp.db_proxy.debug_logging #=> Boolean
resp.db_proxy.created_date #=> Time
resp.db_proxy.updated_date #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_name (required, String)

    The identifier for the ‘DBProxy` to modify.

  • :new_db_proxy_name (String)

    The new identifier for the ‘DBProxy`. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it can’t end with a hyphen or contain two consecutive hyphens.

  • :auth (Array<Types::UserAuthConfig>)

    The new authentication settings for the ‘DBProxy`.

  • :require_tls (Boolean)

    Whether Transport Layer Security (TLS) encryption is required for connections to the proxy. By enabling this setting, you can enforce encrypted TLS connections to the proxy, even if the associated database doesn’t use TLS.

  • :idle_client_timeout (Integer)

    The number of seconds that a connection to the proxy can be inactive before the proxy disconnects it. You can set this value higher or lower than the connection timeout limit for the associated database.

  • :debug_logging (Boolean)

    Whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.

  • :role_arn (String)

    The Amazon Resource Name (ARN) of the IAM role that the proxy uses to access secrets in Amazon Web Services Secrets Manager.

  • :security_groups (Array<String>)

    The new list of security groups for the ‘DBProxy`.

Returns:

See Also:



21815
21816
21817
21818
# File 'lib/aws-sdk-rds/client.rb', line 21815

def modify_db_proxy(params = {}, options = {})
  req = build_request(:modify_db_proxy, params)
  req.send_request(options)
end

#modify_db_proxy_endpoint(params = {}) ⇒ Types::ModifyDBProxyEndpointResponse

Changes the settings for an existing DB proxy endpoint.

Examples:

Request syntax with placeholder values


resp = client.modify_db_proxy_endpoint({
  db_proxy_endpoint_name: "DBProxyEndpointName", # required
  new_db_proxy_endpoint_name: "DBProxyEndpointName",
  vpc_security_group_ids: ["String"],
})

Response structure


resp.db_proxy_endpoint.db_proxy_endpoint_name #=> String
resp.db_proxy_endpoint.db_proxy_endpoint_arn #=> String
resp.db_proxy_endpoint.db_proxy_name #=> String
resp.db_proxy_endpoint.status #=> String, one of "available", "modifying", "incompatible-network", "insufficient-resource-limits", "creating", "deleting"
resp.db_proxy_endpoint.vpc_id #=> String
resp.db_proxy_endpoint.vpc_security_group_ids #=> Array
resp.db_proxy_endpoint.vpc_security_group_ids[0] #=> String
resp.db_proxy_endpoint.vpc_subnet_ids #=> Array
resp.db_proxy_endpoint.vpc_subnet_ids[0] #=> String
resp.db_proxy_endpoint.endpoint #=> String
resp.db_proxy_endpoint.created_date #=> Time
resp.db_proxy_endpoint.target_role #=> String, one of "READ_WRITE", "READ_ONLY"
resp.db_proxy_endpoint.is_default #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_endpoint_name (required, String)

    The name of the DB proxy sociated with the DB proxy endpoint that you want to modify.

  • :new_db_proxy_endpoint_name (String)

    The new identifier for the ‘DBProxyEndpoint`. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it can’t end with a hyphen or contain two consecutive hyphens.

  • :vpc_security_group_ids (Array<String>)

    The VPC security group IDs for the DB proxy endpoint. When the DB proxy endpoint uses a different VPC than the original proxy, you also specify a different set of security group IDs than for the original proxy.

Returns:

See Also:



21870
21871
21872
21873
# File 'lib/aws-sdk-rds/client.rb', line 21870

def modify_db_proxy_endpoint(params = {}, options = {})
  req = build_request(:modify_db_proxy_endpoint, params)
  req.send_request(options)
end

#modify_db_proxy_target_group(params = {}) ⇒ Types::ModifyDBProxyTargetGroupResponse

Modifies the properties of a ‘DBProxyTargetGroup`.

Examples:

Request syntax with placeholder values


resp = client.modify_db_proxy_target_group({
  target_group_name: "String", # required
  db_proxy_name: "String", # required
  connection_pool_config: {
    max_connections_percent: 1,
    max_idle_connections_percent: 1,
    connection_borrow_timeout: 1,
    session_pinning_filters: ["String"],
    init_query: "String",
  },
  new_name: "String",
})

Response structure


resp.db_proxy_target_group.db_proxy_name #=> String
resp.db_proxy_target_group.target_group_name #=> String
resp.db_proxy_target_group.target_group_arn #=> String
resp.db_proxy_target_group.is_default #=> Boolean
resp.db_proxy_target_group.status #=> String
resp.db_proxy_target_group.connection_pool_config.max_connections_percent #=> Integer
resp.db_proxy_target_group.connection_pool_config.max_idle_connections_percent #=> Integer
resp.db_proxy_target_group.connection_pool_config.connection_borrow_timeout #=> Integer
resp.db_proxy_target_group.connection_pool_config.session_pinning_filters #=> Array
resp.db_proxy_target_group.connection_pool_config.session_pinning_filters[0] #=> String
resp.db_proxy_target_group.connection_pool_config.init_query #=> String
resp.db_proxy_target_group.created_date #=> Time
resp.db_proxy_target_group.updated_date #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :target_group_name (required, String)

    The name of the target group to modify.

  • :db_proxy_name (required, String)

    The name of the proxy.

  • :connection_pool_config (Types::ConnectionPoolConfiguration)

    The settings that determine the size and behavior of the connection pool for the target group.

  • :new_name (String)

    The new name for the modified ‘DBProxyTarget`. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it can’t end with a hyphen or contain two consecutive hyphens.

Returns:

See Also:



21932
21933
21934
21935
# File 'lib/aws-sdk-rds/client.rb', line 21932

def modify_db_proxy_target_group(params = {}, options = {})
  req = build_request(:modify_db_proxy_target_group, params)
  req.send_request(options)
end

#modify_db_recommendation(params = {}) ⇒ Types::DBRecommendationMessage

Updates the recommendation status and recommended action status for the specified recommendation.

Examples:

Request syntax with placeholder values


resp = client.modify_db_recommendation({
  recommendation_id: "String", # required
  locale: "String",
  status: "String",
  recommended_action_updates: [
    {
      action_id: "String", # required
      status: "String", # required
    },
  ],
})

Response structure


resp.db_recommendation.recommendation_id #=> String
resp.db_recommendation.type_id #=> String
resp.db_recommendation.severity #=> String
resp.db_recommendation.resource_arn #=> String
resp.db_recommendation.status #=> String
resp.db_recommendation.created_time #=> Time
resp.db_recommendation.updated_time #=> Time
resp.db_recommendation.detection #=> String
resp.db_recommendation.recommendation #=> String
resp.db_recommendation.description #=> String
resp.db_recommendation.reason #=> String
resp.db_recommendation.recommended_actions #=> Array
resp.db_recommendation.recommended_actions[0].action_id #=> String
resp.db_recommendation.recommended_actions[0].title #=> String
resp.db_recommendation.recommended_actions[0].description #=> String
resp.db_recommendation.recommended_actions[0].operation #=> String
resp.db_recommendation.recommended_actions[0].parameters #=> Array
resp.db_recommendation.recommended_actions[0].parameters[0].key #=> String
resp.db_recommendation.recommended_actions[0].parameters[0].value #=> String
resp.db_recommendation.recommended_actions[0].apply_modes #=> Array
resp.db_recommendation.recommended_actions[0].apply_modes[0] #=> String
resp.db_recommendation.recommended_actions[0].status #=> String
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.start_time #=> Time
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.end_time #=> Time
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics #=> Array
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics[0].name #=> String
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics[0].references #=> Array
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics[0].references[0].name #=> String
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics[0].references[0].reference_details.scalar_reference_details.value #=> Float
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics[0].statistics_details #=> String
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.dimensions #=> Array
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.dimensions[0] #=> String
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.group #=> String
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.limit #=> Integer
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.metric #=> String
resp.db_recommendation.recommended_actions[0].issue_details.performance_issue_details.analysis #=> String
resp.db_recommendation.recommended_actions[0].context_attributes #=> Array
resp.db_recommendation.recommended_actions[0].context_attributes[0].key #=> String
resp.db_recommendation.recommended_actions[0].context_attributes[0].value #=> String
resp.db_recommendation.category #=> String
resp.db_recommendation.source #=> String
resp.db_recommendation.type_detection #=> String
resp.db_recommendation.type_recommendation #=> String
resp.db_recommendation.impact #=> String
resp.db_recommendation.additional_info #=> String
resp.db_recommendation.links #=> Array
resp.db_recommendation.links[0].text #=> String
resp.db_recommendation.links[0].url #=> String
resp.db_recommendation.issue_details.performance_issue_details.start_time #=> Time
resp.db_recommendation.issue_details.performance_issue_details.end_time #=> Time
resp.db_recommendation.issue_details.performance_issue_details.metrics #=> Array
resp.db_recommendation.issue_details.performance_issue_details.metrics[0].name #=> String
resp.db_recommendation.issue_details.performance_issue_details.metrics[0].references #=> Array
resp.db_recommendation.issue_details.performance_issue_details.metrics[0].references[0].name #=> String
resp.db_recommendation.issue_details.performance_issue_details.metrics[0].references[0].reference_details.scalar_reference_details.value #=> Float
resp.db_recommendation.issue_details.performance_issue_details.metrics[0].statistics_details #=> String
resp.db_recommendation.issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.dimensions #=> Array
resp.db_recommendation.issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.dimensions[0] #=> String
resp.db_recommendation.issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.group #=> String
resp.db_recommendation.issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.group_by.limit #=> Integer
resp.db_recommendation.issue_details.performance_issue_details.metrics[0].metric_query.performance_insights_metric_query.metric #=> String
resp.db_recommendation.issue_details.performance_issue_details.analysis #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :recommendation_id (required, String)

    The identifier of the recommendation to update.

  • :locale (String)

    The language of the modified recommendation.

  • :status (String)

    The recommendation status to update.

    Valid values:

    • active

    • dismissed

  • :recommended_action_updates (Array<Types::RecommendedActionUpdate>)

    The list of recommended action status to update. You can update multiple recommended actions at one time.

Returns:

See Also:



22046
22047
22048
22049
# File 'lib/aws-sdk-rds/client.rb', line 22046

def modify_db_recommendation(params = {}, options = {})
  req = build_request(:modify_db_recommendation, params)
  req.send_request(options)
end

#modify_db_shard_group(params = {}) ⇒ Types::DBShardGroup

Modifies the settings of an Aurora Limitless Database DB shard group. You can change one or more settings by specifying these parameters and the new values in the request.

Examples:

Request syntax with placeholder values


resp = client.modify_db_shard_group({
  db_shard_group_identifier: "DBShardGroupIdentifier", # required
  max_acu: 1.0,
  min_acu: 1.0,
  compute_redundancy: 1,
})

Response structure


resp.db_shard_group_resource_id #=> String
resp.db_shard_group_identifier #=> String
resp.db_cluster_identifier #=> String
resp.max_acu #=> Float
resp.min_acu #=> Float
resp.compute_redundancy #=> Integer
resp.status #=> String
resp.publicly_accessible #=> Boolean
resp.endpoint #=> String
resp.db_shard_group_arn #=> String
resp.tag_list #=> Array
resp.tag_list[0].key #=> String
resp.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_shard_group_identifier (required, String)

    The name of the DB shard group to modify.

  • :max_acu (Float)

    The maximum capacity of the DB shard group in Aurora capacity units (ACUs).

  • :min_acu (Float)

    The minimum capacity of the DB shard group in Aurora capacity units (ACUs).

  • :compute_redundancy (Integer)

    Specifies whether to create standby DB shard groups for the DB shard group. Valid values are the following:

    • 0 - Creates a DB shard group without a standby DB shard group. This is the default value.

    • 1 - Creates a DB shard group with a standby DB shard group in a different Availability Zone (AZ).

    • 2 - Creates a DB shard group with two standby DB shard groups in two different AZs.

Returns:

See Also:



22122
22123
22124
22125
# File 'lib/aws-sdk-rds/client.rb', line 22122

def modify_db_shard_group(params = {}, options = {})
  req = build_request(:modify_db_shard_group, params)
  req.send_request(options)
end

#modify_db_snapshot(params = {}) ⇒ Types::ModifyDBSnapshotResult

Updates a manual DB snapshot with a new engine version. The snapshot can be encrypted or unencrypted, but not shared or public.

Amazon RDS supports upgrading DB snapshots for MySQL, PostgreSQL, and Oracle. This operation doesn’t apply to RDS Custom or RDS for Db2.

Examples:

Example: To modify a DB snapshot


# The following example upgrades a PostgeSQL 10.6 snapshot named db5-snapshot-upg-test to PostgreSQL 11.7. The new DB
# engine version is shown after the snapshot has finished upgrading and its status is available.

resp = client.modify_db_snapshot({
  db_snapshot_identifier: "db5-snapshot-upg-test", 
  engine_version: "11.7", 
})

resp.to_h outputs the following:
{
  db_snapshot: {
    allocated_storage: 20, 
    availability_zone: "us-west-2a", 
    db_instance_identifier: "database-5", 
    db_snapshot_arn: "arn:aws:rds:us-west-2:123456789012:snapshot:db5-snapshot-upg-test", 
    db_snapshot_identifier: "db5-snapshot-upg-test", 
    dbi_resource_id: "db-GJMF75LM42IL6BTFRE4UZJ5YM4", 
    encrypted: false, 
    engine: "postgres", 
    engine_version: "10.6", 
    iam_database_authentication_enabled: false, 
    instance_create_time: Time.parse("2020-03-27T19:59:04.735Z"), 
    license_model: "postgresql-license", 
    master_username: "postgres", 
    option_group_name: "default:postgres-11", 
    percent_progress: 100, 
    port: 5432, 
    processor_features: [
    ], 
    snapshot_create_time: Time.parse("2020-03-27T20:49:17.092Z"), 
    snapshot_type: "manual", 
    status: "upgrading", 
    storage_type: "gp2", 
    vpc_id: "vpc-2ff27557", 
  }, 
}

Request syntax with placeholder values


resp = client.modify_db_snapshot({
  db_snapshot_identifier: "String", # required
  engine_version: "String",
  option_group_name: "String",
})

Response structure


resp.db_snapshot.db_snapshot_identifier #=> String
resp.db_snapshot.db_instance_identifier #=> String
resp.db_snapshot.snapshot_create_time #=> Time
resp.db_snapshot.engine #=> String
resp.db_snapshot.allocated_storage #=> Integer
resp.db_snapshot.status #=> String
resp.db_snapshot.port #=> Integer
resp.db_snapshot.availability_zone #=> String
resp.db_snapshot.vpc_id #=> String
resp.db_snapshot.instance_create_time #=> Time
resp.db_snapshot.master_username #=> String
resp.db_snapshot.engine_version #=> String
resp.db_snapshot.license_model #=> String
resp.db_snapshot.snapshot_type #=> String
resp.db_snapshot.iops #=> Integer
resp.db_snapshot.option_group_name #=> String
resp.db_snapshot.percent_progress #=> Integer
resp.db_snapshot.source_region #=> String
resp.db_snapshot.source_db_snapshot_identifier #=> String
resp.db_snapshot.storage_type #=> String
resp.db_snapshot.tde_credential_arn #=> String
resp.db_snapshot.encrypted #=> Boolean
resp.db_snapshot.kms_key_id #=> String
resp.db_snapshot.db_snapshot_arn #=> String
resp.db_snapshot.timezone #=> String
resp.db_snapshot.iam_database_authentication_enabled #=> Boolean
resp.db_snapshot.processor_features #=> Array
resp.db_snapshot.processor_features[0].name #=> String
resp.db_snapshot.processor_features[0].value #=> String
resp.db_snapshot.dbi_resource_id #=> String
resp.db_snapshot.tag_list #=> Array
resp.db_snapshot.tag_list[0].key #=> String
resp.db_snapshot.tag_list[0].value #=> String
resp.db_snapshot.original_snapshot_create_time #=> Time
resp.db_snapshot.snapshot_database_time #=> Time
resp.db_snapshot.snapshot_target #=> String
resp.db_snapshot.storage_throughput #=> Integer
resp.db_snapshot.db_system_id #=> String
resp.db_snapshot.dedicated_log_volume #=> Boolean
resp.db_snapshot.multi_tenant #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_snapshot_identifier (required, String)

    The identifier of the DB snapshot to modify.

  • :engine_version (String)

    The engine version to upgrade the DB snapshot to.

    The following are the database engines and engine versions that are available when you upgrade a DB snapshot.

    MySQL

    For the list of engine versions that are available for upgrading a DB snapshot, see [ Upgrading a MySQL DB snapshot engine version] in the *Amazon RDS User Guide.*

    Oracle

    • ‘19.0.0.0.ru-2022-01.rur-2022-01.r1` (supported for 12.2.0.1 DB snapshots)

    • ‘19.0.0.0.ru-2022-07.rur-2022-07.r1` (supported for 12.1.0.2 DB snapshots)

    • ‘12.1.0.2.v8` (supported for 12.1.0.1 DB snapshots)

    • ‘11.2.0.4.v12` (supported for 11.2.0.2 DB snapshots)

    • ‘11.2.0.4.v11` (supported for 11.2.0.3 DB snapshots)

    PostgreSQL

    For the list of engine versions that are available for upgrading a DB snapshot, see [ Upgrading a PostgreSQL DB snapshot engine version] in the *Amazon RDS User Guide.*

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mysql-upgrade-snapshot.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBSnapshot.PostgreSQL.html

  • :option_group_name (String)

    The option group to identify with the upgraded DB snapshot.

    You can specify this parameter when you upgrade an Oracle DB snapshot. The same option group considerations apply when upgrading a DB snapshot as when upgrading a DB instance. For more information, see

    Option group considerations][1

    in the *Amazon RDS User Guide.*

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Oracle.html#USER_UpgradeDBInstance.Oracle.OGPG.OG

Returns:

See Also:



22284
22285
22286
22287
# File 'lib/aws-sdk-rds/client.rb', line 22284

def modify_db_snapshot(params = {}, options = {})
  req = build_request(:modify_db_snapshot, params)
  req.send_request(options)
end

#modify_db_snapshot_attribute(params = {}) ⇒ Types::ModifyDBSnapshotAttributeResult

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 Amazon Web Services accounts, specify ‘restore` as the `AttributeName` and use the `ValuesToAdd` parameter to add a list of IDs of the Amazon Web Services 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 Amazon Web Services accounts.

<note markdown=“1”> Don’t add the ‘all` value for any manual DB snapshots that contain private information that you don’t want available to all Amazon Web Services accounts.

</note>

If the manual DB snapshot is encrypted, it can be shared, but only by specifying a list of authorized Amazon Web Services account IDs for the ‘ValuesToAdd` parameter. You can’t use ‘all` as a value for that parameter in this case.

To view which Amazon Web Services accounts have access to copy or restore a manual DB snapshot, or whether a manual DB snapshot public or private, use the DescribeDBSnapshotAttributes API operation. The accounts are returned as values for the ‘restore` attribute.

Examples:

Example: To allow two AWS accounts to restore a DB snapshot


# The following example grants permission to two AWS accounts, with the identifiers 111122223333 and 444455556666, to
# restore the DB snapshot named mydbsnapshot.

resp = client.modify_db_snapshot_attribute({
  attribute_name: "restore", 
  db_snapshot_identifier: "mydbsnapshot", 
  values_to_add: [
    "111122223333", 
    "444455556666", 
  ], 
})

resp.to_h outputs the following:
{
  db_snapshot_attributes_result: {
    db_snapshot_attributes: [
      {
        attribute_name: "restore", 
        attribute_values: [
          "111122223333", 
          "444455556666", 
        ], 
      }, 
    ], 
    db_snapshot_identifier: "mydbsnapshot", 
  }, 
}

Example: To prevent an AWS account from restoring a DB snapshot


# The following example removes permission from the AWS account with the identifier 444455556666 to restore the DB
# snapshot named mydbsnapshot.

resp = client.modify_db_snapshot_attribute({
  attribute_name: "restore", 
  db_snapshot_identifier: "mydbsnapshot", 
  values_to_remove: [
    "444455556666", 
  ], 
})

resp.to_h outputs the following:
{
  db_snapshot_attributes_result: {
    db_snapshot_attributes: [
      {
        attribute_name: "restore", 
        attribute_values: [
          "111122223333", 
        ], 
      }, 
    ], 
    db_snapshot_identifier: "mydbsnapshot", 
  }, 
}

Request syntax with placeholder values


resp = client.modify_db_snapshot_attribute({
  db_snapshot_identifier: "String", # required
  attribute_name: "String", # required
  values_to_add: ["String"],
  values_to_remove: ["String"],
})

Response structure


resp.db_snapshot_attributes_result.db_snapshot_identifier #=> String
resp.db_snapshot_attributes_result.db_snapshot_attributes #=> Array
resp.db_snapshot_attributes_result.db_snapshot_attributes[0].attribute_name #=> String
resp.db_snapshot_attributes_result.db_snapshot_attributes[0].attribute_values #=> Array
resp.db_snapshot_attributes_result.db_snapshot_attributes[0].attribute_values[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_snapshot_identifier (required, String)

    The identifier for the DB snapshot to modify the attributes for.

  • :attribute_name (required, String)

    The name of the DB snapshot attribute to modify.

    To manage authorization for other Amazon Web Services accounts to copy or restore a manual DB snapshot, set this value to ‘restore`.

    <note markdown=“1”> To view the list of attributes available to modify, use the DescribeDBSnapshotAttributes API operation.

    </note>
    
  • :values_to_add (Array<String>)

    A list of DB snapshot attributes to add to the attribute specified by ‘AttributeName`.

    To authorize other Amazon Web Services accounts to copy or restore a manual snapshot, set this list to include one or more Amazon Web Services account IDs, or ‘all` to make the manual DB snapshot restorable by any Amazon Web Services account. Do not add the `all` value for any manual DB snapshots that contain private information that you don’t want available to all Amazon Web Services accounts.

  • :values_to_remove (Array<String>)

    A list of DB snapshot attributes to remove from the attribute specified by ‘AttributeName`.

    To remove authorization for other Amazon Web Services accounts to copy or restore a manual snapshot, set this list to include one or more Amazon Web Services account identifiers, or ‘all` to remove authorization for any Amazon Web Services account to copy or restore the DB snapshot. If you specify `all`, an Amazon Web Services account whose account ID is explicitly added to the `restore` attribute can still copy or restore the manual DB snapshot.

Returns:

See Also:



22436
22437
22438
22439
# File 'lib/aws-sdk-rds/client.rb', line 22436

def modify_db_snapshot_attribute(params = {}, options = {})
  req = build_request(:modify_db_snapshot_attribute, params)
  req.send_request(options)
end

#modify_db_subnet_group(params = {}) ⇒ Types::ModifyDBSubnetGroupResult

Modifies an existing DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the Amazon Web Services Region.

Examples:

Example: To modify a DB subnet group


# The following example adds a subnet with the ID subnet-08e41f9e230222222 to the DB subnet group named mysubnetgroup. To
# keep the existing subnets in the subnet group, include their IDs as values in the --subnet-ids option. Make sure to have
# subnets with at least two different Availability Zones in the DB subnet group.

resp = client.modify_db_subnet_group({
  db_subnet_group_description: "", 
  db_subnet_group_name: "mysubnetgroup", 
  subnet_ids: [
    "subnet-0a1dc4e1a6f123456", 
    "subnet-070dd7ecb3aaaaaaa", 
    "subnet-00f5b198bc0abcdef", 
    "subnet-08e41f9e230222222", 
  ], 
})

resp.to_h outputs the following:
{
  db_subnet_group: {
    db_subnet_group_arn: "arn:aws:rds:us-west-2:123456789012:subgrp:mysubnetgroup", 
    db_subnet_group_description: "test DB subnet group", 
    db_subnet_group_name: "mysubnetgroup", 
    subnet_group_status: "Complete", 
    subnets: [
      {
        subnet_availability_zone: {
          name: "us-west-2a", 
        }, 
        subnet_identifier: "subnet-08e41f9e230222222", 
        subnet_status: "Active", 
      }, 
      {
        subnet_availability_zone: {
          name: "us-west-2b", 
        }, 
        subnet_identifier: "subnet-070dd7ecb3aaaaaaa", 
        subnet_status: "Active", 
      }, 
      {
        subnet_availability_zone: {
          name: "us-west-2d", 
        }, 
        subnet_identifier: "subnet-00f5b198bc0abcdef", 
        subnet_status: "Active", 
      }, 
      {
        subnet_availability_zone: {
          name: "us-west-2b", 
        }, 
        subnet_identifier: "subnet-0a1dc4e1a6f123456", 
        subnet_status: "Active", 
      }, 
    ], 
    vpc_id: "vpc-0f08e7610a1b2c3d4", 
  }, 
}

Request syntax with placeholder values


resp = client.modify_db_subnet_group({
  db_subnet_group_name: "String", # required
  db_subnet_group_description: "String",
  subnet_ids: ["String"], # required
})

Response structure


resp.db_subnet_group.db_subnet_group_name #=> String
resp.db_subnet_group.db_subnet_group_description #=> String
resp.db_subnet_group.vpc_id #=> String
resp.db_subnet_group.subnet_group_status #=> String
resp.db_subnet_group.subnets #=> Array
resp.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_subnet_group.db_subnet_group_arn #=> String
resp.db_subnet_group.supported_network_types #=> Array
resp.db_subnet_group.supported_network_types[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_subnet_group_name (required, String)

    The name for the DB subnet group. This value is stored as a lowercase string. You can’t modify the default subnet group.

    Constraints: Must match the name of an existing DBSubnetGroup. Must not be default.

    Example: ‘mydbsubnetgroup`

  • :db_subnet_group_description (String)

    The description for the DB subnet group.

  • :subnet_ids (required, Array<String>)

    The EC2 subnet IDs for the DB subnet group.

Returns:

See Also:



22550
22551
22552
22553
# File 'lib/aws-sdk-rds/client.rb', line 22550

def modify_db_subnet_group(params = {}, options = {})
  req = build_request(:modify_db_subnet_group, params)
  req.send_request(options)
end

#modify_event_subscription(params = {}) ⇒ Types::ModifyEventSubscriptionResult

Modifies an existing RDS event notification subscription. You can’t modify the source identifiers using this call. To change source identifiers for a subscription, use the ‘AddSourceIdentifierToSubscription` and `RemoveSourceIdentifierFromSubscription` calls.

You can see a list of the event categories for a given source type (‘SourceType`) in [Events] in the *Amazon RDS User Guide* or by using the `DescribeEventCategories` operation.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html

Examples:

Example: To modify an event subscription


# The following example turns off the specified event subscription, so that it no longer publishes notifications to the
# specified Amazon Simple Notification Service topic.

resp = client.modify_event_subscription({
  enabled: false, 
  subscription_name: "my-instance-events", 
})

resp.to_h outputs the following:
{
  event_subscription: {
    cust_subscription_id: "my-instance-events", 
    customer_aws_id: "123456789012", 
    enabled: false, 
    event_categories_list: [
      "backup", 
      "recovery", 
    ], 
    event_subscription_arn: "arn:aws:rds:us-east-1:123456789012:es:my-instance-events", 
    sns_topic_arn: "arn:aws:sns:us-east-1:123456789012:interesting-events", 
    source_type: "db-instance", 
    status: "modifying", 
    subscription_creation_time: "Tue Jul 31 23:22:01 UTC 2018", 
  }, 
}

Request syntax with placeholder values


resp = client.modify_event_subscription({
  subscription_name: "String", # required
  sns_topic_arn: "String",
  source_type: "String",
  event_categories: ["String"],
  enabled: false,
})

Response structure


resp.event_subscription.customer_aws_id #=> String
resp.event_subscription.cust_subscription_id #=> String
resp.event_subscription.sns_topic_arn #=> String
resp.event_subscription.status #=> String
resp.event_subscription.subscription_creation_time #=> String
resp.event_subscription.source_type #=> String
resp.event_subscription.source_ids_list #=> Array
resp.event_subscription.source_ids_list[0] #=> String
resp.event_subscription.event_categories_list #=> Array
resp.event_subscription.event_categories_list[0] #=> String
resp.event_subscription.enabled #=> Boolean
resp.event_subscription.event_subscription_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :subscription_name (required, String)

    The name of the RDS event notification subscription.

  • :sns_topic_arn (String)

    The Amazon Resource Name (ARN) of the SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

  • :source_type (String)

    The type of source that is generating the events. For example, if you want to be notified of events generated by a DB instance, you would set this parameter to db-instance. For RDS Proxy events, specify ‘db-proxy`. If this value isn’t specified, all events are returned.

    Valid Values:‘ db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy | zero-etl | custom-engine-version | blue-green-deployment `

  • :event_categories (Array<String>)

    A list of event categories for a source type (‘SourceType`) that you want to subscribe to. You can see a list of the categories for a given source type in [Events] in the *Amazon RDS User Guide* or by using the `DescribeEventCategories` operation.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html

  • :enabled (Boolean)

    Specifies whether to activate the subscription.

Returns:

See Also:



22662
22663
22664
22665
# File 'lib/aws-sdk-rds/client.rb', line 22662

def modify_event_subscription(params = {}, options = {})
  req = build_request(:modify_event_subscription, params)
  req.send_request(options)
end

#modify_global_cluster(params = {}) ⇒ Types::ModifyGlobalClusterResult

Modifies a setting for an Amazon Aurora global database 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 [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This operation only applies to Aurora global database clusters.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html

Examples:

Example: To modify a global database cluster


# The following example enables deletion protection for an Aurora MySQL-based global database cluster.

resp = client.modify_global_cluster({
  deletion_protection: true, 
  global_cluster_identifier: "myglobalcluster", 
})

resp.to_h outputs the following:
{
  global_cluster: {
    deletion_protection: true, 
    engine: "aurora-mysql", 
    engine_version: "5.7.mysql_aurora.2.07.2", 
    global_cluster_arn: "arn:aws:rds::123456789012:global-cluster:myglobalcluster", 
    global_cluster_identifier: "myglobalcluster", 
    global_cluster_members: [
    ], 
    global_cluster_resource_id: "cluster-f0e523bfe07aabb", 
    status: "available", 
    storage_encrypted: false, 
  }, 
}

Request syntax with placeholder values


resp = client.modify_global_cluster({
  global_cluster_identifier: "String",
  new_global_cluster_identifier: "String",
  deletion_protection: false,
  engine_version: "String",
  allow_major_version_upgrade: false,
})

Response structure


resp.global_cluster.global_cluster_identifier #=> String
resp.global_cluster.global_cluster_resource_id #=> String
resp.global_cluster.global_cluster_arn #=> String
resp.global_cluster.status #=> String
resp.global_cluster.engine #=> String
resp.global_cluster.engine_version #=> String
resp.global_cluster.engine_lifecycle_support #=> String
resp.global_cluster.database_name #=> String
resp.global_cluster.storage_encrypted #=> Boolean
resp.global_cluster.deletion_protection #=> Boolean
resp.global_cluster.global_cluster_members #=> Array
resp.global_cluster.global_cluster_members[0].db_cluster_arn #=> String
resp.global_cluster.global_cluster_members[0].readers #=> Array
resp.global_cluster.global_cluster_members[0].readers[0] #=> String
resp.global_cluster.global_cluster_members[0].is_writer #=> Boolean
resp.global_cluster.global_cluster_members[0].global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.global_cluster.global_cluster_members[0].synchronization_status #=> String, one of "connected", "pending-resync"
resp.global_cluster.endpoint #=> String
resp.global_cluster.failover_state.status #=> String, one of "pending", "failing-over", "cancelling"
resp.global_cluster.failover_state.from_db_cluster_arn #=> String
resp.global_cluster.failover_state.to_db_cluster_arn #=> String
resp.global_cluster.failover_state.is_data_loss_allowed #=> Boolean
resp.global_cluster.tag_list #=> Array
resp.global_cluster.tag_list[0].key #=> String
resp.global_cluster.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :global_cluster_identifier (String)

    The cluster identifier for the global cluster to modify. This parameter isn’t case-sensitive.

    Constraints:

    • Must match the identifier of an existing global database cluster.

    ^

  • :new_global_cluster_identifier (String)

    The new cluster identifier for the global database cluster. This value is stored as a lowercase string.

    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: ‘my-cluster2`

  • :deletion_protection (Boolean)

    Specifies whether to enable deletion protection for the global database cluster. The global database cluster can’t be deleted when deletion protection is enabled.

  • :engine_version (String)

    The version number of the database engine to which you want to upgrade.

    To list all of the available engine versions for ‘aurora-mysql` (for MySQL-based Aurora global databases), use the following command:

    “ aws rds describe-db-engine-versions –engine aurora-mysql –query ‘*[]|[?SupportsGlobalDatabases == `true`].’ “

    To list all of the available engine versions for ‘aurora-postgresql` (for PostgreSQL-based Aurora global databases), use the following command:

    “ aws rds describe-db-engine-versions –engine aurora-postgresql –query ‘*[]|[?SupportsGlobalDatabases == `true`].’ “

  • :allow_major_version_upgrade (Boolean)

    Specifies whether to allow major version upgrades.

    Constraints: Must be enabled if you specify a value for the ‘EngineVersion` parameter that’s a different major version than the global cluster’s current version.

    If you upgrade the major version of a global database, the cluster and DB instance parameter groups are set to the default parameter groups for the new version. Apply any custom parameter groups after completing the upgrade.

Returns:

See Also:



22811
22812
22813
22814
# File 'lib/aws-sdk-rds/client.rb', line 22811

def modify_global_cluster(params = {}, options = {})
  req = build_request(:modify_global_cluster, params)
  req.send_request(options)
end

#modify_integration(params = {}) ⇒ Types::Integration

Modifies a zero-ETL integration with Amazon Redshift.

<note markdown=“1”> Currently, you can only modify integrations that have Aurora MySQL source DB clusters. Integrations with Aurora PostgreSQL and RDS sources currently don’t support modifying the integration.

</note>

Examples:

Example: To modify a zero-ETL integration


# The following example modifies the name of an existing zero-ETL integration.

resp = client.modify_integration({
  integration_identifier: "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", 
  integration_name: "my-renamed-integration", 
})

resp.to_h outputs the following:
{
  create_time: Time.parse("2023-12-28T17:20:20.629Z"), 
  data_filter: "include: *.*", 
  integration_arn: "arn:aws:rds:us-east-1:123456789012:integration:5b9f3d79-7392-4a3e-896c-58eaa1b53231", 
  integration_name: "my-renamed-integration", 
  kms_key_id: "arn:aws:kms:us-east-1:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa", 
  source_arn: "arn:aws:rds:us-east-1:123456789012:cluster:my-cluster", 
  status: "active", 
  tags: [
  ], 
  target_arn: "arn:aws:redshift-serverless:us-east-1:123456789012:namespace/62c70612-0302-4db7-8414-b5e3e049f0d8", 
}

Request syntax with placeholder values


resp = client.modify_integration({
  integration_identifier: "IntegrationIdentifier", # required
  integration_name: "IntegrationName",
  data_filter: "DataFilter",
  description: "IntegrationDescription",
})

Response structure


resp.source_arn #=> String
resp.target_arn #=> String
resp.integration_name #=> String
resp.integration_arn #=> String
resp.kms_key_id #=> String
resp.additional_encryption_context #=> Hash
resp.additional_encryption_context["String"] #=> String
resp.status #=> String, one of "creating", "active", "modifying", "failed", "deleting", "syncing", "needs_attention"
resp.tags #=> Array
resp.tags[0].key #=> String
resp.tags[0].value #=> String
resp.create_time #=> Time
resp.errors #=> Array
resp.errors[0].error_code #=> String
resp.errors[0].error_message #=> String
resp.data_filter #=> String
resp.description #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :integration_identifier (required, String)

    The unique identifier of the integration to modify.

  • :integration_name (String)

    A new name for the integration.

  • :data_filter (String)

    A new data filter for the integration. For more information, see [Data filtering for Aurora zero-ETL integrations with Amazon Redshift].

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Zero_ETL_Filtering.html

  • :description (String)

    A new description for the integration.

Returns:

See Also:



22913
22914
22915
22916
# File 'lib/aws-sdk-rds/client.rb', line 22913

def modify_integration(params = {}, options = {})
  req = build_request(:modify_integration, params)
  req.send_request(options)
end

#modify_option_group(params = {}) ⇒ Types::ModifyOptionGroupResult

Modifies an existing option group.

Examples:

Example: To modify an option group


# The following example adds an option to an option group.

resp = client.modify_option_group({
  apply_immediately: true, 
  option_group_name: "myawsuser-og02", 
  options_to_include: [
    {
      db_security_group_memberships: [
        "default", 
      ], 
      option_name: "MEMCACHED", 
    }, 
  ], 
})

resp.to_h outputs the following:
{
  option_group: {
  }, 
}

Request syntax with placeholder values


resp = client.modify_option_group({
  option_group_name: "String", # required
  options_to_include: [
    {
      option_name: "String", # required
      port: 1,
      option_version: "String",
      db_security_group_memberships: ["String"],
      vpc_security_group_memberships: ["String"],
      option_settings: [
        {
          name: "String",
          value: "String",
          default_value: "String",
          description: "String",
          apply_type: "String",
          data_type: "String",
          allowed_values: "String",
          is_modifiable: false,
          is_collection: false,
        },
      ],
    },
  ],
  options_to_remove: ["String"],
  apply_immediately: false,
})

Response structure


resp.option_group.option_group_name #=> String
resp.option_group.option_group_description #=> String
resp.option_group.engine_name #=> String
resp.option_group.major_engine_version #=> String
resp.option_group.options #=> Array
resp.option_group.options[0].option_name #=> String
resp.option_group.options[0].option_description #=> String
resp.option_group.options[0].persistent #=> Boolean
resp.option_group.options[0].permanent #=> Boolean
resp.option_group.options[0].port #=> Integer
resp.option_group.options[0].option_version #=> String
resp.option_group.options[0].option_settings #=> Array
resp.option_group.options[0].option_settings[0].name #=> String
resp.option_group.options[0].option_settings[0].value #=> String
resp.option_group.options[0].option_settings[0].default_value #=> String
resp.option_group.options[0].option_settings[0].description #=> String
resp.option_group.options[0].option_settings[0].apply_type #=> String
resp.option_group.options[0].option_settings[0].data_type #=> String
resp.option_group.options[0].option_settings[0].allowed_values #=> String
resp.option_group.options[0].option_settings[0].is_modifiable #=> Boolean
resp.option_group.options[0].option_settings[0].is_collection #=> Boolean
resp.option_group.options[0].db_security_group_memberships #=> Array
resp.option_group.options[0].db_security_group_memberships[0].db_security_group_name #=> String
resp.option_group.options[0].db_security_group_memberships[0].status #=> String
resp.option_group.options[0].vpc_security_group_memberships #=> Array
resp.option_group.options[0].vpc_security_group_memberships[0].vpc_security_group_id #=> String
resp.option_group.options[0].vpc_security_group_memberships[0].status #=> String
resp.option_group.allows_vpc_and_non_vpc_instance_memberships #=> Boolean
resp.option_group.vpc_id #=> String
resp.option_group.option_group_arn #=> String
resp.option_group.source_option_group #=> String
resp.option_group. #=> String
resp.option_group.copy_timestamp #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :option_group_name (required, String)

    The name of the option group to be modified.

    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 once it is associated with a DB instance

  • :options_to_include (Array<Types::OptionConfiguration>)

    Options in this list are added to the option group or, if already present, the specified configuration is used to update the existing configuration.

  • :options_to_remove (Array<String>)

    Options in this list are removed from the option group.

  • :apply_immediately (Boolean)

    Specifies whether to apply the change immediately or during the next maintenance window for each instance associated with the option group.

Returns:

See Also:



23038
23039
23040
23041
# File 'lib/aws-sdk-rds/client.rb', line 23038

def modify_option_group(params = {}, options = {})
  req = build_request(:modify_option_group, params)
  req.send_request(options)
end

#modify_tenant_database(params = {}) ⇒ Types::ModifyTenantDatabaseResult

Modifies an existing tenant database in a DB instance. You can change the tenant database name or the master user password. This operation is supported only for RDS for Oracle CDB instances using the multi-tenant configuration.

Examples:

Request syntax with placeholder values


resp = client.modify_tenant_database({
  db_instance_identifier: "String", # required
  tenant_db_name: "String", # required
  master_user_password: "SensitiveString",
  new_tenant_db_name: "String",
})

Response structure


resp.tenant_database.tenant_database_create_time #=> Time
resp.tenant_database.db_instance_identifier #=> String
resp.tenant_database.tenant_db_name #=> String
resp.tenant_database.status #=> String
resp.tenant_database.master_username #=> String
resp.tenant_database.dbi_resource_id #=> String
resp.tenant_database.tenant_database_resource_id #=> String
resp.tenant_database.tenant_database_arn #=> String
resp.tenant_database.character_set_name #=> String
resp.tenant_database.nchar_character_set_name #=> String
resp.tenant_database.deletion_protection #=> Boolean
resp.tenant_database.pending_modified_values.master_user_password #=> String
resp.tenant_database.pending_modified_values.tenant_db_name #=> String
resp.tenant_database.tag_list #=> Array
resp.tenant_database.tag_list[0].key #=> String
resp.tenant_database.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The identifier of the DB instance that contains the tenant database that you are modifying. This parameter isn’t case-sensitive.

    Constraints:

    • Must match the identifier of an existing DB instance.

    ^

  • :tenant_db_name (required, String)

    The user-supplied name of the tenant database that you want to modify. This parameter isn’t case-sensitive.

    Constraints:

    • Must match the identifier of an existing tenant database.

    ^

  • :master_user_password (String)

    The new password for the master user of the specified tenant database in your DB instance.

    <note markdown=“1”> Amazon RDS operations never return the password, so this action provides a way to regain access to a tenant database user if the password is lost. This includes restoring privileges that might have been accidentally revoked.

    </note>
    

    Constraints:

    • Can include any printable ASCII character except ‘/`, `“` (double quote), `@`, `&` (ampersand), and `’‘ (single quote).

    ^

    Length constraints:

    • Must contain between 8 and 30 characters.

    ^

  • :new_tenant_db_name (String)

    The new name of the tenant database when renaming a tenant database. This parameter isn’t case-sensitive.

    Constraints:

    • Can’t be the string null or any other reserved word.

    • Can’t be longer than 8 characters.

Returns:

See Also:



23138
23139
23140
23141
# File 'lib/aws-sdk-rds/client.rb', line 23138

def modify_tenant_database(params = {}, options = {})
  req = build_request(:modify_tenant_database, params)
  req.send_request(options)
end

#promote_read_replica(params = {}) ⇒ Types::PromoteReadReplicaResult

Promotes a read replica DB instance to a standalone DB instance.

<note markdown=“1”> * 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.
  • This command doesn’t apply to Aurora MySQL, Aurora PostgreSQL, or RDS Custom.

</note>

Examples:

Example: To promote a read replica


# The following example promotes the specified read replica to become a standalone DB instance.

resp = client.promote_read_replica({
  db_instance_identifier: "test-instance-repl", 
})

resp.to_h outputs the following:
{
  db_instance: {
    db_instance_arn: "arn:aws:rds:us-east-1:123456789012:db:test-instance-repl", 
    db_instance_status: "modifying", 
    read_replica_source_db_instance_identifier: "test-instance", 
    storage_type: "standard", 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.promote_read_replica({
  db_instance_identifier: "String", # required
  backup_retention_period: 1,
  preferred_backup_window: "String",
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

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

    Constraints:

    • Must match the identifier of an existing read replica DB instance.

    ^

    Example: ‘mydbinstance`

  • :backup_retention_period (Integer)

    The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

    Default: 1

    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.

  • :preferred_backup_window (String)

    The daily time range during which automated backups are created if automated backups are enabled, using the ‘BackupRetentionPeriod` parameter.

    The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. To see the time blocks available, see [ Adjusting the Preferred Maintenance Window] in the *Amazon RDS User Guide.*

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AdjustingTheMaintenanceWindow.html

Returns:

See Also:



23408
23409
23410
23411
# File 'lib/aws-sdk-rds/client.rb', line 23408

def promote_read_replica(params = {}, options = {})
  req = build_request(:promote_read_replica, params)
  req.send_request(options)
end

#promote_read_replica_db_cluster(params = {}) ⇒ Types::PromoteReadReplicaDBClusterResult

Promotes a read replica DB cluster to a standalone DB cluster.

Examples:

Request syntax with placeholder values


resp = client.promote_read_replica_db_cluster({
  db_cluster_identifier: "String", # required
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The identifier of the DB cluster read replica to promote. This parameter isn’t case-sensitive.

    Constraints:

    • Must match the identifier of an existing DB cluster read replica.

    ^

    Example: ‘my-cluster-replica1`

Returns:

See Also:



23584
23585
23586
23587
# File 'lib/aws-sdk-rds/client.rb', line 23584

def promote_read_replica_db_cluster(params = {}, options = {})
  req = build_request(:promote_read_replica_db_cluster, params)
  req.send_request(options)
end

#purchase_reserved_db_instances_offering(params = {}) ⇒ Types::PurchaseReservedDBInstancesOfferingResult

Purchases a reserved DB instance offering.

Examples:

Example: To purchase a reserved DB instance


# The following example shows how to buy the reserved DB instance offering from the previous example.

resp = client.purchase_reserved_db_instances_offering({
  reserved_db_instance_id: "8ba30be1-b9ec-447f-8f23-6114e3f4c7b4", 
  reserved_db_instances_offering_id: "", 
})

resp.to_h outputs the following:
{
  reserved_db_instance: {
    currency_code: "USD", 
    db_instance_class: "db.t2.micro", 
    db_instance_count: 1, 
    duration: 31536000, 
    fixed_price: 51, 
    multi_az: false, 
    offering_type: "Partial Upfront", 
    product_description: "mysql", 
    recurring_charges: [
      {
        recurring_charge_amount: 0.006, 
        recurring_charge_frequency: "Hourly", 
      }, 
    ], 
    reserved_db_instance_arn: "arn:aws:rds:us-west-2:123456789012:ri:ri-2020-06-29-16-54-57-670", 
    reserved_db_instance_id: "ri-2020-06-29-16-54-57-670", 
    reserved_db_instances_offering_id: "8ba30be1-b9ec-447f-8f23-6114e3f4c7b4", 
    start_time: Time.parse("2020-06-29T16:54:57.670Z"), 
    state: "payment-pending", 
    usage_price: 0, 
  }, 
}

Request syntax with placeholder values


resp = client.purchase_reserved_db_instances_offering({
  reserved_db_instances_offering_id: "String", # required
  reserved_db_instance_id: "String",
  db_instance_count: 1,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
})

Response structure


resp.reserved_db_instance.reserved_db_instance_id #=> String
resp.reserved_db_instance.reserved_db_instances_offering_id #=> String
resp.reserved_db_instance.db_instance_class #=> String
resp.reserved_db_instance.start_time #=> Time
resp.reserved_db_instance.duration #=> Integer
resp.reserved_db_instance.fixed_price #=> Float
resp.reserved_db_instance.usage_price #=> Float
resp.reserved_db_instance.currency_code #=> String
resp.reserved_db_instance.db_instance_count #=> Integer
resp.reserved_db_instance.product_description #=> String
resp.reserved_db_instance.offering_type #=> String
resp.reserved_db_instance.multi_az #=> Boolean
resp.reserved_db_instance.state #=> String
resp.reserved_db_instance.recurring_charges #=> Array
resp.reserved_db_instance.recurring_charges[0].recurring_charge_amount #=> Float
resp.reserved_db_instance.recurring_charges[0].recurring_charge_frequency #=> String
resp.reserved_db_instance.reserved_db_instance_arn #=> String
resp.reserved_db_instance.lease_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

Returns:

See Also:



23697
23698
23699
23700
# File 'lib/aws-sdk-rds/client.rb', line 23697

def purchase_reserved_db_instances_offering(params = {}, options = {})
  req = build_request(:purchase_reserved_db_instances_offering, params)
  req.send_request(options)
end

#reboot_db_cluster(params = {}) ⇒ Types::RebootDBClusterResult

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

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

Use this operation only for a non-Aurora Multi-AZ DB cluster.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Request syntax with placeholder values


resp = client.reboot_db_cluster({
  db_cluster_identifier: "String", # required
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The DB cluster identifier. This parameter is stored as a lowercase string.

    Constraints:

    • Must match the identifier of an existing DBCluster.

    ^

Returns:

See Also:



23887
23888
23889
23890
# File 'lib/aws-sdk-rds/client.rb', line 23887

def reboot_db_cluster(params = {}, options = {})
  req = build_request(:reboot_db_cluster, params)
  req.send_request(options)
end

#reboot_db_instance(params = {}) ⇒ Types::RebootDBInstanceResult

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.

For more information about rebooting, see [Rebooting a DB Instance] in the *Amazon RDS User Guide.*

This command doesn’t apply to RDS Custom.

If your DB instance is part of a Multi-AZ DB cluster, you can reboot the DB cluster with the ‘RebootDBCluster` operation.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_RebootInstance.html

Examples:

Example: To reboot a DB instance


# The following example starts a reboot of the specified DB instance.

resp = client.reboot_db_instance({
  db_instance_identifier: "test-mysql-instance", 
})

resp.to_h outputs the following:
{
  db_instance: {
    db_instance_class: "db.t3.micro", 
    db_instance_identifier: "test-mysql-instance", 
    db_instance_status: "rebooting", 
    endpoint: {
      address: "test-mysql-instance.############.us-west-2.rds.amazonaws.com", 
      hosted_zone_id: "Z1PVIF0EXAMPLE", 
      port: 3306, 
    }, 
    engine: "mysql", 
    master_username: "admin", 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.reboot_db_instance({
  db_instance_identifier: "String", # required
  force_failover: false,
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

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

    Constraints:

    • Must match the identifier of an existing DBInstance.

    ^

  • :force_failover (Boolean)

    Specifies whether the reboot is conducted through a Multi-AZ failover.

    Constraint: You can’t enable force failover if the instance isn’t configured for Multi-AZ.

Returns:

See Also:



24134
24135
24136
24137
# File 'lib/aws-sdk-rds/client.rb', line 24134

def reboot_db_instance(params = {}, options = {})
  req = build_request(:reboot_db_instance, params)
  req.send_request(options)
end

#reboot_db_shard_group(params = {}) ⇒ Types::DBShardGroup

You might need to reboot your DB shard group, usually for maintenance reasons. For example, if you make certain modifications, reboot the DB shard group for the changes to take effect.

This operation applies only to Aurora Limitless Database DBb shard groups.

Examples:

Request syntax with placeholder values


resp = client.reboot_db_shard_group({
  db_shard_group_identifier: "DBShardGroupIdentifier", # required
})

Response structure


resp.db_shard_group_resource_id #=> String
resp.db_shard_group_identifier #=> String
resp.db_cluster_identifier #=> String
resp.max_acu #=> Float
resp.min_acu #=> Float
resp.compute_redundancy #=> Integer
resp.status #=> String
resp.publicly_accessible #=> Boolean
resp.endpoint #=> String
resp.db_shard_group_arn #=> String
resp.tag_list #=> Array
resp.tag_list[0].key #=> String
resp.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_shard_group_identifier (required, String)

    The name of the DB shard group to reboot.

Returns:

See Also:



24189
24190
24191
24192
# File 'lib/aws-sdk-rds/client.rb', line 24189

def reboot_db_shard_group(params = {}, options = {})
  req = build_request(:reboot_db_shard_group, params)
  req.send_request(options)
end

#register_db_proxy_targets(params = {}) ⇒ Types::RegisterDBProxyTargetsResponse

Associate one or more ‘DBProxyTarget` data structures with a `DBProxyTargetGroup`.

Examples:

Request syntax with placeholder values


resp = client.register_db_proxy_targets({
  db_proxy_name: "String", # required
  target_group_name: "String",
  db_instance_identifiers: ["String"],
  db_cluster_identifiers: ["String"],
})

Response structure


resp.db_proxy_targets #=> Array
resp.db_proxy_targets[0].target_arn #=> String
resp.db_proxy_targets[0].endpoint #=> String
resp.db_proxy_targets[0].tracked_cluster_id #=> String
resp.db_proxy_targets[0].rds_resource_id #=> String
resp.db_proxy_targets[0].port #=> Integer
resp.db_proxy_targets[0].type #=> String, one of "RDS_INSTANCE", "RDS_SERVERLESS_ENDPOINT", "TRACKED_CLUSTER"
resp.db_proxy_targets[0].role #=> String, one of "READ_WRITE", "READ_ONLY", "UNKNOWN"
resp.db_proxy_targets[0].target_health.state #=> String, one of "REGISTERING", "AVAILABLE", "UNAVAILABLE"
resp.db_proxy_targets[0].target_health.reason #=> String, one of "UNREACHABLE", "CONNECTION_FAILED", "AUTH_FAILURE", "PENDING_PROXY_CAPACITY", "INVALID_REPLICATION_STATE"
resp.db_proxy_targets[0].target_health.description #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_proxy_name (required, String)

    The identifier of the ‘DBProxy` that is associated with the `DBProxyTargetGroup`.

  • :target_group_name (String)

    The identifier of the ‘DBProxyTargetGroup`.

  • :db_instance_identifiers (Array<String>)

    One or more DB instance identifiers.

  • :db_cluster_identifiers (Array<String>)

    One or more DB cluster identifiers.

Returns:

See Also:



24241
24242
24243
24244
# File 'lib/aws-sdk-rds/client.rb', line 24241

def register_db_proxy_targets(params = {}, options = {})
  req = build_request(:register_db_proxy_targets, params)
  req.send_request(options)
end

#remove_from_global_cluster(params = {}) ⇒ Types::RemoveFromGlobalClusterResult

Detaches an Aurora secondary cluster from an Aurora global database cluster. The cluster becomes a standalone cluster with read-write capability instead of being read-only and receiving data from a primary cluster in a different Region.

<note markdown=“1”> This operation only applies to Aurora DB clusters.

</note>

Examples:

Example: To detach an Aurora secondary cluster from an Aurora global database cluster


# The following example detaches an Aurora secondary cluster from an Aurora global database cluster. The cluster changes
# from being read-only to a standalone cluster with read-write capability.

resp = client.remove_from_global_cluster({
  db_cluster_identifier: "arn:aws:rds:us-west-2:123456789012:cluster:DB-1", 
  global_cluster_identifier: "myglobalcluster", 
})

resp.to_h outputs the following:
{
  global_cluster: {
    deletion_protection: false, 
    engine: "aurora-postgresql", 
    engine_version: "10.11", 
    global_cluster_arn: "arn:aws:rds::123456789012:global-cluster:myglobalcluster", 
    global_cluster_identifier: "myglobalcluster", 
    global_cluster_members: [
      {
        db_cluster_arn: "arn:aws:rds:us-east-1:123456789012:cluster:js-global-cluster", 
        is_writer: true, 
        readers: [
          "arn:aws:rds:us-west-2:123456789012:cluster:DB-1", 
        ], 
      }, 
      {
        db_cluster_arn: "arn:aws:rds:us-west-2:123456789012:cluster:DB-1", 
        global_write_forwarding_status: "disabled", 
        is_writer: false, 
        readers: [
        ], 
      }, 
    ], 
    global_cluster_resource_id: "cluster-abc123def456gh", 
    status: "available", 
    storage_encrypted: true, 
  }, 
}

Request syntax with placeholder values


resp = client.remove_from_global_cluster({
  global_cluster_identifier: "String",
  db_cluster_identifier: "String",
})

Response structure


resp.global_cluster.global_cluster_identifier #=> String
resp.global_cluster.global_cluster_resource_id #=> String
resp.global_cluster.global_cluster_arn #=> String
resp.global_cluster.status #=> String
resp.global_cluster.engine #=> String
resp.global_cluster.engine_version #=> String
resp.global_cluster.engine_lifecycle_support #=> String
resp.global_cluster.database_name #=> String
resp.global_cluster.storage_encrypted #=> Boolean
resp.global_cluster.deletion_protection #=> Boolean
resp.global_cluster.global_cluster_members #=> Array
resp.global_cluster.global_cluster_members[0].db_cluster_arn #=> String
resp.global_cluster.global_cluster_members[0].readers #=> Array
resp.global_cluster.global_cluster_members[0].readers[0] #=> String
resp.global_cluster.global_cluster_members[0].is_writer #=> Boolean
resp.global_cluster.global_cluster_members[0].global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.global_cluster.global_cluster_members[0].synchronization_status #=> String, one of "connected", "pending-resync"
resp.global_cluster.endpoint #=> String
resp.global_cluster.failover_state.status #=> String, one of "pending", "failing-over", "cancelling"
resp.global_cluster.failover_state.from_db_cluster_arn #=> String
resp.global_cluster.failover_state.to_db_cluster_arn #=> String
resp.global_cluster.failover_state.is_data_loss_allowed #=> Boolean
resp.global_cluster.tag_list #=> Array
resp.global_cluster.tag_list[0].key #=> String
resp.global_cluster.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :global_cluster_identifier (String)

    The cluster identifier to detach from the Aurora global database cluster.

  • :db_cluster_identifier (String)

    The Amazon Resource Name (ARN) identifying the cluster that was detached from the Aurora global database cluster.

Returns:

See Also:



24347
24348
24349
24350
# File 'lib/aws-sdk-rds/client.rb', line 24347

def remove_from_global_cluster(params = {}, options = {})
  req = build_request(:remove_from_global_cluster, params)
  req.send_request(options)
end

#remove_role_from_db_cluster(params = {}) ⇒ Struct

Removes the asssociation of an Amazon Web Services Identity and Access Management (IAM) role from a DB cluster.

For more information on Amazon Aurora DB clusters, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To disassociate an Identity and Access Management (IAM) role from a DB cluster


# The following example removes a role from a DB cluster.

resp = client.remove_role_from_db_cluster({
  db_cluster_identifier: "mydbcluster", 
  role_arn: "arn:aws:iam::123456789012:role/RDSLoadFromS3", 
})

Request syntax with placeholder values


resp = client.remove_role_from_db_cluster({
  db_cluster_identifier: "String", # required
  role_arn: "String", # required
  feature_name: "String",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The name of the DB cluster to disassociate the IAM role from.

  • :role_arn (required, String)

    The Amazon Resource Name (ARN) of the IAM role to disassociate from the Aurora DB cluster, for example ‘arn:aws:iam::123456789012:role/AuroraAccessRole`.

  • :feature_name (String)

    The name of the feature for the DB cluster that the IAM role is to be disassociated from. For information about supported feature names, see DBEngineVersion.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



24403
24404
24405
24406
# File 'lib/aws-sdk-rds/client.rb', line 24403

def remove_role_from_db_cluster(params = {}, options = {})
  req = build_request(:remove_role_from_db_cluster, params)
  req.send_request(options)
end

#remove_role_from_db_instance(params = {}) ⇒ Struct

Disassociates an Amazon Web Services Identity and Access Management (IAM) role from a DB instance.

Examples:

Request syntax with placeholder values


resp = client.remove_role_from_db_instance({
  db_instance_identifier: "String", # required
  role_arn: "String", # required
  feature_name: "String", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The name of the DB instance to disassociate the IAM role from.

  • :role_arn (required, String)

    The Amazon Resource Name (ARN) of the IAM role to disassociate from the DB instance, for example, ‘arn:aws:iam::123456789012:role/AccessRole`.

  • :feature_name (required, String)

    The name of the feature for the DB instance that the IAM role is to be disassociated from. For information about supported feature names, see ‘DBEngineVersion`.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



24438
24439
24440
24441
# File 'lib/aws-sdk-rds/client.rb', line 24438

def remove_role_from_db_instance(params = {}, options = {})
  req = build_request(:remove_role_from_db_instance, params)
  req.send_request(options)
end

#remove_source_identifier_from_subscription(params = {}) ⇒ Types::RemoveSourceIdentifierFromSubscriptionResult

Removes a source identifier from an existing RDS event notification subscription.

Examples:

Example: To remove a source identifier from a subscription


# The following example removes the specified source identifier from an existing subscription.

resp = client.remove_source_identifier_from_subscription({
  source_identifier: "test-instance-repl", 
  subscription_name: "my-instance-events", 
})

resp.to_h outputs the following:
{
  event_subscription: {
    cust_subscription_id: "my-instance-events", 
    customer_aws_id: "123456789012", 
    enabled: false, 
    event_categories_list: [
      "backup", 
      "recovery", 
    ], 
    event_subscription_arn: "arn:aws:rds:us-east-1:123456789012:es:my-instance-events", 
    sns_topic_arn: "arn:aws:sns:us-east-1:123456789012:interesting-events", 
    source_ids_list: [
      "test-instance", 
    ], 
    source_type: "db-instance", 
    status: "modifying", 
    subscription_creation_time: "Tue Jul 31 23:22:01 UTC 2018", 
  }, 
}

Request syntax with placeholder values


resp = client.remove_source_identifier_from_subscription({
  subscription_name: "String", # required
  source_identifier: "String", # required
})

Response structure


resp.event_subscription.customer_aws_id #=> String
resp.event_subscription.cust_subscription_id #=> String
resp.event_subscription.sns_topic_arn #=> String
resp.event_subscription.status #=> String
resp.event_subscription.subscription_creation_time #=> String
resp.event_subscription.source_type #=> String
resp.event_subscription.source_ids_list #=> Array
resp.event_subscription.source_ids_list[0] #=> String
resp.event_subscription.event_categories_list #=> Array
resp.event_subscription.event_categories_list[0] #=> String
resp.event_subscription.enabled #=> Boolean
resp.event_subscription.event_subscription_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :subscription_name (required, String)

    The name of the RDS event notification subscription you want to remove a source identifier from.

  • :source_identifier (required, String)

    The source identifier to be removed from the subscription, such as the **DB instance identifier** for a DB instance or the name of a security group.

Returns:

See Also:



24516
24517
24518
24519
# File 'lib/aws-sdk-rds/client.rb', line 24516

def remove_source_identifier_from_subscription(params = {}, options = {})
  req = build_request(:remove_source_identifier_from_subscription, params)
  req.send_request(options)
end

#remove_tags_from_resource(params = {}) ⇒ Struct

Removes metadata tags from an Amazon RDS resource.

For an overview on tagging an Amazon RDS resource, see [Tagging Amazon RDS Resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS Resources] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

Examples:

Example: To remove tags from a resource


# The following example removes tags from a resource.

resp = client.remove_tags_from_resource({
  resource_name: "arn:aws:rds:us-east-1:123456789012:db:mydbinstance", 
  tag_keys: [
    "Name", 
    "Environment", 
  ], 
})

Request syntax with placeholder values


resp = client.remove_tags_from_resource({
  resource_name: "String", # required
  tag_keys: ["String"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

Returns:

  • (Struct)

    Returns an empty response.

See Also:



24571
24572
24573
24574
# File 'lib/aws-sdk-rds/client.rb', line 24571

def remove_tags_from_resource(params = {}, options = {})
  req = build_request(:remove_tags_from_resource, params)
  req.send_request(options)
end

#reset_db_cluster_parameter_group(params = {}) ⇒ Types::DBClusterParameterGroupNameMessage

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.

For more information on Amazon Aurora DB clusters, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To reset all parameters to their default values


# The following example resets all parameter values in a customer-created DB cluster parameter group to their default
# values.

resp = client.reset_db_cluster_parameter_group({
  db_cluster_parameter_group_name: "mydbclpg", 
  reset_all_parameters: true, 
})

resp.to_h outputs the following:
{
  db_cluster_parameter_group_name: "mydbclpg", 
}

Request syntax with placeholder values


resp = client.reset_db_cluster_parameter_group({
  db_cluster_parameter_group_name: "String", # required
  reset_all_parameters: false,
  parameters: [
    {
      parameter_name: "String",
      parameter_value: "String",
      description: "String",
      source: "String",
      apply_type: "String",
      data_type: "String",
      allowed_values: "String",
      is_modifiable: false,
      minimum_engine_version: "String",
      apply_method: "immediate", # accepts immediate, pending-reboot
      supported_engine_modes: ["String"],
    },
  ],
})

Response structure


resp.db_cluster_parameter_group_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_parameter_group_name (required, String)

    The name of the DB cluster parameter group to reset.

  • :reset_all_parameters (Boolean)

    Specifies whether to reset all parameters in the DB cluster parameter group to their default values. You can’t use this parameter if there is a list of parameter names specified for the ‘Parameters` parameter.

  • :parameters (Array<Types::Parameter>)

    A list of parameter names in the DB cluster parameter group to reset to the default values. You can’t use this parameter if the ‘ResetAllParameters` parameter is enabled.

Returns:

See Also:



24662
24663
24664
24665
# File 'lib/aws-sdk-rds/client.rb', line 24662

def reset_db_cluster_parameter_group(params = {}, options = {})
  req = build_request(:reset_db_cluster_parameter_group, params)
  req.send_request(options)
end

#reset_db_parameter_group(params = {}) ⇒ Types::DBParameterGroupNameMessage

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.

Examples:

Example: To reset all parameters to their default values


# The following example resets all parameter values in a customer-created DB parameter group to their default values.

resp = client.reset_db_parameter_group({
  db_parameter_group_name: "mypg", 
  reset_all_parameters: true, 
})

resp.to_h outputs the following:
{
  db_parameter_group_name: "mypg", 
}

Request syntax with placeholder values


resp = client.reset_db_parameter_group({
  db_parameter_group_name: "String", # required
  reset_all_parameters: false,
  parameters: [
    {
      parameter_name: "String",
      parameter_value: "String",
      description: "String",
      source: "String",
      apply_type: "String",
      data_type: "String",
      allowed_values: "String",
      is_modifiable: false,
      minimum_engine_version: "String",
      apply_method: "immediate", # accepts immediate, pending-reboot
      supported_engine_modes: ["String"],
    },
  ],
})

Response structure


resp.db_parameter_group_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_parameter_group_name (required, String)

    The name of the DB parameter group.

    Constraints:

    • Must match the name of an existing ‘DBParameterGroup`.

    ^

  • :reset_all_parameters (Boolean)

    Specifies whether to reset all parameters in the DB parameter group to default values. By default, all parameters in the DB parameter group are reset to default values.

  • :parameters (Array<Types::Parameter>)

    To reset the entire DB parameter group, specify the ‘DBParameterGroup` name and `ResetAllParameters` parameters. To reset specific parameters, provide a list of the following: `ParameterName` and `ApplyMethod`. A maximum of 20 parameters can be modified in a single request.

    MySQL

    Valid Values (for Apply method): ‘immediate` | `pending-reboot`

    You can use the immediate value with dynamic parameters only. You can use the ‘pending-reboot` value for both dynamic and static parameters, and changes are applied when DB instance reboots.

    MariaDB

    Valid Values (for Apply method): ‘immediate` | `pending-reboot`

    You can use the immediate value with dynamic parameters only. You can use the ‘pending-reboot` value for both dynamic and static parameters, and changes are applied when DB instance reboots.

    Oracle

    Valid Values (for Apply method): ‘pending-reboot`

Returns:

See Also:



24766
24767
24768
24769
# File 'lib/aws-sdk-rds/client.rb', line 24766

def reset_db_parameter_group(params = {}, options = {})
  req = build_request(:reset_db_parameter_group, params)
  req.send_request(options)
end

#restore_db_cluster_from_s3(params = {}) ⇒ Types::RestoreDBClusterFromS3Result

Creates an Amazon Aurora DB cluster from MySQL 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] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This operation only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the ‘CreateDBInstance` operation 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 `RestoreDBClusterFromS3` operation has completed and the DB cluster is available.

</note>

For more information on Amazon Aurora, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This operation only applies to Aurora DB clusters. The source DB engine must be MySQL.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Migrating.ExtMySQL.html#AuroraMySQL.Migrating.ExtMySQL.S3 [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html

Examples:

Example: To restore an Amazon Aurora DB cluster from Amazon S3


# The following example restores an Amazon Aurora MySQL version 5.7-compatible DB cluster from a MySQL 5.7 DB backup file
# in Amazon S3.

resp = client.restore_db_cluster_from_s3({
  db_cluster_identifier: "cluster-s3-restore", 
  engine: "aurora-mysql", 
  master_user_password: "mypassword", 
  master_username: "admin", 
  s3_bucket_name: "mybucket", 
  s3_ingestion_role_arn: "arn:aws:iam::123456789012:role/service-role/TestBackup", 
  s3_prefix: "test-backup", 
  source_engine: "mysql", 
  source_engine_version: "5.7.28", 
})

resp.to_h outputs the following:
{
  db_cluster: {
    allocated_storage: 1, 
    associated_roles: [
    ], 
    availability_zones: [
      "us-west-2c", 
      "us-west-2a", 
      "us-west-2b", 
    ], 
    backup_retention_period: 1, 
    cluster_create_time: Time.parse("2020-07-27T14:22:08.095Z"), 
    copy_tags_to_snapshot: false, 
    cross_account_clone: false, 
    db_cluster_arn: "arn:aws:rds:us-west-2:123456789012:cluster:cluster-s3-restore", 
    db_cluster_identifier: "cluster-s3-restore", 
    db_cluster_members: [
    ], 
    db_cluster_parameter_group: "default.aurora-mysql5.7", 
    db_subnet_group: "default", 
    db_cluster_resource_id: "cluster-SU5THYQQHOWCXZZDGXREXAMPLE", 
    deletion_protection: false, 
    domain_memberships: [
    ], 
    endpoint: "cluster-s3-restore.cluster-co3xyzabc123.us-west-2.rds.amazonaws.com", 
    engine: "aurora-mysql", 
    engine_mode: "provisioned", 
    engine_version: "5.7.12", 
    hosted_zone_id: "Z1PVIF0EXAMPLE", 
    http_endpoint_enabled: false, 
    iam_database_authentication_enabled: false, 
    master_username: "admin", 
    multi_az: false, 
    port: 3306, 
    preferred_backup_window: "11:15-11:45", 
    preferred_maintenance_window: "thu:12:19-thu:12:49", 
    read_replica_identifiers: [
    ], 
    reader_endpoint: "cluster-s3-restore.cluster-ro-co3xyzabc123.us-west-2.rds.amazonaws.com", 
    status: "creating", 
    storage_encrypted: false, 
    vpc_security_groups: [
      {
        status: "active", 
        vpc_security_group_id: "sg-########", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.restore_db_cluster_from_s3({
  availability_zones: ["String"],
  backup_retention_period: 1,
  character_set_name: "String",
  database_name: "String",
  db_cluster_identifier: "String", # required
  db_cluster_parameter_group_name: "String",
  vpc_security_group_ids: ["String"],
  db_subnet_group_name: "String",
  engine: "String", # required
  engine_version: "String",
  port: 1,
  master_username: "String", # required
  master_user_password: "String",
  option_group_name: "String",
  preferred_backup_window: "String",
  preferred_maintenance_window: "String",
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  storage_encrypted: false,
  kms_key_id: "String",
  enable_iam_database_authentication: false,
  source_engine: "String", # required
  source_engine_version: "String", # required
  s3_bucket_name: "String", # required
  s3_prefix: "String",
  s3_ingestion_role_arn: "String", # required
  backtrack_window: 1,
  enable_cloudwatch_logs_exports: ["String"],
  deletion_protection: false,
  copy_tags_to_snapshot: false,
  domain: "String",
  domain_iam_role_name: "String",
  serverless_v2_scaling_configuration: {
    min_capacity: 1.0,
    max_capacity: 1.0,
    seconds_until_auto_pause: 1,
  },
  network_type: "String",
  manage_master_user_password: false,
  master_user_secret_kms_key_id: "String",
  storage_type: "String",
  engine_lifecycle_support: "String",
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :availability_zones (Array<String>)

    A list of Availability Zones (AZs) where instances in the restored DB cluster can be created.

  • :backup_retention_period (Integer)

    The number of days for which automated backups of the restored DB cluster are retained. You must specify a minimum value of 1.

    Default: 1

    Constraints:

    • Must be a value from 1 to 35

    ^

  • :character_set_name (String)

    A value that indicates that the restored DB cluster should be associated with the specified CharacterSet.

  • :database_name (String)

    The database name for the restored DB cluster.

  • :db_cluster_identifier (required, String)

    The name of the DB cluster to create from the source data in the Amazon S3 bucket. This parameter isn’t case-sensitive.

    Constraints:

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

    • First character must be a letter.

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

    Example: ‘my-cluster1`

  • :db_cluster_parameter_group_name (String)

    The name of the DB cluster parameter group to associate with the restored DB cluster. If this argument is omitted, the default parameter group for the engine version is used.

    Constraints:

    • If supplied, must match the name of an existing DBClusterParameterGroup.

    ^

  • :vpc_security_group_ids (Array<String>)

    A list of EC2 VPC security groups to associate with the restored DB cluster.

  • :db_subnet_group_name (String)

    A DB subnet group to associate with the restored DB cluster.

    Constraints: If supplied, must match the name of an existing DBSubnetGroup.

    Example: ‘mydbsubnetgroup`

  • :engine (required, String)

    The name of the database engine to be used for this DB cluster.

    Valid Values: ‘aurora-mysql` (for Aurora MySQL)

  • :engine_version (String)

    The version number of the database engine to use.

    To list all of the available engine versions for ‘aurora-mysql` (Aurora MySQL), use the following command:

    ‘aws rds describe-db-engine-versions –engine aurora-mysql –query “DBEngineVersions[].EngineVersion”`

    **Aurora MySQL**

    Examples: ‘5.7.mysql_aurora.2.12.0`, `8.0.mysql_aurora.3.04.0`

  • :port (Integer)

    The port number on which the instances in the restored DB cluster accept connections.

    Default: ‘3306`

  • :master_username (required, String)

    The name of the master user for the restored DB cluster.

    Constraints:

    • Must be 1 to 16 letters or numbers.

    • First character must be a letter.

    • Can’t be a reserved word for the chosen database engine.

  • :master_user_password (String)

    The password for the master database user. This password can contain any printable ASCII character except “/”, “”“, or ”@“.

    Constraints:

    • Must contain from 8 to 41 characters.

    • Can’t be specified if ‘ManageMasterUserPassword` is turned on.

  • :option_group_name (String)

    A value that indicates that the restored DB cluster should be associated with the specified option group.

    Permanent options can’t be removed from an option group. An option group can’t be removed from a DB cluster once it is associated with a DB cluster.

  • :preferred_backup_window (String)

    The daily time range during which automated backups are created if automated backups are enabled using the ‘BackupRetentionPeriod` parameter.

    The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. To view the time blocks available, see [ Backup window] in the *Amazon Aurora User Guide*.

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Managing.Backups.html#Aurora.Managing.Backups.BackupWindow

  • :preferred_maintenance_window (String)

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

    Format: ‘ddd:hh24:mi-ddd:hh24:mi`

    The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week. To see the time blocks available, see [ Adjusting the Preferred Maintenance Window] in the *Amazon Aurora User Guide*.

    Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun.

    Constraints: Minimum 30-minute window.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_UpgradeDBInstance.Maintenance.html#AdjustingTheMaintenanceWindow.Aurora

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

  • :storage_encrypted (Boolean)

    Specifies whether the restored DB cluster is encrypted.

  • :kms_key_id (String)

    The Amazon Web Services KMS key identifier for an encrypted DB cluster.

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

    If the StorageEncrypted parameter is enabled, and you do not specify a value for the ‘KmsKeyId` parameter, then Amazon RDS will use 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.

  • :enable_iam_database_authentication (Boolean)

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

    For more information, see [ IAM Database Authentication] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html

  • :source_engine (required, String)

    The identifier for the database engine that was backed up to create the files stored in the Amazon S3 bucket.

    Valid Values: ‘mysql`

  • :source_engine_version (required, String)

    The version of the database that the backup files were created from.

    MySQL versions 5.7 and 8.0 are supported.

    Example: ‘5.7.40`, `8.0.28`

  • :s3_bucket_name (required, String)

    The name of the Amazon S3 bucket that contains the data used to create the Amazon Aurora DB cluster.

  • :s3_prefix (String)

    The prefix for all of the file names that contain the data used to create the Amazon Aurora DB cluster. If you do not specify a SourceS3Prefix value, then the Amazon Aurora DB cluster is created by using all of the files in the Amazon S3 bucket.

  • :s3_ingestion_role_arn (required, String)

    The Amazon Resource Name (ARN) of the Amazon Web Services Identity and Access Management (IAM) role that authorizes Amazon RDS to access the Amazon S3 bucket on your behalf.

  • :backtrack_window (Integer)

    The target backtrack window, in seconds. To disable backtracking, set this value to 0.

    <note markdown=“1”> Currently, Backtrack is only supported for Aurora MySQL DB clusters.

    </note>
    

    Default: 0

    Constraints:

    • If specified, this value must be set to a number from 0 to 259,200 (72 hours).

    ^

  • :enable_cloudwatch_logs_exports (Array<String>)

    The list of logs that the restored DB cluster is to export to CloudWatch Logs. The values in the list depend on the DB engine being used.

    **Aurora MySQL**

    Possible values are ‘audit`, `error`, `general`, and `slowquery`.

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :deletion_protection (Boolean)

    Specifies whether to enable deletion protection for the DB cluster. The database can’t be deleted when deletion protection is enabled. By default, deletion protection isn’t enabled.

  • :copy_tags_to_snapshot (Boolean)

    Specifies whether to copy all tags from the restored DB cluster to snapshots of the restored DB cluster. The default is not to copy them.

  • :domain (String)

    Specify the Active Directory directory ID to restore the DB cluster in. The domain must be created prior to this operation.

    For Amazon Aurora DB clusters, Amazon RDS can use Kerberos Authentication to authenticate users that connect to the DB cluster. For more information, see [Kerberos Authentication] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/kerberos-authentication.html

  • :domain_iam_role_name (String)

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

  • :serverless_v2_scaling_configuration (Types::ServerlessV2ScalingConfiguration)

    Contains the scaling configuration of an Aurora Serverless v2 DB cluster.

    For more information, see [Using Amazon Aurora Serverless v2] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.html

  • :network_type (String)

    The network type of the DB cluster.

    Valid Values:

    • ‘IPV4`

    • ‘DUAL`

    The network type is determined by the ‘DBSubnetGroup` specified for the DB cluster. 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 Aurora User Guide.*

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :manage_master_user_password (Boolean)

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

    For more information, see [Password management with Amazon Web Services Secrets Manager] in the *Amazon RDS User Guide* and

    Password management with Amazon Web Services Secrets Manager][2

    in

    the *Amazon Aurora User Guide.*

    Constraints:

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

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html

  • :master_user_secret_kms_key_id (String)

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

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

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

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

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

  • :storage_type (String)

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

    Valid Values: ‘aurora`, `aurora-iopt1`

    Default: ‘aurora`

    Valid for: Aurora DB clusters only

  • :engine_lifecycle_support (String)

    The life cycle type for this DB cluster.

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

    </note>
    

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

    • Amazon Aurora - [Using Amazon RDS Extended Support] in the *Amazon Aurora User Guide*

    • Amazon RDS - [Using Amazon RDS Extended Support] in the *Amazon RDS User Guide*

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

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

    Default: ‘open-source-rds-extended-support`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/extended-support.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html

Returns:

See Also:



25479
25480
25481
25482
# File 'lib/aws-sdk-rds/client.rb', line 25479

def restore_db_cluster_from_s3(params = {}, options = {})
  req = build_request(:restore_db_cluster_from_s3, params)
  req.send_request(options)
end

#restore_db_cluster_from_snapshot(params = {}) ⇒ Types::RestoreDBClusterFromSnapshotResult

Creates a new DB cluster from a DB snapshot or DB cluster snapshot.

The target DB cluster is created from the source snapshot with a default configuration. If you don’t specify a security group, the new DB cluster is associated with the default security group.

<note markdown=“1”> This operation only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the ‘CreateDBInstance` operation 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 `RestoreDBClusterFromSnapshot` operation has completed and the DB cluster is available.

</note>

For more information on Amazon Aurora DB clusters, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To restore a DB cluster from a snapshot


# The following example restores an Aurora PostgreSQL DB cluster compatible with PostgreSQL version 10.7 from a DB cluster
# snapshot named test-instance-snapshot.

resp = client.restore_db_cluster_from_snapshot({
  db_cluster_identifier: "newdbcluster", 
  engine: "aurora-postgresql", 
  engine_version: "10.7", 
  snapshot_identifier: "test-instance-snapshot", 
})

resp.to_h outputs the following:
{
  db_cluster: {
    allocated_storage: 1, 
    associated_roles: [
    ], 
    availability_zones: [
      "us-west-2c", 
      "us-west-2a", 
      "us-west-2b", 
    ], 
    backup_retention_period: 7, 
    cluster_create_time: Time.parse("2020-06-05T15:06:58.634Z"), 
    copy_tags_to_snapshot: false, 
    cross_account_clone: false, 
    db_cluster_arn: "arn:aws:rds:us-west-2:123456789012:cluster:newdbcluster", 
    db_cluster_identifier: "newdbcluster", 
    db_cluster_members: [
    ], 
    db_cluster_parameter_group: "default.aurora-postgresql10", 
    db_subnet_group: "default", 
    database_name: "", 
    db_cluster_resource_id: "cluster-5DSB5IFQDDUVAWOUWM1EXAMPLE", 
    deletion_protection: false, 
    domain_memberships: [
    ], 
    endpoint: "newdbcluster.cluster-############.us-west-2.rds.amazonaws.com", 
    engine: "aurora-postgresql", 
    engine_mode: "provisioned", 
    engine_version: "10.7", 
    hosted_zone_id: "Z1PVIF0EXAMPLE", 
    http_endpoint_enabled: false, 
    iam_database_authentication_enabled: false, 
    kms_key_id: "arn:aws:kms:us-west-2:123456789012:key/287364e4-33e3-4755-a3b0-a1b2c3d4e5f6", 
    master_username: "postgres", 
    multi_az: false, 
    port: 5432, 
    preferred_backup_window: "09:33-10:03", 
    preferred_maintenance_window: "sun:12:22-sun:12:52", 
    read_replica_identifiers: [
    ], 
    reader_endpoint: "newdbcluster.cluster-ro-############.us-west-2.rds.amazonaws.com", 
    status: "creating", 
    storage_encrypted: true, 
    vpc_security_groups: [
      {
        status: "active", 
        vpc_security_group_id: "sg-########", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.restore_db_cluster_from_snapshot({
  availability_zones: ["String"],
  db_cluster_identifier: "String", # required
  snapshot_identifier: "String", # required
  engine: "String", # required
  engine_version: "String",
  port: 1,
  db_subnet_group_name: "String",
  database_name: "String",
  option_group_name: "String",
  vpc_security_group_ids: ["String"],
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  kms_key_id: "String",
  enable_iam_database_authentication: false,
  backtrack_window: 1,
  enable_cloudwatch_logs_exports: ["String"],
  engine_mode: "String",
  scaling_configuration: {
    min_capacity: 1,
    max_capacity: 1,
    auto_pause: false,
    seconds_until_auto_pause: 1,
    timeout_action: "String",
    seconds_before_timeout: 1,
  },
  db_cluster_parameter_group_name: "String",
  deletion_protection: false,
  copy_tags_to_snapshot: false,
  domain: "String",
  domain_iam_role_name: "String",
  db_cluster_instance_class: "String",
  storage_type: "String",
  iops: 1,
  publicly_accessible: false,
  serverless_v2_scaling_configuration: {
    min_capacity: 1.0,
    max_capacity: 1.0,
    seconds_until_auto_pause: 1,
  },
  network_type: "String",
  rds_custom_cluster_configuration: {
    interconnect_subnet_id: "String",
    transit_gateway_multicast_domain_id: "String",
    replica_mode: "open-read-only", # accepts open-read-only, mounted
  },
  monitoring_interval: 1,
  monitoring_role_arn: "String",
  enable_performance_insights: false,
  performance_insights_kms_key_id: "String",
  performance_insights_retention_period: 1,
  engine_lifecycle_support: "String",
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :availability_zones (Array<String>)

    Provides the list of Availability Zones (AZs) where instances in the restored DB cluster can be created.

    Valid for: Aurora DB clusters only

  • :db_cluster_identifier (required, String)

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

    Constraints:

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

    • First character must be a letter

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

    Example: ‘my-snapshot-id`

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :snapshot_identifier (required, String)

    The identifier for the DB snapshot or DB cluster snapshot to restore from.

    You can use either the name or the Amazon Resource Name (ARN) to specify a DB cluster snapshot. However, you can use only the ARN to specify a DB snapshot.

    Constraints:

    • Must match the identifier of an existing Snapshot.

    ^

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :engine (required, String)

    The database engine to use for the new DB cluster.

    Default: The same as source

    Constraint: Must be compatible with the engine of the source

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :engine_version (String)

    The version of the database engine to use for the new DB cluster. If you don’t specify an engine version, the default version for the database engine in the Amazon Web Services Region is used.

    To list all of the available engine versions for Aurora MySQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine aurora-mysql –query “DBEngineVersions[].EngineVersion”`

    To list all of the available engine versions for Aurora PostgreSQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine aurora-postgresql –query “DBEngineVersions[].EngineVersion”`

    To list all of the available engine versions for RDS for MySQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine mysql –query “DBEngineVersions[].EngineVersion”`

    To list all of the available engine versions for RDS for PostgreSQL, use the following command:

    ‘aws rds describe-db-engine-versions –engine postgres –query “DBEngineVersions[].EngineVersion”`

    **Aurora MySQL**

    See [Database engine updates for Amazon Aurora MySQL] in the *Amazon Aurora User Guide*.

    **Aurora PostgreSQL**

    See [Amazon Aurora PostgreSQL releases and engine versions] in the *Amazon Aurora User Guide*.

    MySQL

    See [Amazon RDS for MySQL] in the *Amazon RDS User Guide.*

    PostgreSQL

    See [Amazon RDS for PostgreSQL versions and extensions] in the *Amazon RDS User Guide.*

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Updates.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Updates.20180305.html [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html#MySQL.Concepts.VersionMgmt [4]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts

  • :port (Integer)

    The port number on which the new DB cluster accepts connections.

    Constraints: This value must be ‘1150-65535`

    Default: The same port as the original DB cluster.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :db_subnet_group_name (String)

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

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

    Example: ‘mydbsubnetgroup`

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :database_name (String)

    The database name for the restored DB cluster.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :option_group_name (String)

    The name of the option group to use for the restored DB cluster.

    DB clusters are associated with a default option group that can’t be modified.

  • :vpc_security_group_ids (Array<String>)

    A list of VPC security groups that the new DB cluster will belong to.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :tags (Array<Types::Tag>)

    The tags to be assigned to the restored DB cluster.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :kms_key_id (String)

    The Amazon Web Services KMS key identifier to use when restoring an encrypted DB cluster from a DB snapshot or DB cluster snapshot.

    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.

    When you don’t specify a value for the ‘KmsKeyId` parameter, then the following occurs:

    • If the DB snapshot or DB cluster snapshot in ‘SnapshotIdentifier` is encrypted, then the restored DB cluster is encrypted using the KMS key that was used to encrypt the DB snapshot or DB cluster snapshot.

    • If the DB snapshot or DB cluster snapshot in ‘SnapshotIdentifier` isn’t encrypted, then the restored DB cluster isn’t encrypted.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :enable_iam_database_authentication (Boolean)

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

    For more information, see [ IAM Database Authentication] in the *Amazon Aurora User Guide* or [ IAM database authentication for MariaDB, MySQL, and PostgreSQL] in the *Amazon RDS User Guide*.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html

  • :backtrack_window (Integer)

    The target backtrack window, in seconds. To disable backtracking, set this value to 0.

    <note markdown=“1”> Currently, Backtrack is only supported for Aurora MySQL DB clusters.

    </note>
    

    Default: 0

    Constraints:

    • If specified, this value must be set to a number from 0 to 259,200 (72 hours).

    ^

    Valid for: Aurora DB clusters only

  • :enable_cloudwatch_logs_exports (Array<String>)

    The list of logs that the restored DB cluster is to export to Amazon CloudWatch Logs. The values in the list depend on the DB engine being used.

    **RDS for MySQL**

    Possible values are ‘error`, `general`, and `slowquery`.

    **RDS for PostgreSQL**

    Possible values are ‘postgresql` and `upgrade`.

    **Aurora MySQL**

    Possible values are ‘audit`, `error`, `general`, and `slowquery`.

    **Aurora PostgreSQL**

    Possible value is ‘postgresql`.

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

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :engine_mode (String)

    The DB engine mode of the DB cluster, either ‘provisioned` or `serverless`.

    For more information, see [ CreateDBCluster].

    Valid for: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html

  • :scaling_configuration (Types::ScalingConfiguration)

    For DB clusters in ‘serverless` DB engine mode, the scaling properties of the DB cluster.

    Valid for: Aurora DB clusters only

  • :db_cluster_parameter_group_name (String)

    The name of the DB cluster parameter group to associate with this DB cluster. If this argument is omitted, the default DB cluster parameter group for the specified engine is used.

    Constraints:

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

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

    • First character must be a letter.

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

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :deletion_protection (Boolean)

    Specifies whether to enable deletion protection for the DB cluster. The database can’t be deleted when deletion protection is enabled. By default, deletion protection isn’t enabled.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :copy_tags_to_snapshot (Boolean)

    Specifies whether to copy all tags from the restored DB cluster to snapshots of the restored DB cluster. The default is not to copy them.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :domain (String)

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

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

    Valid for: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html

  • :domain_iam_role_name (String)

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

    Valid for: Aurora DB clusters only

  • :db_cluster_instance_class (String)

    The compute and memory capacity of the each DB instance in the Multi-AZ DB cluster, for example db.m6gd.xlarge. 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.*

    Valid for: Multi-AZ DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html

  • :storage_type (String)

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

    When specified for a Multi-AZ DB cluster, a value for the ‘Iops` parameter is required.

    Valid Values: ‘aurora`, `aurora-iopt1` (Aurora DB clusters); `io1` (Multi-AZ DB clusters)

    Default: ‘aurora` (Aurora DB clusters); `io1` (Multi-AZ DB clusters)

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :iops (Integer)

    The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster.

    For information about valid IOPS values, see [Amazon RDS Provisioned IOPS storage] in the *Amazon RDS User Guide*.

    Constraints: Must be a multiple between .5 and 50 of the storage amount for the DB instance.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS

  • :publicly_accessible (Boolean)

    Specifies whether the DB cluster is publicly accessible.

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

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

    Default: The default behavior varies depending on whether ‘DBSubnetGroupName` is specified.

    If ‘DBSubnetGroupName` isn’t specified, and ‘PubliclyAccessible` isn’t specified, the following applies:

    • If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB cluster is private.

    • If the default VPC in the target Region has an internet gateway attached to it, the DB cluster is public.

    If ‘DBSubnetGroupName` is specified, and `PubliclyAccessible` isn’t specified, the following applies:

    • If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB cluster is private.

    • If the subnets are part of a VPC that has an internet gateway attached to it, the DB cluster is public.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :serverless_v2_scaling_configuration (Types::ServerlessV2ScalingConfiguration)

    Contains the scaling configuration of an Aurora Serverless v2 DB cluster.

    For more information, see [Using Amazon Aurora Serverless v2] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.html

  • :network_type (String)

    The network type of the DB cluster.

    Valid Values:

    • ‘IPV4`

    • ‘DUAL`

    The network type is determined by the ‘DBSubnetGroup` specified for the DB cluster. 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 Aurora User Guide.*

    Valid for: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :rds_custom_cluster_configuration (Types::RdsCustomClusterConfiguration)

    Reserved for future use.

  • :monitoring_interval (Integer)

    The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. To turn off collecting Enhanced Monitoring metrics, specify ‘0`.

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

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

    Default: ‘0`

  • :monitoring_role_arn (String)

    The Amazon Resource Name (ARN) for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs. An example is ‘arn:aws:iam:123456789012:role/emaccess`.

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

  • :enable_performance_insights (Boolean)

    Specifies whether to turn on Performance Insights for the DB cluster.

  • :performance_insights_kms_key_id (String)

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

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

    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.

  • :performance_insights_retention_period (Integer)

    The number of days to retain Performance Insights data.

    Valid Values:

    • ‘7`

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

    • ‘731`

    Default: ‘7` days

    If you specify a retention period that isn’t valid, such as ‘94`, Amazon RDS issues an error.

  • :engine_lifecycle_support (String)

    The life cycle type for this DB cluster.

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

    </note>
    

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

    • Amazon Aurora - [Using Amazon RDS Extended Support] in the *Amazon Aurora User Guide*

    • Amazon RDS - [Using Amazon RDS Extended Support] in the *Amazon RDS User Guide*

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

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

    Default: ‘open-source-rds-extended-support`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/extended-support.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html

Returns:

See Also:



26301
26302
26303
26304
# File 'lib/aws-sdk-rds/client.rb', line 26301

def restore_db_cluster_from_snapshot(params = {}, options = {})
  req = build_request(:restore_db_cluster_from_snapshot, params)
  req.send_request(options)
end

#restore_db_cluster_to_point_in_time(params = {}) ⇒ Types::RestoreDBClusterToPointInTimeResult

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.

<note markdown=“1”> For Aurora, this operation only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the ‘CreateDBInstance` operation 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` operation has completed and the DB cluster is available.

</note>

For more information on Amazon Aurora DB clusters, see [ What is Amazon Aurora?] in the *Amazon Aurora User Guide*.

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

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

Examples:

Example: To restore a DB cluster to a specified time


# The following example restores the DB cluster named database-4 to the latest possible time. Using copy-on-write as the
# restore type restores the new DB cluster as a clone of the source DB cluster.

resp = client.restore_db_cluster_to_point_in_time({
  db_cluster_identifier: "sample-cluster-clone", 
  restore_type: "copy-on-write", 
  source_db_cluster_identifier: "database-4", 
  use_latest_restorable_time: true, 
})

resp.to_h outputs the following:
{
  db_cluster: {
    allocated_storage: 1, 
    associated_roles: [
    ], 
    availability_zones: [
      "us-west-2c", 
      "us-west-2a", 
      "us-west-2b", 
    ], 
    backup_retention_period: 7, 
    clone_group_id: "8d19331a-099a-45a4-b4aa-11aa22bb33cc44dd", 
    cluster_create_time: Time.parse("2020-03-10T19:57:38.967Z"), 
    copy_tags_to_snapshot: false, 
    cross_account_clone: false, 
    db_cluster_arn: "arn:aws:rds:us-west-2:123456789012:cluster:sample-cluster-clone", 
    db_cluster_identifier: "sample-cluster-clone", 
    db_cluster_members: [
    ], 
    db_cluster_parameter_group: "default.aurora-postgresql10", 
    db_subnet_group: "default", 
    database_name: "", 
    db_cluster_resource_id: "cluster-BIZ77GDSA2XBSTNPFW1EXAMPLE", 
    deletion_protection: false, 
    endpoint: "sample-cluster-clone.cluster-############.us-west-2.rds.amazonaws.com", 
    engine: "aurora-postgresql", 
    engine_mode: "provisioned", 
    engine_version: "10.7", 
    hosted_zone_id: "Z1PVIF0EXAMPLE", 
    http_endpoint_enabled: false, 
    iam_database_authentication_enabled: false, 
    kms_key_id: "arn:aws:kms:us-west-2:123456789012:key/287364e4-33e3-4755-a3b0-a1b2c3d4e5f6", 
    master_username: "postgres", 
    multi_az: false, 
    port: 5432, 
    preferred_backup_window: "09:33-10:03", 
    preferred_maintenance_window: "sun:12:22-sun:12:52", 
    read_replica_identifiers: [
    ], 
    reader_endpoint: "sample-cluster-clone.cluster-ro-############.us-west-2.rds.amazonaws.com", 
    status: "creating", 
    storage_encrypted: true, 
    vpc_security_groups: [
      {
        status: "active", 
        vpc_security_group_id: "sg-########", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.restore_db_cluster_to_point_in_time({
  db_cluster_identifier: "String", # required
  restore_type: "String",
  source_db_cluster_identifier: "String",
  restore_to_time: Time.now,
  use_latest_restorable_time: false,
  port: 1,
  db_subnet_group_name: "String",
  option_group_name: "String",
  vpc_security_group_ids: ["String"],
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  kms_key_id: "String",
  enable_iam_database_authentication: false,
  backtrack_window: 1,
  enable_cloudwatch_logs_exports: ["String"],
  db_cluster_parameter_group_name: "String",
  deletion_protection: false,
  copy_tags_to_snapshot: false,
  domain: "String",
  domain_iam_role_name: "String",
  scaling_configuration: {
    min_capacity: 1,
    max_capacity: 1,
    auto_pause: false,
    seconds_until_auto_pause: 1,
    timeout_action: "String",
    seconds_before_timeout: 1,
  },
  engine_mode: "String",
  db_cluster_instance_class: "String",
  storage_type: "String",
  publicly_accessible: false,
  iops: 1,
  serverless_v2_scaling_configuration: {
    min_capacity: 1.0,
    max_capacity: 1.0,
    seconds_until_auto_pause: 1,
  },
  network_type: "String",
  source_db_cluster_resource_id: "String",
  rds_custom_cluster_configuration: {
    interconnect_subnet_id: "String",
    transit_gateway_multicast_domain_id: "String",
    replica_mode: "open-read-only", # accepts open-read-only, mounted
  },
  monitoring_interval: 1,
  monitoring_role_arn: "String",
  enable_performance_insights: false,
  performance_insights_kms_key_id: "String",
  performance_insights_retention_period: 1,
  engine_lifecycle_support: "String",
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The name of the new DB cluster to be created.

    Constraints:

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

    • First character must be a letter

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

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :restore_type (String)

    The type of restore to be performed. You can specify one of the following values:

    • ‘full-copy` - The new DB cluster is restored as a full copy of the source DB cluster.

    • ‘copy-on-write` - The new DB cluster is restored as a clone of the source DB cluster.

    If you don’t specify a ‘RestoreType` value, then the new DB cluster is restored as a full copy of the source DB cluster.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :source_db_cluster_identifier (String)

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

    Constraints:

    • Must match the identifier of an existing DBCluster.

    ^

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :restore_to_time (Time, DateTime, Date, Integer, String)

    The date and time to restore the DB cluster to.

    Valid Values: Value must be a time in Universal Coordinated Time (UTC) format

    Constraints:

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

    • Must be specified if ‘UseLatestRestorableTime` parameter isn’t provided

    • Can’t be specified if the ‘UseLatestRestorableTime` parameter is enabled

    • Can’t be specified if the ‘RestoreType` parameter is `copy-on-write`

    Example: ‘2015-03-07T23:45:00Z`

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :use_latest_restorable_time (Boolean)

    Specifies whether to restore the DB cluster to the latest restorable backup time. By default, the DB cluster isn’t restored to the latest restorable backup time.

    Constraints: Can’t be specified if ‘RestoreToTime` parameter is provided.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :port (Integer)

    The port number on which the new DB cluster accepts connections.

    Constraints: A value from ‘1150-65535`.

    Default: The default port for the engine.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :db_subnet_group_name (String)

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

    Constraints: If supplied, must match the name of an existing DBSubnetGroup.

    Example: ‘mydbsubnetgroup`

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :option_group_name (String)

    The name of the option group for the new DB cluster.

    DB clusters are associated with a default option group that can’t be modified.

  • :vpc_security_group_ids (Array<String>)

    A list of VPC security groups that the new DB cluster belongs to.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

  • :kms_key_id (String)

    The Amazon Web Services KMS key identifier to use when restoring an encrypted DB cluster from an encrypted DB cluster.

    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.

    You can restore to a new DB cluster and encrypt the new DB cluster with a KMS key that is different from the KMS key used to encrypt the source DB cluster. The new DB cluster is encrypted with the KMS key identified by the ‘KmsKeyId` parameter.

    If you don’t specify a value for the ‘KmsKeyId` parameter, then the following occurs:

    • If the DB cluster is encrypted, then the restored DB cluster is encrypted using the KMS key that was used to encrypt the source DB cluster.

    • If the DB cluster isn’t encrypted, then the restored DB cluster isn’t encrypted.

    If ‘DBClusterIdentifier` refers to a DB cluster that isn’t encrypted, then the restore request is rejected.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :enable_iam_database_authentication (Boolean)

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

    For more information, see [ IAM Database Authentication] in the *Amazon Aurora User Guide* or [ IAM database authentication for MariaDB, MySQL, and PostgreSQL] in the *Amazon RDS User Guide*.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html

  • :backtrack_window (Integer)

    The target backtrack window, in seconds. To disable backtracking, set this value to 0.

    Default: 0

    Constraints:

    • If specified, this value must be set to a number from 0 to 259,200 (72 hours).

    ^

    Valid for: Aurora MySQL DB clusters only

  • :enable_cloudwatch_logs_exports (Array<String>)

    The list of logs that the restored DB cluster is to export to CloudWatch Logs. The values in the list depend on the DB engine being used.

    **RDS for MySQL**

    Possible values are ‘error`, `general`, and `slowquery`.

    **RDS for PostgreSQL**

    Possible values are ‘postgresql` and `upgrade`.

    **Aurora MySQL**

    Possible values are ‘audit`, `error`, `general`, and `slowquery`.

    **Aurora PostgreSQL**

    Possible value is ‘postgresql`.

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

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :db_cluster_parameter_group_name (String)

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

    If the ‘DBClusterParameterGroupName` parameter is omitted, the default DB cluster parameter group for the specified engine is used.

    Constraints:

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

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

    • First character must be a letter.

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

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :deletion_protection (Boolean)

    Specifies whether to enable deletion protection for the DB cluster. The database can’t be deleted when deletion protection is enabled. By default, deletion protection isn’t enabled.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :copy_tags_to_snapshot (Boolean)

    Specifies whether to copy all tags from the restored DB cluster to snapshots of the restored DB cluster. The default is not to copy them.

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :domain (String)

    The Active Directory directory ID to restore the DB cluster in. The domain must be created prior to this operation.

    For Amazon Aurora DB clusters, Amazon RDS can use Kerberos Authentication to authenticate users that connect to the DB cluster. For more information, see [Kerberos Authentication] in the *Amazon Aurora User Guide*.

    Valid for: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/kerberos-authentication.html

  • :domain_iam_role_name (String)

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

    Valid for: Aurora DB clusters only

  • :scaling_configuration (Types::ScalingConfiguration)

    For DB clusters in ‘serverless` DB engine mode, the scaling properties of the DB cluster.

    Valid for: Aurora DB clusters only

  • :engine_mode (String)

    The engine mode of the new cluster. Specify ‘provisioned` or `serverless`, depending on the type of the cluster you are creating. You can create an Aurora Serverless v1 clone from a provisioned cluster, or a provisioned clone from an Aurora Serverless v1 cluster. To create a clone that is an Aurora Serverless v1 cluster, the original cluster must be an Aurora Serverless v1 cluster or an encrypted provisioned cluster. To create a full copy that is an Aurora Serverless v1 cluster, specify the engine mode `serverless`.

    Valid for: Aurora DB clusters only

  • :db_cluster_instance_class (String)

    The compute and memory capacity of the each DB instance in the Multi-AZ DB cluster, for example db.m6gd.xlarge. 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*.

    Valid for: Multi-AZ DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html

  • :storage_type (String)

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

    When specified for a Multi-AZ DB cluster, a value for the ‘Iops` parameter is required.

    Valid Values: ‘aurora`, `aurora-iopt1` (Aurora DB clusters); `io1` (Multi-AZ DB clusters)

    Default: ‘aurora` (Aurora DB clusters); `io1` (Multi-AZ DB clusters)

    Valid for: Aurora DB clusters and Multi-AZ DB clusters

  • :publicly_accessible (Boolean)

    Specifies whether the DB cluster is publicly accessible.

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

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

    Default: The default behavior varies depending on whether ‘DBSubnetGroupName` is specified.

    If ‘DBSubnetGroupName` isn’t specified, and ‘PubliclyAccessible` isn’t specified, the following applies:

    • If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB cluster is private.

    • If the default VPC in the target Region has an internet gateway attached to it, the DB cluster is public.

    If ‘DBSubnetGroupName` is specified, and `PubliclyAccessible` isn’t specified, the following applies:

    • If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB cluster is private.

    • If the subnets are part of a VPC that has an internet gateway attached to it, the DB cluster is public.

    Valid for: Multi-AZ DB clusters only

  • :iops (Integer)

    The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster.

    For information about valid IOPS values, see [Amazon RDS Provisioned IOPS storage] in the *Amazon RDS User Guide*.

    Constraints: Must be a multiple between .5 and 50 of the storage amount for the DB instance.

    Valid for: Multi-AZ DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS

  • :serverless_v2_scaling_configuration (Types::ServerlessV2ScalingConfiguration)

    Contains the scaling configuration of an Aurora Serverless v2 DB cluster.

    For more information, see [Using Amazon Aurora Serverless v2] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.html

  • :network_type (String)

    The network type of the DB cluster.

    Valid Values:

    • ‘IPV4`

    • ‘DUAL`

    The network type is determined by the ‘DBSubnetGroup` specified for the DB cluster. 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 Aurora User Guide.*

    Valid for: Aurora DB clusters only

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :source_db_cluster_resource_id (String)

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

  • :rds_custom_cluster_configuration (Types::RdsCustomClusterConfiguration)

    Reserved for future use.

  • :monitoring_interval (Integer)

    The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. To turn off collecting Enhanced Monitoring metrics, specify ‘0`.

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

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

    Default: ‘0`

  • :monitoring_role_arn (String)

    The Amazon Resource Name (ARN) for the IAM role that permits RDS to send Enhanced Monitoring metrics to Amazon CloudWatch Logs. An example is ‘arn:aws:iam:123456789012:role/emaccess`.

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

  • :enable_performance_insights (Boolean)

    Specifies whether to turn on Performance Insights for the DB cluster.

  • :performance_insights_kms_key_id (String)

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

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

    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.

  • :performance_insights_retention_period (Integer)

    The number of days to retain Performance Insights data.

    Valid Values:

    • ‘7`

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

    • ‘731`

    Default: ‘7` days

    If you specify a retention period that isn’t valid, such as ‘94`, Amazon RDS issues an error.

  • :engine_lifecycle_support (String)

    The life cycle type for this DB cluster.

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

    </note>
    

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

    • Amazon Aurora - [Using Amazon RDS Extended Support] in the *Amazon Aurora User Guide*

    • Amazon RDS - [Using Amazon RDS Extended Support] in the *Amazon RDS User Guide*

    Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

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

    Default: ‘open-source-rds-extended-support`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/extended-support.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html

Returns:

See Also:



27103
27104
27105
27106
# File 'lib/aws-sdk-rds/client.rb', line 27103

def restore_db_cluster_to_point_in_time(params = {}, options = {})
  req = build_request(:restore_db_cluster_to_point_in_time, params)
  req.send_request(options)
end

#restore_db_instance_from_db_snapshot(params = {}) ⇒ Types::RestoreDBInstanceFromDBSnapshotResult

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

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

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

To restore from a DB snapshot with an unsupported engine version, you must first upgrade the engine version of the snapshot. For more information about upgrading a RDS for MySQL DB snapshot engine version, see [Upgrading a MySQL DB snapshot engine version]. For more information about upgrading a RDS for PostgreSQL DB snapshot engine version, [Upgrading a PostgreSQL DB snapshot engine version].

<note markdown=“1”> This command doesn’t apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use ‘RestoreDBClusterFromSnapshot`.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mysql-upgrade-snapshot.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBSnapshot.PostgreSQL.html

Examples:

Example: To restore a DB instance from a DB snapshot


# The following example creates a new DB instance named db7-new-instance with the db.t3.small DB instance class from the
# specified DB snapshot. The source DB instance from which the snapshot was taken uses a deprecated DB instance class, so
# you can't upgrade it.

resp = client.restore_db_instance_from_db_snapshot({
  db_instance_class: "db.t3.small", 
  db_instance_identifier: "db7-new-instance", 
  db_snapshot_identifier: "db7-test-snapshot", 
})

resp.to_h outputs the following:
{
  db_instance: {
    associated_roles: [
    ], 
    auto_minor_version_upgrade: true, 
    db_instance_arn: "arn:aws:rds:us-west-2:123456789012:db:db7-new-instance", 
    db_instance_class: "db.t3.small", 
    db_instance_identifier: "db7-new-instance", 
    db_instance_status: "creating", 
    deletion_protection: false, 
    engine: "mysql", 
    engine_version: "5.7.22", 
    iam_database_authentication_enabled: false, 
    license_model: "general-public-license", 
    multi_az: false, 
    pending_modified_values: {
    }, 
    performance_insights_enabled: false, 
    preferred_maintenance_window: "mon:07:37-mon:08:07", 
    read_replica_db_instance_identifiers: [
    ], 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.restore_db_instance_from_db_snapshot({
  db_instance_identifier: "String", # required
  db_snapshot_identifier: "String",
  db_instance_class: "String",
  port: 1,
  availability_zone: "String",
  db_subnet_group_name: "String",
  multi_az: false,
  publicly_accessible: false,
  auto_minor_version_upgrade: false,
  license_model: "String",
  db_name: "String",
  engine: "String",
  iops: 1,
  option_group_name: "String",
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  storage_type: "String",
  tde_credential_arn: "String",
  tde_credential_password: "String",
  vpc_security_group_ids: ["String"],
  domain: "String",
  domain_fqdn: "String",
  domain_ou: "String",
  domain_auth_secret_arn: "String",
  domain_dns_ips: ["String"],
  copy_tags_to_snapshot: false,
  domain_iam_role_name: "String",
  enable_iam_database_authentication: false,
  enable_cloudwatch_logs_exports: ["String"],
  processor_features: [
    {
      name: "String",
      value: "String",
    },
  ],
  use_default_processor_features: false,
  db_parameter_group_name: "String",
  deletion_protection: false,
  enable_customer_owned_ip: false,
  custom_iam_instance_profile: "String",
  backup_target: "String",
  network_type: "String",
  storage_throughput: 1,
  db_cluster_snapshot_identifier: "String",
  allocated_storage: 1,
  dedicated_log_volume: false,
  ca_certificate_identifier: "String",
  engine_lifecycle_support: "String",
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

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

    Constraints:

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

    • First character must be a letter.

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

    Example: ‘my-snapshot-id`

  • :db_snapshot_identifier (String)

    The identifier for the DB snapshot to restore from.

    Constraints:

    • Must match the identifier of an existing DB snapshot.

    • Can’t be specified when ‘DBClusterSnapshotIdentifier` is specified.

    • Must be specified when ‘DBClusterSnapshotIdentifier` isn’t specified.

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

  • :db_instance_class (String)

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

    Default: The same DBInstanceClass as the original DB instance.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html

  • :port (Integer)

    The port number on which the database accepts connections.

    Default: The same port as the original DB instance

    Constraints: Value must be ‘1150-65535`

  • :availability_zone (String)

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

    Default: A random, system-chosen Availability Zone.

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

    Example: ‘us-east-1a`

  • :db_subnet_group_name (String)

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

    Constraints:

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

    ^

    Example: ‘mydbsubnetgroup`

  • :multi_az (Boolean)

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

    This setting doesn’t apply to RDS Custom.

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

  • :publicly_accessible (Boolean)

    Specifies whether the DB instance is publicly accessible.

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

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

    For more information, see CreateDBInstance.

  • :auto_minor_version_upgrade (Boolean)

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

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

  • :license_model (String)

    License model information for the restored DB instance.

    <note markdown=“1”> License models for RDS for Db2 require additional configuration. The Bring Your Own License (BYOL) model requires a custom parameter group and an Amazon Web Services License Manager self-managed license. The Db2 license through Amazon Web Services Marketplace model requires an Amazon Web Services Marketplace subscription. For more information, see [Amazon RDS for Db2 licensing options] in the *Amazon RDS User Guide*.

    </note>
    

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

    Valid Values:

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

    • RDS for MariaDB - ‘general-public-license`

    • RDS for Microsoft SQL Server - ‘license-included`

    • RDS for MySQL - ‘general-public-license`

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

    • RDS for PostgreSQL - ‘postgresql-license`

    Default: Same as the source.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-licensing.html

  • :db_name (String)

    The name of the database for the restored DB instance.

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

  • :engine (String)

    The database engine to use for the new instance.

    This setting doesn’t apply to RDS Custom.

    Default: The same as source

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

    Valid Values:

    • ‘db2-ae`

    • ‘db2-se`

    • ‘mariadb`

    • ‘mysql`

    • ‘oracle-ee`

    • ‘oracle-ee-cdb`

    • ‘oracle-se2`

    • ‘oracle-se2-cdb`

    • ‘postgres`

    • ‘sqlserver-ee`

    • ‘sqlserver-se`

    • ‘sqlserver-ex`

    • ‘sqlserver-web`

  • :iops (Integer)

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

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

    Constraints: Must be an integer greater than 1000.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS

  • :option_group_name (String)

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

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

    This setting doesn’t apply to RDS Custom.

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

  • :storage_type (String)

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

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

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

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

  • :tde_credential_arn (String)

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

    This setting doesn’t apply to RDS Custom.

  • :tde_credential_password (String)

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

    This setting doesn’t apply to RDS Custom.

  • :vpc_security_group_ids (Array<String>)

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

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

  • :domain (String)

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

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

    This setting doesn’t apply to RDS Custom.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html

  • :domain_fqdn (String)

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

    Constraints:

    • Can’t be longer than 64 characters.

    ^

    Example: ‘mymanagedADtest.mymanagedAD.mydomain`

  • :domain_ou (String)

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

    Constraints:

    • Must be in the distinguished name format.

    • Can’t be longer than 64 characters.

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

  • :domain_auth_secret_arn (String)

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

    Constraints:

    • Can’t be longer than 64 characters.

    ^

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

  • :domain_dns_ips (Array<String>)

    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`

  • :copy_tags_to_snapshot (Boolean)

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

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html#USER_Tagging.CopyTags

  • :domain_iam_role_name (String)

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

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

  • :enable_iam_database_authentication (Boolean)

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

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

    This setting doesn’t apply to RDS Custom.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html

  • :enable_cloudwatch_logs_exports (Array<String>)

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

    This setting doesn’t apply to RDS Custom.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :processor_features (Array<Types::ProcessorFeature>)

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

    This setting doesn’t apply to RDS Custom.

  • :use_default_processor_features (Boolean)

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

    This setting doesn’t apply to RDS Custom.

  • :db_parameter_group_name (String)

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

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

    This setting doesn’t apply to RDS Custom.

    Constraints:

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

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

    • First character must be a letter.

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

  • :deletion_protection (Boolean)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html

  • :enable_customer_owned_ip (Boolean)

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

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

    This setting doesn’t apply to RDS Custom.

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html [2]: docs.aws.amazon.com/outposts/latest/userguide/routing.html#ip-addressing

  • :custom_iam_instance_profile (String)

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

    • The profile must exist in your account.

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

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

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

    This setting is required for RDS Custom.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-setup-orcl.html#custom-setup-orcl.iam-vpc

  • :backup_target (String)

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

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html

  • :network_type (String)

    The network type of the DB instance.

    Valid Values:

    • ‘IPV4`

    • ‘DUAL`

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :storage_throughput (Integer)

    Specifies the storage throughput value for the DB instance.

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

  • :db_cluster_snapshot_identifier (String)

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

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

    Constraints:

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

    • Can’t be specified when ‘DBSnapshotIdentifier` is specified.

    • Must be specified when ‘DBSnapshotIdentifier` isn’t specified.

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html

  • :allocated_storage (Integer)

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

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

    <note markdown=“1”> Be sure to allocate enough storage for your new DB instance so that the restore operation can succeed. You can also allocate additional storage for future growth.

    </note>
    
  • :dedicated_log_volume (Boolean)

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

  • :ca_certificate_identifier (String)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL.html

  • :engine_lifecycle_support (String)

    The life cycle type for this DB instance.

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

    </note>
    

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

    This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the life cycle type is managed by the DB cluster.

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

    Default: ‘open-source-rds-extended-support`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html

Returns:

See Also:



27997
27998
27999
28000
# File 'lib/aws-sdk-rds/client.rb', line 27997

def restore_db_instance_from_db_snapshot(params = {}, options = {})
  req = build_request(:restore_db_instance_from_db_snapshot, params)
  req.send_request(options)
end

#restore_db_instance_from_s3(params = {}) ⇒ Types::RestoreDBInstanceFromS3Result

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] in the *Amazon RDS User Guide.*

This operation doesn’t apply to RDS Custom.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.html

Examples:

Request syntax with placeholder values


resp = client.restore_db_instance_from_s3({
  db_name: "String",
  db_instance_identifier: "String", # required
  allocated_storage: 1,
  db_instance_class: "String", # required
  engine: "String", # required
  master_username: "String",
  master_user_password: "String",
  db_security_groups: ["String"],
  vpc_security_group_ids: ["String"],
  availability_zone: "String",
  db_subnet_group_name: "String",
  preferred_maintenance_window: "String",
  db_parameter_group_name: "String",
  backup_retention_period: 1,
  preferred_backup_window: "String",
  port: 1,
  multi_az: false,
  engine_version: "String",
  auto_minor_version_upgrade: false,
  license_model: "String",
  iops: 1,
  option_group_name: "String",
  publicly_accessible: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  storage_type: "String",
  storage_encrypted: false,
  kms_key_id: "String",
  copy_tags_to_snapshot: false,
  monitoring_interval: 1,
  monitoring_role_arn: "String",
  enable_iam_database_authentication: false,
  source_engine: "String", # required
  source_engine_version: "String", # required
  s3_bucket_name: "String", # required
  s3_prefix: "String",
  s3_ingestion_role_arn: "String", # required
  database_insights_mode: "standard", # accepts standard, advanced
  enable_performance_insights: false,
  performance_insights_kms_key_id: "String",
  performance_insights_retention_period: 1,
  enable_cloudwatch_logs_exports: ["String"],
  processor_features: [
    {
      name: "String",
      value: "String",
    },
  ],
  use_default_processor_features: false,
  deletion_protection: false,
  max_allocated_storage: 1,
  network_type: "String",
  storage_throughput: 1,
  manage_master_user_password: false,
  master_user_secret_kms_key_id: "String",
  dedicated_log_volume: false,
  ca_certificate_identifier: "String",
  engine_lifecycle_support: "String",
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_name (String)

    The name of the database to create when the DB instance is created. Follow the naming rules specified in ‘CreateDBInstance`.

  • :db_instance_identifier (required, String)

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

    Constraints:

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

    • First character must be a letter.

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

    Example: ‘mydbinstance`

  • :allocated_storage (Integer)

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

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

    <note markdown=“1”> Be sure to allocate enough storage for your new DB instance so that the restore operation can succeed. You can also allocate additional storage for future growth.

    </note>
    
  • :db_instance_class (required, String)

    The 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.*

    Importing from Amazon S3 isn’t supported on the db.t2.micro DB instance class.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html

  • :engine (required, String)

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

    Valid Values: ‘mysql`

  • :master_username (String)

    The name for the master user.

    Constraints:

    • Must be 1 to 16 letters or numbers.

    • First character must be a letter.

    • Can’t be a reserved word for the chosen database engine.

  • :master_user_password (String)

    The password for the master user.

    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 ”&amp;“ (ampersand) or the ”‘“ (single quotes) character.

    Length Constraints:

    • RDS for Db2 - Must contain from 8 to 128 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.

  • :db_security_groups (Array<String>)

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

    Default: The default DB security group for the database engine.

  • :vpc_security_group_ids (Array<String>)

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

  • :availability_zone (String)

    The Availability Zone that the DB instance is created in. For information about Amazon Web Services Regions and Availability Zones, see [Regions and Availability Zones] in the *Amazon RDS User Guide.*

    Default: A random, system-chosen Availability Zone in the endpoint’s Amazon Web Services Region.

    Example: ‘us-east-1d`

    Constraint: The ‘AvailabilityZone` parameter can’t be specified if the DB instance is a Multi-AZ deployment. The specified Availability Zone must be in the same Amazon Web Services Region as the current endpoint.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html

  • :db_subnet_group_name (String)

    A DB subnet group to associate with this DB instance.

    Constraints: If supplied, must match the name of an existing DBSubnetGroup.

    Example: ‘mydbsubnetgroup`

  • :preferred_maintenance_window (String)

    The time range each week during which system maintenance can occur, in Universal Coordinated Time (UTC). For more information, see [Amazon RDS Maintenance Window] in the *Amazon RDS User Guide.*

    Constraints:

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

    • Valid Days: 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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Maintenance.html#Concepts.DBMaintenance

  • :db_parameter_group_name (String)

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

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

  • :backup_retention_period (Integer)

    The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. For more information, see ‘CreateDBInstance`.

  • :preferred_backup_window (String)

    The time range each day during which automated backups are created if automated backups are enabled. For more information, see [Backup window] in the *Amazon RDS User Guide.*

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html#USER_WorkingWithAutomatedBackups.BackupWindow

  • :port (Integer)

    The port number on which the database accepts connections.

    Type: Integer

    Valid Values: ‘1150`-`65535`

    Default: ‘3306`

  • :multi_az (Boolean)

    Specifies whether the DB instance is a Multi-AZ deployment. If the DB instance is a Multi-AZ deployment, you can’t set the ‘AvailabilityZone` parameter.

  • :engine_version (String)

    The version number of the database engine to use. Choose the latest minor version of your database engine. For information about engine versions, see ‘CreateDBInstance`, or call `DescribeDBEngineVersions`.

  • :auto_minor_version_upgrade (Boolean)

    Specifies whether to automatically apply minor engine upgrades to the DB instance during the maintenance window. By default, minor engine upgrades are not applied automatically.

  • :license_model (String)

    The license model for this DB instance. Use ‘general-public-license`.

  • :iops (Integer)

    The amount of Provisioned IOPS (input/output operations per second) to allocate initially for the DB instance. For information about valid IOPS values, see [Amazon RDS Provisioned IOPS storage] in the *Amazon RDS User Guide.*

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html#USER_PIOPS

  • :option_group_name (String)

    The name of the option group to associate with this DB instance. If this argument is omitted, the default option group for the specified engine is used.

  • :publicly_accessible (Boolean)

    Specifies whether the DB instance is publicly accessible.

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

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

    For more information, see CreateDBInstance.

  • :tags (Array<Types::Tag>)

    A list of tags to associate with this DB instance. For more information, see [Tagging Amazon RDS Resources] in the *Amazon RDS User Guide.*

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html

  • :storage_type (String)

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

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

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

    Default: ‘io1` if the `Iops` parameter is specified; otherwise `gp2`

  • :storage_encrypted (Boolean)

    Specifies whether the new DB instance is encrypted or not.

  • :kms_key_id (String)

    The Amazon Web Services KMS key identifier for an encrypted DB instance.

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

    If the ‘StorageEncrypted` parameter is enabled, and you do not specify a value for the `KmsKeyId` parameter, then Amazon RDS will use 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.

  • :copy_tags_to_snapshot (Boolean)

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

  • :monitoring_interval (Integer)

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

    If ‘MonitoringRoleArn` is specified, then you must also set `MonitoringInterval` to a value other than 0.

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

    Default: ‘0`

  • :monitoring_role_arn (String)

    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 [Setting Up and Enabling Enhanced Monitoring] in the *Amazon RDS User Guide.*

    If ‘MonitoringInterval` is set to a value other than 0, then you must supply a `MonitoringRoleArn` value.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html#USER_Monitoring.OS.Enabling

  • :enable_iam_database_authentication (Boolean)

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html

  • :source_engine (required, String)

    The name of the engine of your source database.

    Valid Values: ‘mysql`

  • :source_engine_version (required, String)

    The version of the database that the backup files were created from.

    MySQL versions 5.6 and 5.7 are supported.

    Example: ‘5.6.40`

  • :s3_bucket_name (required, String)

    The name of your Amazon S3 bucket that contains your database backup file.

  • :s3_prefix (String)

    The prefix of your Amazon S3 bucket.

  • :s3_ingestion_role_arn (required, String)

    An Amazon Web Services Identity and Access Management (IAM) role with a trust policy and a permissions policy that allows Amazon RDS to access your Amazon S3 bucket. For information about this role, see [ Creating an IAM role manually] in the *Amazon RDS User Guide.*

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.html#MySQL.Procedural.Importing.Enabling.IAM

  • :database_insights_mode (String)

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

    This setting only applies to Amazon Aurora DB instances.

    <note markdown=“1”> Currently, this value is inherited from the DB cluster and can’t be changed.

    </note>
    
  • :enable_performance_insights (Boolean)

    Specifies whether to enable Performance Insights for the DB instance.

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html

  • :performance_insights_kms_key_id (String)

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

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

    If you do not 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.

  • :performance_insights_retention_period (Integer)

    The number of days to retain Performance Insights data. The default is 7 days. The following values are valid:

    • 7

    • month * 31, where month is a number of months from 1-23

    • 731

    For example, the following values are valid:

    • 93 (3 months * 31)

    • 341 (11 months * 31)

    • 589 (19 months * 31)

    • 731

    If you specify a retention period such as 94, which isn’t a valid value, RDS issues an error.

  • :enable_cloudwatch_logs_exports (Array<String>)

    The list of logs that the restored DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see [Publishing Database Logs to Amazon CloudWatch Logs] in the *Amazon RDS User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :processor_features (Array<Types::ProcessorFeature>)

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

  • :use_default_processor_features (Boolean)

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

  • :deletion_protection (Boolean)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html

  • :max_allocated_storage (Integer)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.Autoscaling

  • :network_type (String)

    The network type of the DB instance.

    Valid Values:

    • ‘IPV4`

    • ‘DUAL`

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :storage_throughput (Integer)

    Specifies the storage throughput value for the DB instance.

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

  • :manage_master_user_password (Boolean)

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

    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.

    ^

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html

  • :master_user_secret_kms_key_id (String)

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

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

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

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

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

  • :dedicated_log_volume (Boolean)

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

  • :ca_certificate_identifier (String)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL.html

  • :engine_lifecycle_support (String)

    The life cycle type for this DB instance.

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

    </note>
    

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

    This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the life cycle type is managed by the DB cluster.

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

    Default: ‘open-source-rds-extended-support`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html

Returns:

See Also:



28809
28810
28811
28812
# File 'lib/aws-sdk-rds/client.rb', line 28809

def restore_db_instance_from_s3(params = {}, options = {})
  req = build_request(:restore_db_instance_from_s3, params)
  req.send_request(options)
end

#restore_db_instance_to_point_in_time(params = {}) ⇒ Types::RestoreDBInstanceToPointInTimeResult

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

The target database is created with most of the original configuration, but in a system-selected Availability Zone, with the default security group, the default subnet group, and the default DB parameter group. By default, the new DB instance is created as a single-AZ deployment except when the instance is a SQL Server instance that has an option group that is associated with mirroring; in this case, the instance becomes a mirrored deployment and not a single-AZ deployment.

<note markdown=“1”> This operation doesn’t apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use ‘RestoreDBClusterToPointInTime`.

</note>

Examples:

Example: To restore a DB instance to a point in time


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

resp = client.restore_db_instance_to_point_in_time({
  restore_time: Time.parse("2018-07-30T23:45:00.000Z"), 
  source_db_instance_identifier: "test-instance", 
  target_db_instance_identifier: "restored-test-instance", 
})

resp.to_h outputs the following:
{
  db_instance: {
    allocated_storage: 200, 
    auto_minor_version_upgrade: true, 
    availability_zone: "us-west-2b", 
    backup_retention_period: 7, 
    ca_certificate_identifier: "rds-ca-2015", 
    copy_tags_to_snapshot: false, 
    db_instance_arn: "arn:aws:rds:us-west-2:123456789012:db:restored-test-instance", 
    db_instance_class: "db.t2.small", 
    db_instance_identifier: "restored-test-instance", 
    db_instance_status: "available", 
    db_name: "sample", 
    db_parameter_groups: [
      {
        db_parameter_group_name: "default.mysql5.6", 
        parameter_apply_status: "in-sync", 
      }, 
    ], 
    db_security_groups: [
    ], 
    db_subnet_group: {
      db_subnet_group_description: "default", 
      db_subnet_group_name: "default", 
      subnet_group_status: "Complete", 
      subnets: [
        {
          subnet_availability_zone: {
            name: "us-west-2a", 
          }, 
          subnet_identifier: "subnet-77e8db03", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-west-2b", 
          }, 
          subnet_identifier: "subnet-c39989a1", 
          subnet_status: "Active", 
        }, 
        {
          subnet_availability_zone: {
            name: "us-west-2c", 
          }, 
          subnet_identifier: "subnet-4b267b0d", 
          subnet_status: "Active", 
        }, 
      ], 
      vpc_id: "vpc-c1c5b3a3", 
    }, 
    db_instance_port: 0, 
    dbi_resource_id: "db-VNZUCCBTEDC4WR7THXNJO72HVQ", 
    domain_memberships: [
    ], 
    engine: "mysql", 
    engine_version: "5.6.27", 
    license_model: "general-public-license", 
    master_username: "mymasteruser", 
    monitoring_interval: 0, 
    multi_az: false, 
    option_group_memberships: [
      {
        option_group_name: "default:mysql-5-6", 
        status: "in-sync", 
      }, 
    ], 
    pending_modified_values: {
    }, 
    preferred_backup_window: "12:58-13:28", 
    preferred_maintenance_window: "tue:10:16-tue:10:46", 
    publicly_accessible: true, 
    read_replica_db_instance_identifiers: [
    ], 
    storage_encrypted: false, 
    storage_type: "gp2", 
    vpc_security_groups: [
      {
        status: "active", 
        vpc_security_group_id: "sg-e5e5b0d2", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.restore_db_instance_to_point_in_time({
  source_db_instance_identifier: "String",
  target_db_instance_identifier: "String", # required
  restore_time: Time.now,
  use_latest_restorable_time: false,
  db_instance_class: "String",
  port: 1,
  availability_zone: "String",
  db_subnet_group_name: "String",
  multi_az: false,
  publicly_accessible: false,
  auto_minor_version_upgrade: false,
  license_model: "String",
  db_name: "String",
  engine: "String",
  iops: 1,
  option_group_name: "String",
  copy_tags_to_snapshot: false,
  tags: [
    {
      key: "String",
      value: "String",
    },
  ],
  storage_type: "String",
  tde_credential_arn: "String",
  tde_credential_password: "String",
  vpc_security_group_ids: ["String"],
  domain: "String",
  domain_iam_role_name: "String",
  domain_fqdn: "String",
  domain_ou: "String",
  domain_auth_secret_arn: "String",
  domain_dns_ips: ["String"],
  enable_iam_database_authentication: false,
  enable_cloudwatch_logs_exports: ["String"],
  processor_features: [
    {
      name: "String",
      value: "String",
    },
  ],
  use_default_processor_features: false,
  db_parameter_group_name: "String",
  deletion_protection: false,
  source_dbi_resource_id: "String",
  max_allocated_storage: 1,
  source_db_instance_automated_backups_arn: "String",
  enable_customer_owned_ip: false,
  custom_iam_instance_profile: "String",
  backup_target: "String",
  network_type: "String",
  storage_throughput: 1,
  allocated_storage: 1,
  dedicated_log_volume: false,
  ca_certificate_identifier: "String",
  engine_lifecycle_support: "String",
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_db_instance_identifier (String)

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

    Constraints:

    • Must match the identifier of an existing DB instance.

    ^

  • :target_db_instance_identifier (required, String)

    The name of the new DB instance to create.

    Constraints:

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

    • First character must be a letter.

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

  • :restore_time (Time, DateTime, Date, Integer, String)

    The date and time to restore from.

    Constraints:

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

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

    • Can’t be specified if the ‘UseLatestRestorableTime` parameter is enabled.

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

  • :use_latest_restorable_time (Boolean)

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

    Constraints:

    • Can’t be specified if the ‘RestoreTime` parameter is provided.

    ^

  • :db_instance_class (String)

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

    Default: The same DB instance class as the original DB instance.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html

  • :port (Integer)

    The port number on which the database accepts connections.

    Default: The same port as the original DB instance.

    Constraints:

    • The value must be ‘1150-65535`.

    ^

  • :availability_zone (String)

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

    Default: A random, system-chosen Availability Zone.

    Constraints:

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

    ^

    Example: ‘us-east-1a`

  • :db_subnet_group_name (String)

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

    Constraints:

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

    ^

    Example: ‘mydbsubnetgroup`

  • :multi_az (Boolean)

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

    This setting doesn’t apply to RDS Custom.

    Constraints:

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

    ^

  • :publicly_accessible (Boolean)

    Specifies whether the DB instance is publicly accessible.

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

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

    For more information, see CreateDBInstance.

  • :auto_minor_version_upgrade (Boolean)

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

    This setting doesn’t apply to RDS Custom.

  • :license_model (String)

    The license model information for the restored DB instance.

    <note markdown=“1”> License models for RDS for Db2 require additional configuration. The Bring Your Own License (BYOL) model requires a custom parameter group and an Amazon Web Services License Manager self-managed license. The Db2 license through Amazon Web Services Marketplace model requires an Amazon Web Services Marketplace subscription. For more information, see [Amazon RDS for Db2 licensing options] in the *Amazon RDS User Guide*.

    </note>
    

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

    Valid Values:

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

    • RDS for MariaDB - ‘general-public-license`

    • RDS for Microsoft SQL Server - ‘license-included`

    • RDS for MySQL - ‘general-public-license`

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

    • RDS for PostgreSQL - ‘postgresql-license`

    Default: Same as the source.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-licensing.html

  • :db_name (String)

    The database name for the restored DB instance.

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

    • RDS Custom

    • RDS for Db2

    • RDS for MariaDB

    • RDS for MySQL

  • :engine (String)

    The database engine to use for the new instance.

    This setting doesn’t apply to RDS Custom.

    Valid Values:

    • ‘db2-ae`

    • ‘db2-se`

    • ‘mariadb`

    • ‘mysql`

    • ‘oracle-ee`

    • ‘oracle-ee-cdb`

    • ‘oracle-se2`

    • ‘oracle-se2-cdb`

    • ‘postgres`

    • ‘sqlserver-ee`

    • ‘sqlserver-se`

    • ‘sqlserver-ex`

    • ‘sqlserver-web`

    Default: The same as source

    Constraints:

    • Must be compatible with the engine of the source.

    ^

  • :iops (Integer)

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

    This setting doesn’t apply to SQL Server.

    Constraints:

    • Must be an integer greater than 1000.

    ^

  • :option_group_name (String)

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

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

    This setting doesn’t apply to RDS Custom.

  • :copy_tags_to_snapshot (Boolean)

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

  • :tags (Array<Types::Tag>)

    A list of tags.

    For more information, see [Tagging Amazon RDS resources] in the *Amazon RDS User Guide* or [Tagging Amazon Aurora and Amazon RDS resources] in the *Amazon Aurora User Guide*.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.html

  • :storage_type (String)

    The storage type to associate with the DB instance.

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

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

    Constraints:

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

    ^

  • :tde_credential_arn (String)

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

    This setting doesn’t apply to RDS Custom.

  • :tde_credential_password (String)

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

    This setting doesn’t apply to RDS Custom.

  • :vpc_security_group_ids (Array<String>)

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

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

  • :domain (String)

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

    This setting doesn’t apply to RDS Custom.

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html

  • :domain_iam_role_name (String)

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

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

  • :domain_fqdn (String)

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

    Constraints:

    • Can’t be longer than 64 characters.

    ^

    Example: ‘mymanagedADtest.mymanagedAD.mydomain`

  • :domain_ou (String)

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

    Constraints:

    • Must be in the distinguished name format.

    • Can’t be longer than 64 characters.

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

  • :domain_auth_secret_arn (String)

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

    Constraints:

    • Can’t be longer than 64 characters.

    ^

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

  • :domain_dns_ips (Array<String>)

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

    Constraints:

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

    ^

    Example: ‘123.124.125.126,234.235.236.237`

  • :enable_iam_database_authentication (Boolean)

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

    This setting doesn’t apply to RDS Custom.

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.IAMDBAuth.html

  • :enable_cloudwatch_logs_exports (Array<String>)

    The list of logs that the restored DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see [Publishing Database Logs to Amazon CloudWatch Logs] in the *Amazon RDS User Guide*.

    This setting doesn’t apply to RDS Custom.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch

  • :processor_features (Array<Types::ProcessorFeature>)

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

    This setting doesn’t apply to RDS Custom.

  • :use_default_processor_features (Boolean)

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

    This setting doesn’t apply to RDS Custom.

  • :db_parameter_group_name (String)

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

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

    This setting doesn’t apply to RDS Custom.

    Constraints:

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

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

    • First character must be a letter.

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

  • :deletion_protection (Boolean)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html

  • :source_dbi_resource_id (String)

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

  • :max_allocated_storage (Integer)

    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.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.Autoscaling

  • :source_db_instance_automated_backups_arn (String)

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

    This setting doesn’t apply to RDS Custom.

  • :enable_customer_owned_ip (Boolean)

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

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

    This setting doesn’t apply to RDS Custom.

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

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html [2]: docs.aws.amazon.com/outposts/latest/userguide/routing.html#ip-addressing

  • :custom_iam_instance_profile (String)

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

    • The profile must exist in your account.

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

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

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

    This setting is required for RDS Custom.

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-setup-orcl.html#custom-setup-orcl.iam-vpc

  • :backup_target (String)

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

    Valid Values:

    • ‘outposts` (Amazon Web Services Outposts)

    • ‘region` (Amazon Web Services Region)

    Default: ‘region`

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html

  • :network_type (String)

    The network type of the DB instance.

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

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

    Valid Values:

    • ‘IPV4`

    • ‘DUAL`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html

  • :storage_throughput (Integer)

    The storage throughput value for the DB instance.

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

  • :allocated_storage (Integer)

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

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

    <note markdown=“1”> Be sure to allocate enough storage for your new DB instance so that the restore operation can succeed. You can also allocate additional storage for future growth.

    </note>
    
  • :dedicated_log_volume (Boolean)

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

  • :ca_certificate_identifier (String)

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

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL.html

  • :engine_lifecycle_support (String)

    The life cycle type for this DB instance.

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

    </note>
    

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

    This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the life cycle type is managed by the DB cluster.

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

    Default: ‘open-source-rds-extended-support`

    [1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html

Returns:

See Also:



29769
29770
29771
29772
# File 'lib/aws-sdk-rds/client.rb', line 29769

def restore_db_instance_to_point_in_time(params = {}, options = {})
  req = build_request(:restore_db_instance_to_point_in_time, params)
  req.send_request(options)
end

#revoke_db_security_group_ingress(params = {}) ⇒ Types::RevokeDBSecurityGroupIngressResult

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

<note markdown=“1”> EC2-Classic was retired on August 15, 2022. If you haven’t migrated from EC2-Classic to a VPC, we recommend that you migrate as soon as possible. For more information, see [Migrate from EC2-Classic to a VPC] in the *Amazon EC2 User Guide*, the blog [EC2-Classic Networking is Retiring – Here’s How to Prepare], and [Moving a DB instance not in a VPC into a VPC] in the *Amazon RDS User Guide*.

</note>

[1]: docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html [2]: aws.amazon.com/blogs/aws/ec2-classic-is-retiring-heres-how-to-prepare/ [3]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.Non-VPC2VPC.html

Examples:

Example: To revoke ingress for a DB security group


# This example revokes ingress for the specified CIDR block associated with the specified DB security group.

resp = client.revoke_db_security_group_ingress({
  cidrip: "203.0.113.5/32", 
  db_security_group_name: "mydbsecuritygroup", 
})

resp.to_h outputs the following:
{
  db_security_group: {
  }, 
}

Request syntax with placeholder values


resp = client.revoke_db_security_group_ingress({
  db_security_group_name: "String", # required
  cidrip: "String",
  ec2_security_group_name: "String",
  ec2_security_group_id: "String",
  ec2_security_group_owner_id: "String",
})

Response structure


resp.db_security_group.owner_id #=> String
resp.db_security_group.db_security_group_name #=> String
resp.db_security_group.db_security_group_description #=> String
resp.db_security_group.vpc_id #=> String
resp.db_security_group.ec2_security_groups #=> Array
resp.db_security_group.ec2_security_groups[0].status #=> String
resp.db_security_group.ec2_security_groups[0].ec2_security_group_name #=> String
resp.db_security_group.ec2_security_groups[0].ec2_security_group_id #=> String
resp.db_security_group.ec2_security_groups[0].ec2_security_group_owner_id #=> String
resp.db_security_group.ip_ranges #=> Array
resp.db_security_group.ip_ranges[0].status #=> String
resp.db_security_group.ip_ranges[0].cidrip #=> String
resp.db_security_group.db_security_group_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_security_group_name (required, String)

    The name of the DB security group to revoke ingress from.

  • :cidrip (String)

    The IP range to revoke access from. Must be a valid CIDR range. If ‘CIDRIP` is specified, `EC2SecurityGroupName`, `EC2SecurityGroupId` and `EC2SecurityGroupOwnerId` can’t be provided.

  • :ec2_security_group_name (String)

    The name of the EC2 security group to revoke access from. For VPC DB security groups, ‘EC2SecurityGroupId` must be provided. Otherwise, EC2SecurityGroupOwnerId and either `EC2SecurityGroupName` or `EC2SecurityGroupId` must be provided.

  • :ec2_security_group_id (String)

    The id of the EC2 security group to revoke access from. For VPC DB security groups, ‘EC2SecurityGroupId` must be provided. Otherwise, EC2SecurityGroupOwnerId and either `EC2SecurityGroupName` or `EC2SecurityGroupId` must be provided.

  • :ec2_security_group_owner_id (String)

    The Amazon Web Services account number of the owner of the EC2 security group specified in the ‘EC2SecurityGroupName` parameter. The Amazon Web Services access key ID isn’t an acceptable value. For VPC DB security groups, ‘EC2SecurityGroupId` must be provided. Otherwise, EC2SecurityGroupOwnerId and either `EC2SecurityGroupName` or `EC2SecurityGroupId` must be provided.

Returns:

See Also:



29873
29874
29875
29876
# File 'lib/aws-sdk-rds/client.rb', line 29873

def revoke_db_security_group_ingress(params = {}, options = {})
  req = build_request(:revoke_db_security_group_ingress, params)
  req.send_request(options)
end

#start_activity_stream(params = {}) ⇒ Types::StartActivityStreamResponse

Starts a database activity stream to monitor activity on the database. For more information, see [ Monitoring Amazon Aurora with Database Activity Streams] in the *Amazon Aurora User Guide* or [ Monitoring Amazon RDS with Database Activity Streams] in the *Amazon RDS User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/DBActivityStreams.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/DBActivityStreams.html

Examples:

Example: To start a database activity stream


# The following example starts an asynchronous activity stream to monitor an Aurora cluster named my-pg-cluster.

resp = client.start_activity_stream({
  apply_immediately: true, 
  kms_key_id: "arn:aws:kms:us-east-1:1234567890123:key/a12c345d-6ef7-890g-h123-456i789jk0l1", 
  mode: "async", 
  resource_arn: "arn:aws:rds:us-east-1:1234567890123:cluster:my-pg-cluster", 
})

resp.to_h outputs the following:
{
  apply_immediately: true, 
  kinesis_stream_name: "aws-rds-das-cluster-0ABCDEFGHI1JKLM2NOPQ3R4S", 
  kms_key_id: "arn:aws:kms:us-east-1:1234567890123:key/a12c345d-6ef7-890g-h123-456i789jk0l1", 
  mode: "async", 
  status: "starting", 
}

Request syntax with placeholder values


resp = client.start_activity_stream({
  resource_arn: "String", # required
  mode: "sync", # required, accepts sync, async
  kms_key_id: "String", # required
  apply_immediately: false,
  engine_native_audit_fields_included: false,
})

Response structure


resp.kms_key_id #=> String
resp.kinesis_stream_name #=> String
resp.status #=> String, one of "stopped", "starting", "started", "stopping"
resp.mode #=> String, one of "sync", "async"
resp.apply_immediately #=> Boolean
resp.engine_native_audit_fields_included #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the DB cluster, for example, ‘arn:aws:rds:us-east-1:12345667890:cluster:das-cluster`.

  • :mode (required, String)

    Specifies the mode of the database activity stream. Database events such as a change or access generate an activity stream event. The database session can handle these events either synchronously or asynchronously.

  • :kms_key_id (required, String)

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

  • :apply_immediately (Boolean)

    Specifies whether or not the database activity stream is to start as soon as possible, regardless of the maintenance window for the database.

  • :engine_native_audit_fields_included (Boolean)

    Specifies whether the database activity stream includes engine-native audit fields. This option applies to an Oracle or Microsoft SQL Server DB instance. By default, no engine-native audit fields are included.

Returns:

See Also:



29968
29969
29970
29971
# File 'lib/aws-sdk-rds/client.rb', line 29968

def start_activity_stream(params = {}, options = {})
  req = build_request(:start_activity_stream, params)
  req.send_request(options)
end

#start_db_cluster(params = {}) ⇒ Types::StartDBClusterResult

Starts an Amazon Aurora DB cluster that was stopped using the Amazon Web Services console, the stop-db-cluster CLI command, or the ‘StopDBCluster` operation.

For more information, see [ Stopping and Starting an Aurora Cluster] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This operation only applies to Aurora DB clusters.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-cluster-stop-start.html

Examples:

Example: To start a DB cluster


# The following example starts a DB cluster and its DB instances.

resp = client.start_db_cluster({
  db_cluster_identifier: "mydbcluster", 
})

resp.to_h outputs the following:
{
  db_cluster: {
    allocated_storage: 1, 
    availability_zones: [
      "us-east-1a", 
      "us-east-1e", 
      "us-east-1b", 
    ], 
    backup_retention_period: 1, 
    db_cluster_identifier: "mydbcluster", 
    database_name: "mydb", 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.start_db_cluster({
  db_cluster_identifier: "String", # required
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The DB cluster identifier of the Amazon Aurora DB cluster to be started. This parameter is stored as a lowercase string.

Returns:

See Also:



30173
30174
30175
30176
# File 'lib/aws-sdk-rds/client.rb', line 30173

def start_db_cluster(params = {}, options = {})
  req = build_request(:start_db_cluster, params)
  req.send_request(options)
end

#start_db_instance(params = {}) ⇒ Types::StartDBInstanceResult

Starts an Amazon RDS DB instance that was stopped using the Amazon Web Services console, the stop-db-instance CLI command, or the ‘StopDBInstance` operation.

For more information, see [ Starting an Amazon RDS DB instance That Was Previously Stopped] in the *Amazon RDS User Guide.*

<note markdown=“1”> This command doesn’t apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL. For Aurora DB clusters, use ‘StartDBCluster` instead.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_StartInstance.html

Examples:

Example: To start a DB instance


# The following example starts the specified DB instance.

resp = client.start_db_instance({
  db_instance_identifier: "test-instance", 
})

resp.to_h outputs the following:
{
  db_instance: {
    db_instance_status: "starting", 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.start_db_instance({
  db_instance_identifier: "String", # required
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The user-supplied instance identifier.

Returns:

See Also:



30392
30393
30394
30395
# File 'lib/aws-sdk-rds/client.rb', line 30392

def start_db_instance(params = {}, options = {})
  req = build_request(:start_db_instance, params)
  req.send_request(options)
end

#start_db_instance_automated_backups_replication(params = {}) ⇒ Types::StartDBInstanceAutomatedBackupsReplicationResult

Enables replication of automated backups to a different Amazon Web Services Region.

This command doesn’t apply to RDS Custom.

For more information, see [ Replicating Automated Backups to Another Amazon Web Services Region] in the *Amazon RDS User Guide.*

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReplicateBackups.html

Examples:

Example: To enable cross-Region automated backups


# The following example replicates automated backups from a DB instance in the US East (N. Virginia) Region. The backup
# retention period is 14 days.

resp = client.start_db_instance_automated_backups_replication({
  backup_retention_period: 14, 
  source_db_instance_arn: "arn:aws:rds:us-east-1:123456789012:db:new-orcl-db", 
})

resp.to_h outputs the following:
{
  db_instance_automated_backup: {
    allocated_storage: 20, 
    backup_retention_period: 14, 
    db_instance_arn: "arn:aws:rds:us-east-1:123456789012:db:new-orcl-db", 
    db_instance_automated_backups_arn: "arn:aws:rds:us-west-2:123456789012:auto-backup:ab-jkib2gfq5rv7replzadausbrktni2bn4example", 
    db_instance_identifier: "new-orcl-db", 
    dbi_resource_id: "db-JKIB2GFQ5RV7REPLZA4EXAMPLE", 
    encrypted: false, 
    engine: "oracle-se2", 
    engine_version: "12.1.0.2.v21", 
    iam_database_authentication_enabled: false, 
    instance_create_time: Time.parse("2020-12-04T15:28:31Z"), 
    license_model: "bring-your-own-license", 
    master_username: "admin", 
    option_group_name: "default:oracle-se2-12-1", 
    port: 1521, 
    region: "us-east-1", 
    restore_window: {
    }, 
    status: "pending", 
    storage_type: "gp2", 
  }, 
}

Request syntax with placeholder values


resp = client.start_db_instance_automated_backups_replication({
  source_db_instance_arn: "String", # required
  backup_retention_period: 1,
  kms_key_id: "String",
  pre_signed_url: "String",
  source_region: "String",
})

Response structure


resp.db_instance_automated_backup.db_instance_arn #=> String
resp.db_instance_automated_backup.dbi_resource_id #=> String
resp.db_instance_automated_backup.region #=> String
resp.db_instance_automated_backup.db_instance_identifier #=> String
resp.db_instance_automated_backup.restore_window.earliest_time #=> Time
resp.db_instance_automated_backup.restore_window.latest_time #=> Time
resp.db_instance_automated_backup.allocated_storage #=> Integer
resp.db_instance_automated_backup.status #=> String
resp.db_instance_automated_backup.port #=> Integer
resp.db_instance_automated_backup.availability_zone #=> String
resp.db_instance_automated_backup.vpc_id #=> String
resp.db_instance_automated_backup.instance_create_time #=> Time
resp.db_instance_automated_backup.master_username #=> String
resp.db_instance_automated_backup.engine #=> String
resp.db_instance_automated_backup.engine_version #=> String
resp.db_instance_automated_backup.license_model #=> String
resp.db_instance_automated_backup.iops #=> Integer
resp.db_instance_automated_backup.option_group_name #=> String
resp.db_instance_automated_backup.tde_credential_arn #=> String
resp.db_instance_automated_backup.encrypted #=> Boolean
resp.db_instance_automated_backup.storage_type #=> String
resp.db_instance_automated_backup.kms_key_id #=> String
resp.db_instance_automated_backup.timezone #=> String
resp.db_instance_automated_backup.iam_database_authentication_enabled #=> Boolean
resp.db_instance_automated_backup.backup_retention_period #=> Integer
resp.db_instance_automated_backup.db_instance_automated_backups_arn #=> String
resp.db_instance_automated_backup.db_instance_automated_backups_replications #=> Array
resp.db_instance_automated_backup.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance_automated_backup.backup_target #=> String
resp.db_instance_automated_backup.storage_throughput #=> Integer
resp.db_instance_automated_backup.aws_backup_recovery_point_arn #=> String
resp.db_instance_automated_backup.dedicated_log_volume #=> Boolean
resp.db_instance_automated_backup.multi_tenant #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_db_instance_arn (required, String)

    The Amazon Resource Name (ARN) of the source DB instance for the replicated automated backups, for example, ‘arn:aws:rds:us-west-2:123456789012:db:mydatabase`.

  • :backup_retention_period (Integer)

    The retention period for the replicated automated backups.

  • :kms_key_id (String)

    The Amazon Web Services KMS key identifier for encryption of the replicated automated backups. The KMS key ID is the Amazon Resource Name (ARN) for the KMS encryption key in the destination Amazon Web Services Region, for example, ‘arn:aws:kms:us-east-1:123456789012:key/AKIAIOSFODNN7EXAMPLE`.

  • :pre_signed_url (String)

    In an Amazon Web Services GovCloud (US) Region, an URL that contains a Signature Version 4 signed request for the ‘StartDBInstanceAutomatedBackupsReplication` operation to call in the Amazon Web Services Region of the source DB instance. The presigned URL must be a valid request for the `StartDBInstanceAutomatedBackupsReplication` API operation that can run in the Amazon Web Services Region that contains the source DB instance.

    This setting applies only to Amazon Web Services GovCloud (US) Regions. It’s ignored in other Amazon Web Services Regions.

    To learn how to generate a Signature Version 4 signed request, see [ Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4)] and [ Signature Version 4 Signing Process].

    <note markdown=“1”> If you are using an Amazon Web Services SDK tool or the CLI, you can specify ‘SourceRegion` (or `–source-region` for the CLI) instead of specifying `PreSignedUrl` manually. Specifying `SourceRegion` autogenerates a presigned URL that is a valid request for the operation that can run in the source Amazon Web Services Region.

    </note>
    

    [1]: docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html [2]: docs.aws.amazon.com/general/latest/gr/signature-version-4.html

  • :source_region (String)

    The source region of the snapshot. This is only needed when the shapshot is encrypted and in a different region.

Returns:

See Also:



30550
30551
30552
30553
# File 'lib/aws-sdk-rds/client.rb', line 30550

def start_db_instance_automated_backups_replication(params = {}, options = {})
  req = build_request(:start_db_instance_automated_backups_replication, params)
  req.send_request(options)
end

#start_export_task(params = {}) ⇒ Types::ExportTask

Starts an export of DB snapshot or DB cluster data to Amazon S3. The provided IAM role must have access to the S3 bucket.

You can’t export snapshot data from Db2 or RDS Custom DB instances.

For more information on exporting DB snapshot data, see [Exporting DB snapshot data to Amazon S3] in the *Amazon RDS User Guide* or

Exporting DB cluster snapshot data to Amazon S3][2

in the *Amazon

Aurora User Guide*.

For more information on exporting DB cluster data, see [Exporting DB cluster data to Amazon S3] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ExportSnapshot.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-export-snapshot.html [3]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/export-cluster-data.html

Examples:

Example: To export a snapshot to Amazon S3


# The following example exports a DB snapshot named db5-snapshot-test to the Amazon S3 bucket named mybucket.

resp = client.start_export_task({
  export_task_identifier: "my-s3-export", 
  iam_role_arn: "arn:aws:iam::123456789012:role/service-role/ExportRole", 
  kms_key_id: "arn:aws:kms:us-west-2:123456789012:key/abcd0000-7fca-4128-82f2-aabbccddeeff", 
  s3_bucket_name: "mybucket", 
  source_arn: "arn:aws:rds:us-west-2:123456789012:snapshot:db5-snapshot-test", 
})

resp.to_h outputs the following:
{
  export_task_identifier: "my-s3-export", 
  iam_role_arn: "arn:aws:iam::123456789012:role/service-role/ExportRole", 
  kms_key_id: "arn:aws:kms:us-west-2:123456789012:key/abcd0000-7fca-4128-82f2-aabbccddeeff", 
  percent_progress: 0, 
  s3_bucket: "mybucket", 
  snapshot_time: Time.parse("2020-03-27T20:48:42.023Z"), 
  source_arn: "arn:aws:rds:us-west-2:123456789012:snapshot:db5-snapshot-test", 
  status: "STARTING", 
  total_extracted_data_in_gb: 0, 
}

Request syntax with placeholder values


resp = client.start_export_task({
  export_task_identifier: "String", # required
  source_arn: "String", # required
  s3_bucket_name: "String", # required
  iam_role_arn: "String", # required
  kms_key_id: "String", # required
  s3_prefix: "String",
  export_only: ["String"],
})

Response structure


resp.export_task_identifier #=> String
resp.source_arn #=> String
resp.export_only #=> Array
resp.export_only[0] #=> String
resp.snapshot_time #=> Time
resp.task_start_time #=> Time
resp.task_end_time #=> Time
resp.s3_bucket #=> String
resp.s3_prefix #=> String
resp.iam_role_arn #=> String
resp.kms_key_id #=> String
resp.status #=> String
resp.percent_progress #=> Integer
resp.total_extracted_data_in_gb #=> Integer
resp.failure_cause #=> String
resp.warning_message #=> String
resp.source_type #=> String, one of "SNAPSHOT", "CLUSTER"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :export_task_identifier (required, String)

    A unique identifier for the export task. This ID isn’t an identifier for the Amazon S3 bucket where the data is to be exported.

  • :source_arn (required, String)

    The Amazon Resource Name (ARN) of the snapshot or cluster to export to Amazon S3.

  • :s3_bucket_name (required, String)

    The name of the Amazon S3 bucket to export the snapshot or cluster data to.

  • :iam_role_arn (required, String)

    The name of the IAM role to use for writing to the Amazon S3 bucket when exporting a snapshot or cluster.

    In the IAM policy attached to your IAM role, include the following required actions to allow the transfer of files from Amazon RDS or Amazon Aurora to an S3 bucket:

    • s3:PutObject*

    • s3:GetObject*

    • s3:ListBucket

    • s3:DeleteObject*

    • s3:GetBucketLocation

    In the policy, include the resources to identify the S3 bucket and objects in the bucket. The following list of resources shows the Amazon Resource Name (ARN) format for accessing S3:

    • ‘arn:aws:s3:::your-s3-bucket `

    • ‘arn:aws:s3:::your-s3-bucket/*`

  • :kms_key_id (required, String)

    The ID of the Amazon Web Services KMS key to use to encrypt the data exported to Amazon S3. The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. The caller of this operation must be authorized to run the following operations. These can be set in the Amazon Web Services KMS key policy:

    • kms:Encrypt

    • kms:Decrypt

    • kms:GenerateDataKey

    • kms:GenerateDataKeyWithoutPlaintext

    • kms:ReEncryptFrom

    • kms:ReEncryptTo

    • kms:CreateGrant

    • kms:DescribeKey

    • kms:RetireGrant

  • :s3_prefix (String)

    The Amazon S3 bucket prefix to use as the file name and path of the exported data.

  • :export_only (Array<String>)

    The data to be exported from the snapshot or cluster. If this parameter isn’t provided, all of the data is exported.

    Valid Values:

    • ‘database` - Export all the data from a specified database.

    • ‘database.table` table-name - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

    • ‘database.schema` schema-name - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

    • ‘database.schema.table` table-name - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.

Returns:

See Also:



30743
30744
30745
30746
# File 'lib/aws-sdk-rds/client.rb', line 30743

def start_export_task(params = {}, options = {})
  req = build_request(:start_export_task, params)
  req.send_request(options)
end

#stop_activity_stream(params = {}) ⇒ Types::StopActivityStreamResponse

Stops a database activity stream that was started using the Amazon Web Services console, the ‘start-activity-stream` CLI command, or the `StartActivityStream` operation.

For more information, see [ Monitoring Amazon Aurora with Database Activity Streams] in the *Amazon Aurora User Guide* or [ Monitoring Amazon RDS with Database Activity Streams] in the *Amazon RDS User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/DBActivityStreams.html [2]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/DBActivityStreams.html

Examples:

Example: To stop a database activity stream


# The following example stops an activity stream in an Aurora cluster named my-pg-cluster.

resp = client.stop_activity_stream({
  apply_immediately: true, 
  resource_arn: "arn:aws:rds:us-east-1:1234567890123:cluster:my-pg-cluster", 
})

resp.to_h outputs the following:
{
  kinesis_stream_name: "aws-rds-das-cluster-0ABCDEFGHI1JKLM2NOPQ3R4S", 
  kms_key_id: "arn:aws:kms:us-east-1:1234567890123:key/a12c345d-6ef7-890g-h123-456i789jk0l1", 
  status: "stopping", 
}

Request syntax with placeholder values


resp = client.stop_activity_stream({
  resource_arn: "String", # required
  apply_immediately: false,
})

Response structure


resp.kms_key_id #=> String
resp.kinesis_stream_name #=> String
resp.status #=> String, one of "stopped", "starting", "started", "stopping"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the DB cluster for the database activity stream. For example, ‘arn:aws:rds:us-east-1:12345667890:cluster:das-cluster`.

  • :apply_immediately (Boolean)

    Specifies whether or not the database activity stream is to stop as soon as possible, regardless of the maintenance window for the database.

Returns:

See Also:



30812
30813
30814
30815
# File 'lib/aws-sdk-rds/client.rb', line 30812

def stop_activity_stream(params = {}, options = {})
  req = build_request(:stop_activity_stream, params)
  req.send_request(options)
end

#stop_db_cluster(params = {}) ⇒ Types::StopDBClusterResult

Stops an Amazon Aurora DB cluster. When you stop a DB cluster, Aurora retains the DB cluster’s metadata, including its endpoints and DB parameter groups. Aurora also retains the transaction logs so you can do a point-in-time restore if necessary.

For more information, see [ Stopping and Starting an Aurora Cluster] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This operation only applies to Aurora DB clusters.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-cluster-stop-start.html

Examples:

Example: To stop a DB cluster


# The following example stops a DB cluster and its DB instances.

resp = client.stop_db_cluster({
  db_cluster_identifier: "mydbcluster", 
})

resp.to_h outputs the following:
{
  db_cluster: {
    allocated_storage: 1, 
    availability_zones: [
      "us-east-1a", 
      "us-east-1e", 
      "us-east-1b", 
    ], 
    backup_retention_period: 1, 
    db_cluster_identifier: "mydbcluster", 
    database_name: "mydb", 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.stop_db_cluster({
  db_cluster_identifier: "String", # required
})

Response structure


resp.db_cluster.allocated_storage #=> Integer
resp.db_cluster.availability_zones #=> Array
resp.db_cluster.availability_zones[0] #=> String
resp.db_cluster.backup_retention_period #=> Integer
resp.db_cluster.character_set_name #=> String
resp.db_cluster.database_name #=> String
resp.db_cluster.db_cluster_identifier #=> String
resp.db_cluster.db_cluster_parameter_group #=> String
resp.db_cluster.db_subnet_group #=> String
resp.db_cluster.status #=> String
resp.db_cluster.automatic_restart_time #=> Time
resp.db_cluster.percent_progress #=> String
resp.db_cluster.earliest_restorable_time #=> Time
resp.db_cluster.endpoint #=> String
resp.db_cluster.reader_endpoint #=> String
resp.db_cluster.custom_endpoints #=> Array
resp.db_cluster.custom_endpoints[0] #=> String
resp.db_cluster.multi_az #=> Boolean
resp.db_cluster.engine #=> String
resp.db_cluster.engine_version #=> String
resp.db_cluster.latest_restorable_time #=> Time
resp.db_cluster.port #=> Integer
resp.db_cluster.master_username #=> String
resp.db_cluster.db_cluster_option_group_memberships #=> Array
resp.db_cluster.db_cluster_option_group_memberships[0].db_cluster_option_group_name #=> String
resp.db_cluster.db_cluster_option_group_memberships[0].status #=> String
resp.db_cluster.preferred_backup_window #=> String
resp.db_cluster.preferred_maintenance_window #=> String
resp.db_cluster.replication_source_identifier #=> String
resp.db_cluster.read_replica_identifiers #=> Array
resp.db_cluster.read_replica_identifiers[0] #=> String
resp.db_cluster.status_infos #=> Array
resp.db_cluster.status_infos[0].status_type #=> String
resp.db_cluster.status_infos[0].normal #=> Boolean
resp.db_cluster.status_infos[0].status #=> String
resp.db_cluster.status_infos[0].message #=> String
resp.db_cluster.db_cluster_members #=> Array
resp.db_cluster.db_cluster_members[0].db_instance_identifier #=> String
resp.db_cluster.db_cluster_members[0].is_cluster_writer #=> Boolean
resp.db_cluster.db_cluster_members[0].db_cluster_parameter_group_status #=> String
resp.db_cluster.db_cluster_members[0].promotion_tier #=> Integer
resp.db_cluster.vpc_security_groups #=> Array
resp.db_cluster.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_cluster.vpc_security_groups[0].status #=> String
resp.db_cluster.hosted_zone_id #=> String
resp.db_cluster.storage_encrypted #=> Boolean
resp.db_cluster.kms_key_id #=> String
resp.db_cluster.db_cluster_resource_id #=> String
resp.db_cluster.db_cluster_arn #=> String
resp.db_cluster.associated_roles #=> Array
resp.db_cluster.associated_roles[0].role_arn #=> String
resp.db_cluster.associated_roles[0].status #=> String
resp.db_cluster.associated_roles[0].feature_name #=> String
resp.db_cluster.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.clone_group_id #=> String
resp.db_cluster.cluster_create_time #=> Time
resp.db_cluster.earliest_backtrack_time #=> Time
resp.db_cluster.backtrack_window #=> Integer
resp.db_cluster.backtrack_consumed_change_records #=> Integer
resp.db_cluster.enabled_cloudwatch_logs_exports #=> Array
resp.db_cluster.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_cluster.capacity #=> Integer
resp.db_cluster.engine_mode #=> String
resp.db_cluster.scaling_configuration_info.min_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.max_capacity #=> Integer
resp.db_cluster.scaling_configuration_info.auto_pause #=> Boolean
resp.db_cluster.scaling_configuration_info.seconds_until_auto_pause #=> Integer
resp.db_cluster.scaling_configuration_info.timeout_action #=> String
resp.db_cluster.scaling_configuration_info.seconds_before_timeout #=> Integer
resp.db_cluster.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.deletion_protection #=> Boolean
resp.db_cluster.http_endpoint_enabled #=> Boolean
resp.db_cluster.activity_stream_mode #=> String, one of "sync", "async"
resp.db_cluster.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_cluster.activity_stream_kms_key_id #=> String
resp.db_cluster.activity_stream_kinesis_stream_name #=> String
resp.db_cluster.copy_tags_to_snapshot #=> Boolean
resp.db_cluster. #=> Boolean
resp.db_cluster.domain_memberships #=> Array
resp.db_cluster.domain_memberships[0].domain #=> String
resp.db_cluster.domain_memberships[0].status #=> String
resp.db_cluster.domain_memberships[0].fqdn #=> String
resp.db_cluster.domain_memberships[0].iam_role_name #=> String
resp.db_cluster.domain_memberships[0].ou #=> String
resp.db_cluster.domain_memberships[0].auth_secret_arn #=> String
resp.db_cluster.domain_memberships[0].dns_ips #=> Array
resp.db_cluster.domain_memberships[0].dns_ips[0] #=> String
resp.db_cluster.tag_list #=> Array
resp.db_cluster.tag_list[0].key #=> String
resp.db_cluster.tag_list[0].value #=> String
resp.db_cluster.global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.db_cluster.global_write_forwarding_requested #=> Boolean
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_cluster.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_cluster.pending_modified_values.db_cluster_identifier #=> String
resp.db_cluster.pending_modified_values.master_user_password #=> String
resp.db_cluster.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_cluster.pending_modified_values.engine_version #=> String
resp.db_cluster.pending_modified_values.backup_retention_period #=> Integer
resp.db_cluster.pending_modified_values.allocated_storage #=> Integer
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.interconnect_subnet_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.transit_gateway_multicast_domain_id #=> String
resp.db_cluster.pending_modified_values.rds_custom_cluster_configuration.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_cluster.pending_modified_values.iops #=> Integer
resp.db_cluster.pending_modified_values.storage_type #=> String
resp.db_cluster.pending_modified_values.certificate_details.ca_identifier #=> String
resp.db_cluster.pending_modified_values.certificate_details.valid_till #=> Time
resp.db_cluster.db_cluster_instance_class #=> String
resp.db_cluster.storage_type #=> String
resp.db_cluster.iops #=> Integer
resp.db_cluster.publicly_accessible #=> Boolean
resp.db_cluster.auto_minor_version_upgrade #=> Boolean
resp.db_cluster.monitoring_interval #=> Integer
resp.db_cluster.monitoring_role_arn #=> String
resp.db_cluster.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_cluster.performance_insights_enabled #=> Boolean
resp.db_cluster.performance_insights_kms_key_id #=> String
resp.db_cluster.performance_insights_retention_period #=> Integer
resp.db_cluster.serverless_v2_scaling_configuration.min_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.max_capacity #=> Float
resp.db_cluster.serverless_v2_scaling_configuration.seconds_until_auto_pause #=> Integer
resp.db_cluster.network_type #=> String
resp.db_cluster.db_system_id #=> String
resp.db_cluster.master_user_secret.secret_arn #=> String
resp.db_cluster.master_user_secret.secret_status #=> String
resp.db_cluster.master_user_secret.kms_key_id #=> String
resp.db_cluster.io_optimized_next_allowed_modification_time #=> Time
resp.db_cluster.local_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "requested"
resp.db_cluster.aws_backup_recovery_point_arn #=> String
resp.db_cluster.limitless_database.status #=> String, one of "active", "not-in-use", "enabled", "disabled", "enabling", "disabling", "modifying-max-capacity", "error"
resp.db_cluster.limitless_database.min_required_acu #=> Float
resp.db_cluster.storage_throughput #=> Integer
resp.db_cluster.cluster_scalability_type #=> String, one of "standard", "limitless"
resp.db_cluster.certificate_details.ca_identifier #=> String
resp.db_cluster.certificate_details.valid_till #=> Time
resp.db_cluster.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_cluster_identifier (required, String)

    The DB cluster identifier of the Amazon Aurora DB cluster to be stopped. This parameter is stored as a lowercase string.

Returns:

See Also:



31018
31019
31020
31021
# File 'lib/aws-sdk-rds/client.rb', line 31018

def stop_db_cluster(params = {}, options = {})
  req = build_request(:stop_db_cluster, params)
  req.send_request(options)
end

#stop_db_instance(params = {}) ⇒ Types::StopDBInstanceResult

Stops an Amazon RDS 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 an Amazon RDS DB Instance Temporarily] in the *Amazon RDS User Guide.*

<note markdown=“1”> This command doesn’t apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL. For Aurora clusters, use ‘StopDBCluster` instead.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_StopInstance.html

Examples:

Example: To stop a DB instance


# The following example stops the specified DB instance.

resp = client.stop_db_instance({
  db_instance_identifier: "test-instance", 
})

resp.to_h outputs the following:
{
  db_instance: {
    db_instance_status: "stopping", 
  }, # Some output ommitted.
}

Request syntax with placeholder values


resp = client.stop_db_instance({
  db_instance_identifier: "String", # required
  db_snapshot_identifier: "String",
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The user-supplied instance identifier.

  • :db_snapshot_identifier (String)

    The user-supplied instance identifier of the DB Snapshot created immediately before the DB instance is stopped.

Returns:

See Also:



31244
31245
31246
31247
# File 'lib/aws-sdk-rds/client.rb', line 31244

def stop_db_instance(params = {}, options = {})
  req = build_request(:stop_db_instance, params)
  req.send_request(options)
end

#stop_db_instance_automated_backups_replication(params = {}) ⇒ Types::StopDBInstanceAutomatedBackupsReplicationResult

Stops automated backup replication for a DB instance.

This command doesn’t apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL.

For more information, see [ Replicating Automated Backups to Another Amazon Web Services Region] in the *Amazon RDS User Guide.*

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReplicateBackups.html

Examples:

Example: To stop replicating automated backups


# The following example ends replication of automated backups. Replicated backups are retained according to the set backup
# retention period.

resp = client.stop_db_instance_automated_backups_replication({
  source_db_instance_arn: "arn:aws:rds:us-east-1:123456789012:db:new-orcl-db", 
})

resp.to_h outputs the following:
{
  db_instance_automated_backup: {
    allocated_storage: 20, 
    backup_retention_period: 7, 
    db_instance_arn: "arn:aws:rds:us-east-1:123456789012:db:new-orcl-db", 
    db_instance_automated_backups_arn: "arn:aws:rds:us-west-2:123456789012:auto-backup:ab-jkib2gfq5rv7replzadausbrktni2bn4example", 
    db_instance_identifier: "new-orcl-db", 
    dbi_resource_id: "db-JKIB2GFQ5RV7REPLZA4EXAMPLE", 
    encrypted: false, 
    engine: "oracle-se2", 
    engine_version: "12.1.0.2.v21", 
    iam_database_authentication_enabled: false, 
    instance_create_time: Time.parse("2020-12-04T15:28:31Z"), 
    license_model: "bring-your-own-license", 
    master_username: "admin", 
    option_group_name: "default:oracle-se2-12-1", 
    port: 1521, 
    region: "us-east-1", 
    restore_window: {
      earliest_time: Time.parse("2020-12-04T23:13:21.030Z"), 
      latest_time: Time.parse("2020-12-07T19:59:57Z"), 
    }, 
    status: "replicating", 
    storage_type: "gp2", 
  }, 
}

Request syntax with placeholder values


resp = client.stop_db_instance_automated_backups_replication({
  source_db_instance_arn: "String", # required
})

Response structure


resp.db_instance_automated_backup.db_instance_arn #=> String
resp.db_instance_automated_backup.dbi_resource_id #=> String
resp.db_instance_automated_backup.region #=> String
resp.db_instance_automated_backup.db_instance_identifier #=> String
resp.db_instance_automated_backup.restore_window.earliest_time #=> Time
resp.db_instance_automated_backup.restore_window.latest_time #=> Time
resp.db_instance_automated_backup.allocated_storage #=> Integer
resp.db_instance_automated_backup.status #=> String
resp.db_instance_automated_backup.port #=> Integer
resp.db_instance_automated_backup.availability_zone #=> String
resp.db_instance_automated_backup.vpc_id #=> String
resp.db_instance_automated_backup.instance_create_time #=> Time
resp.db_instance_automated_backup.master_username #=> String
resp.db_instance_automated_backup.engine #=> String
resp.db_instance_automated_backup.engine_version #=> String
resp.db_instance_automated_backup.license_model #=> String
resp.db_instance_automated_backup.iops #=> Integer
resp.db_instance_automated_backup.option_group_name #=> String
resp.db_instance_automated_backup.tde_credential_arn #=> String
resp.db_instance_automated_backup.encrypted #=> Boolean
resp.db_instance_automated_backup.storage_type #=> String
resp.db_instance_automated_backup.kms_key_id #=> String
resp.db_instance_automated_backup.timezone #=> String
resp.db_instance_automated_backup.iam_database_authentication_enabled #=> Boolean
resp.db_instance_automated_backup.backup_retention_period #=> Integer
resp.db_instance_automated_backup.db_instance_automated_backups_arn #=> String
resp.db_instance_automated_backup.db_instance_automated_backups_replications #=> Array
resp.db_instance_automated_backup.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance_automated_backup.backup_target #=> String
resp.db_instance_automated_backup.storage_throughput #=> Integer
resp.db_instance_automated_backup.aws_backup_recovery_point_arn #=> String
resp.db_instance_automated_backup.dedicated_log_volume #=> Boolean
resp.db_instance_automated_backup.multi_tenant #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_db_instance_arn (required, String)

    The Amazon Resource Name (ARN) of the source DB instance for which to stop replicating automate backups, for example, ‘arn:aws:rds:us-west-2:123456789012:db:mydatabase`.

Returns:

See Also:



31354
31355
31356
31357
# File 'lib/aws-sdk-rds/client.rb', line 31354

def stop_db_instance_automated_backups_replication(params = {}, options = {})
  req = build_request(:stop_db_instance_automated_backups_replication, params)
  req.send_request(options)
end

#switchover_blue_green_deployment(params = {}) ⇒ Types::SwitchoverBlueGreenDeploymentResponse

Switches over a blue/green deployment.

Before you switch over, production traffic is routed to the databases in the blue environment. After you switch over, production traffic is routed to the databases in the green environment.

For more information, see [Using Amazon RDS Blue/Green Deployments for database updates] in the *Amazon RDS User Guide* and [Using Amazon RDS Blue/Green Deployments for database updates] in the *Amazon Aurora User Guide*.

[1]: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html [2]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/blue-green-deployments.html

Examples:

Example: To switch a blue/green deployment for an RDS DB instance


# The following example promotes the specified green environment as the new production environment.

resp = client.switchover_blue_green_deployment({
  blue_green_deployment_identifier: "bgd-wi89nwzglccsfake", 
  switchover_timeout: 300, 
})

resp.to_h outputs the following:
{
  blue_green_deployment: {
    blue_green_deployment_identifier: "bgd-v53303651eexfake", 
    blue_green_deployment_name: "bgd-cli-test-instance", 
    create_time: Time.parse("2022-02-25T22:33:22.225000+00:00"), 
    source: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance", 
    status: "SWITCHOVER_IN_PROGRESS", 
    switchover_details: [
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-green-blhi1e", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-1", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-1-green-k5fv7u", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-2", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-2-green-ggsh8m", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-3", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-replica-3-green-o2vwm0", 
      }, 
    ], 
    target: "arn:aws:rds:us-east-1:123456789012:db:my-db-instance-green-blhi1e", 
    tasks: [
      {
        name: "CREATING_READ_REPLICA_OF_SOURCE", 
        status: "COMPLETED", 
      }, 
      {
        name: "DB_ENGINE_VERSION_UPGRADE", 
        status: "COMPLETED", 
      }, 
      {
        name: "CONFIGURE_BACKUPS", 
        status: "COMPLETED", 
      }, 
      {
        name: "CREATING_TOPOLOGY_OF_SOURCE", 
        status: "COMPLETED", 
      }, 
    ], 
  }, 
}

Example: To promote a blue/green deployment for an Aurora MySQL DB cluster


# The following example promotes the specified green environment as the new production environment.

resp = client.switchover_blue_green_deployment({
  blue_green_deployment_identifier: "bgd-wi89nwzglccsfake", 
  switchover_timeout: 300, 
})

resp.to_h outputs the following:
{
  blue_green_deployment: {
    blue_green_deployment_identifier: "bgd-wi89nwzglccsfake", 
    blue_green_deployment_name: "my-blue-green-deployment", 
    create_time: Time.parse("2022-02-25T22:38:49.522000+00:00"), 
    source: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
    status: "SWITCHOVER_IN_PROGRESS", 
    switchover_details: [
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster-green-3ud8z6", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-1", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-1-green-bvxc73", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-2", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-2-green-7wc4ie", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-3", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:db:my-aurora-mysql-cluster-3-green-p4xxkz", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-excluded-member-endpoint", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-excluded-member-endpoint-green-np1ikl", 
      }, 
      {
        source_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-reader-endpoint", 
        status: "AVAILABLE", 
        target_member: "arn:aws:rds:us-east-1:123456789012:cluster-endpoint:my-reader-endpoint-green-miszlf", 
      }, 
    ], 
    target: "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-mysql-cluster-green-3ud8z6", 
    tasks: [
      {
        name: "CREATING_READ_REPLICA_OF_SOURCE", 
        status: "COMPLETED", 
      }, 
      {
        name: "DB_ENGINE_VERSION_UPGRADE", 
        status: "COMPLETED", 
      }, 
      {
        name: "CREATE_DB_INSTANCES_FOR_CLUSTER", 
        status: "COMPLETED", 
      }, 
      {
        name: "CREATE_CUSTOM_ENDPOINTS", 
        status: "COMPLETED", 
      }, 
    ], 
  }, 
}

Request syntax with placeholder values


resp = client.switchover_blue_green_deployment({
  blue_green_deployment_identifier: "BlueGreenDeploymentIdentifier", # required
  switchover_timeout: 1,
})

Response structure


resp.blue_green_deployment.blue_green_deployment_identifier #=> String
resp.blue_green_deployment.blue_green_deployment_name #=> String
resp.blue_green_deployment.source #=> String
resp.blue_green_deployment.target #=> String
resp.blue_green_deployment.switchover_details #=> Array
resp.blue_green_deployment.switchover_details[0].source_member #=> String
resp.blue_green_deployment.switchover_details[0].target_member #=> String
resp.blue_green_deployment.switchover_details[0].status #=> String
resp.blue_green_deployment.tasks #=> Array
resp.blue_green_deployment.tasks[0].name #=> String
resp.blue_green_deployment.tasks[0].status #=> String
resp.blue_green_deployment.status #=> String
resp.blue_green_deployment.status_details #=> String
resp.blue_green_deployment.create_time #=> Time
resp.blue_green_deployment.delete_time #=> Time
resp.blue_green_deployment.tag_list #=> Array
resp.blue_green_deployment.tag_list[0].key #=> String
resp.blue_green_deployment.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :blue_green_deployment_identifier (required, String)

    The resource ID of the blue/green deployment.

    Constraints:

    • Must match an existing blue/green deployment resource ID.

    ^

  • :switchover_timeout (Integer)

    The amount of time, in seconds, for the switchover to complete.

    Default: 300

    If the switchover takes longer than the specified duration, then any changes are rolled back, and no changes are made to the environments.

Returns:

See Also:



31561
31562
31563
31564
# File 'lib/aws-sdk-rds/client.rb', line 31561

def switchover_blue_green_deployment(params = {}, options = {})
  req = build_request(:switchover_blue_green_deployment, params)
  req.send_request(options)
end

#switchover_global_cluster(params = {}) ⇒ Types::SwitchoverGlobalClusterResult

Switches over the specified secondary DB cluster to be the new primary DB cluster in the global database cluster. Switchover operations were previously called “managed planned failovers.”

Aurora promotes the specified secondary cluster to assume full read/write capabilities and demotes the current primary cluster to a secondary (read-only) cluster, maintaining the orginal replication topology. All secondary clusters are synchronized with the primary at the beginning of the process so the new primary continues operations for the Aurora global database without losing any data. Your database is unavailable for a short time while the primary and selected secondary clusters are assuming their new roles. For more information about switching over an Aurora global database, see [Performing switchovers for Amazon Aurora global databases] in the *Amazon Aurora User Guide*.

<note markdown=“1”> This operation is intended for controlled environments, for operations such as “regional rotation” or to fall back to the original primary after a global database failover.

</note>

[1]: docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-disaster-recovery.html#aurora-global-database-disaster-recovery.managed-failover

Examples:

Request syntax with placeholder values


resp = client.switchover_global_cluster({
  global_cluster_identifier: "GlobalClusterIdentifier", # required
  target_db_cluster_identifier: "DBClusterIdentifier", # required
})

Response structure


resp.global_cluster.global_cluster_identifier #=> String
resp.global_cluster.global_cluster_resource_id #=> String
resp.global_cluster.global_cluster_arn #=> String
resp.global_cluster.status #=> String
resp.global_cluster.engine #=> String
resp.global_cluster.engine_version #=> String
resp.global_cluster.engine_lifecycle_support #=> String
resp.global_cluster.database_name #=> String
resp.global_cluster.storage_encrypted #=> Boolean
resp.global_cluster.deletion_protection #=> Boolean
resp.global_cluster.global_cluster_members #=> Array
resp.global_cluster.global_cluster_members[0].db_cluster_arn #=> String
resp.global_cluster.global_cluster_members[0].readers #=> Array
resp.global_cluster.global_cluster_members[0].readers[0] #=> String
resp.global_cluster.global_cluster_members[0].is_writer #=> Boolean
resp.global_cluster.global_cluster_members[0].global_write_forwarding_status #=> String, one of "enabled", "disabled", "enabling", "disabling", "unknown"
resp.global_cluster.global_cluster_members[0].synchronization_status #=> String, one of "connected", "pending-resync"
resp.global_cluster.endpoint #=> String
resp.global_cluster.failover_state.status #=> String, one of "pending", "failing-over", "cancelling"
resp.global_cluster.failover_state.from_db_cluster_arn #=> String
resp.global_cluster.failover_state.to_db_cluster_arn #=> String
resp.global_cluster.failover_state.is_data_loss_allowed #=> Boolean
resp.global_cluster.tag_list #=> Array
resp.global_cluster.tag_list[0].key #=> String
resp.global_cluster.tag_list[0].value #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :global_cluster_identifier (required, String)

    The identifier of the global database cluster to switch over. This parameter isn’t case-sensitive.

    Constraints:

    • Must match the identifier of an existing global database cluster (Aurora global database).

    ^

  • :target_db_cluster_identifier (required, String)

    The identifier of the secondary Aurora DB cluster to promote to the new primary for the global database cluster. Use the Amazon Resource Name (ARN) for the identifier so that Aurora can locate the cluster in its Amazon Web Services Region.

Returns:

See Also:



31652
31653
31654
31655
# File 'lib/aws-sdk-rds/client.rb', line 31652

def switchover_global_cluster(params = {}, options = {})
  req = build_request(:switchover_global_cluster, params)
  req.send_request(options)
end

#switchover_read_replica(params = {}) ⇒ Types::SwitchoverReadReplicaResult

Switches over an Oracle standby database in an Oracle Data Guard environment, making it the new primary database. Issue this command in the Region that hosts the current standby database.

Examples:

Request syntax with placeholder values


resp = client.switchover_read_replica({
  db_instance_identifier: "String", # required
})

Response structure


resp.db_instance.db_instance_identifier #=> String
resp.db_instance.db_instance_class #=> String
resp.db_instance.engine #=> String
resp.db_instance.db_instance_status #=> String
resp.db_instance.automatic_restart_time #=> Time
resp.db_instance.master_username #=> String
resp.db_instance.db_name #=> String
resp.db_instance.endpoint.address #=> String
resp.db_instance.endpoint.port #=> Integer
resp.db_instance.endpoint.hosted_zone_id #=> String
resp.db_instance.allocated_storage #=> Integer
resp.db_instance.instance_create_time #=> Time
resp.db_instance.preferred_backup_window #=> String
resp.db_instance.backup_retention_period #=> Integer
resp.db_instance.db_security_groups #=> Array
resp.db_instance.db_security_groups[0].db_security_group_name #=> String
resp.db_instance.db_security_groups[0].status #=> String
resp.db_instance.vpc_security_groups #=> Array
resp.db_instance.vpc_security_groups[0].vpc_security_group_id #=> String
resp.db_instance.vpc_security_groups[0].status #=> String
resp.db_instance.db_parameter_groups #=> Array
resp.db_instance.db_parameter_groups[0].db_parameter_group_name #=> String
resp.db_instance.db_parameter_groups[0].parameter_apply_status #=> String
resp.db_instance.availability_zone #=> String
resp.db_instance.db_subnet_group.db_subnet_group_name #=> String
resp.db_instance.db_subnet_group.db_subnet_group_description #=> String
resp.db_instance.db_subnet_group.vpc_id #=> String
resp.db_instance.db_subnet_group.subnet_group_status #=> String
resp.db_instance.db_subnet_group.subnets #=> Array
resp.db_instance.db_subnet_group.subnets[0].subnet_identifier #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_availability_zone.name #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_outpost.arn #=> String
resp.db_instance.db_subnet_group.subnets[0].subnet_status #=> String
resp.db_instance.db_subnet_group.db_subnet_group_arn #=> String
resp.db_instance.db_subnet_group.supported_network_types #=> Array
resp.db_instance.db_subnet_group.supported_network_types[0] #=> String
resp.db_instance.preferred_maintenance_window #=> String
resp.db_instance.pending_modified_values.db_instance_class #=> String
resp.db_instance.pending_modified_values.allocated_storage #=> Integer
resp.db_instance.pending_modified_values.master_user_password #=> String
resp.db_instance.pending_modified_values.port #=> Integer
resp.db_instance.pending_modified_values.backup_retention_period #=> Integer
resp.db_instance.pending_modified_values.multi_az #=> Boolean
resp.db_instance.pending_modified_values.engine_version #=> String
resp.db_instance.pending_modified_values.license_model #=> String
resp.db_instance.pending_modified_values.iops #=> Integer
resp.db_instance.pending_modified_values.db_instance_identifier #=> String
resp.db_instance.pending_modified_values.storage_type #=> String
resp.db_instance.pending_modified_values.ca_certificate_identifier #=> String
resp.db_instance.pending_modified_values.db_subnet_group_name #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_enable[0] #=> String
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable #=> Array
resp.db_instance.pending_modified_values.pending_cloudwatch_logs_exports.log_types_to_disable[0] #=> String
resp.db_instance.pending_modified_values.processor_features #=> Array
resp.db_instance.pending_modified_values.processor_features[0].name #=> String
resp.db_instance.pending_modified_values.processor_features[0].value #=> String
resp.db_instance.pending_modified_values.iam_database_authentication_enabled #=> Boolean
resp.db_instance.pending_modified_values.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.pending_modified_values.resume_full_automation_mode_time #=> Time
resp.db_instance.pending_modified_values.storage_throughput #=> Integer
resp.db_instance.pending_modified_values.engine #=> String
resp.db_instance.pending_modified_values.dedicated_log_volume #=> Boolean
resp.db_instance.pending_modified_values.multi_tenant #=> Boolean
resp.db_instance.latest_restorable_time #=> Time
resp.db_instance.multi_az #=> Boolean
resp.db_instance.engine_version #=> String
resp.db_instance.auto_minor_version_upgrade #=> Boolean
resp.db_instance.read_replica_source_db_instance_identifier #=> String
resp.db_instance.read_replica_db_instance_identifiers #=> Array
resp.db_instance.read_replica_db_instance_identifiers[0] #=> String
resp.db_instance.read_replica_db_cluster_identifiers #=> Array
resp.db_instance.read_replica_db_cluster_identifiers[0] #=> String
resp.db_instance.replica_mode #=> String, one of "open-read-only", "mounted"
resp.db_instance.license_model #=> String
resp.db_instance.iops #=> Integer
resp.db_instance.option_group_memberships #=> Array
resp.db_instance.option_group_memberships[0].option_group_name #=> String
resp.db_instance.option_group_memberships[0].status #=> String
resp.db_instance.character_set_name #=> String
resp.db_instance.nchar_character_set_name #=> String
resp.db_instance.secondary_availability_zone #=> String
resp.db_instance.publicly_accessible #=> Boolean
resp.db_instance.status_infos #=> Array
resp.db_instance.status_infos[0].status_type #=> String
resp.db_instance.status_infos[0].normal #=> Boolean
resp.db_instance.status_infos[0].status #=> String
resp.db_instance.status_infos[0].message #=> String
resp.db_instance.storage_type #=> String
resp.db_instance.tde_credential_arn #=> String
resp.db_instance.db_instance_port #=> Integer
resp.db_instance.db_cluster_identifier #=> String
resp.db_instance.storage_encrypted #=> Boolean
resp.db_instance.kms_key_id #=> String
resp.db_instance.dbi_resource_id #=> String
resp.db_instance.ca_certificate_identifier #=> String
resp.db_instance.domain_memberships #=> Array
resp.db_instance.domain_memberships[0].domain #=> String
resp.db_instance.domain_memberships[0].status #=> String
resp.db_instance.domain_memberships[0].fqdn #=> String
resp.db_instance.domain_memberships[0].iam_role_name #=> String
resp.db_instance.domain_memberships[0].ou #=> String
resp.db_instance.domain_memberships[0].auth_secret_arn #=> String
resp.db_instance.domain_memberships[0].dns_ips #=> Array
resp.db_instance.domain_memberships[0].dns_ips[0] #=> String
resp.db_instance.copy_tags_to_snapshot #=> Boolean
resp.db_instance.monitoring_interval #=> Integer
resp.db_instance.enhanced_monitoring_resource_arn #=> String
resp.db_instance.monitoring_role_arn #=> String
resp.db_instance.promotion_tier #=> Integer
resp.db_instance.db_instance_arn #=> String
resp.db_instance.timezone #=> String
resp.db_instance.iam_database_authentication_enabled #=> Boolean
resp.db_instance.database_insights_mode #=> String, one of "standard", "advanced"
resp.db_instance.performance_insights_enabled #=> Boolean
resp.db_instance.performance_insights_kms_key_id #=> String
resp.db_instance.performance_insights_retention_period #=> Integer
resp.db_instance.enabled_cloudwatch_logs_exports #=> Array
resp.db_instance.enabled_cloudwatch_logs_exports[0] #=> String
resp.db_instance.processor_features #=> Array
resp.db_instance.processor_features[0].name #=> String
resp.db_instance.processor_features[0].value #=> String
resp.db_instance.deletion_protection #=> Boolean
resp.db_instance.associated_roles #=> Array
resp.db_instance.associated_roles[0].role_arn #=> String
resp.db_instance.associated_roles[0].feature_name #=> String
resp.db_instance.associated_roles[0].status #=> String
resp.db_instance.listener_endpoint.address #=> String
resp.db_instance.listener_endpoint.port #=> Integer
resp.db_instance.listener_endpoint.hosted_zone_id #=> String
resp.db_instance.max_allocated_storage #=> Integer
resp.db_instance.tag_list #=> Array
resp.db_instance.tag_list[0].key #=> String
resp.db_instance.tag_list[0].value #=> String
resp.db_instance.db_instance_automated_backups_replications #=> Array
resp.db_instance.db_instance_automated_backups_replications[0].db_instance_automated_backups_arn #=> String
resp.db_instance.customer_owned_ip_enabled #=> Boolean
resp.db_instance.aws_backup_recovery_point_arn #=> String
resp.db_instance.activity_stream_status #=> String, one of "stopped", "starting", "started", "stopping"
resp.db_instance.activity_stream_kms_key_id #=> String
resp.db_instance.activity_stream_kinesis_stream_name #=> String
resp.db_instance.activity_stream_mode #=> String, one of "sync", "async"
resp.db_instance.activity_stream_engine_native_audit_fields_included #=> Boolean
resp.db_instance.automation_mode #=> String, one of "full", "all-paused"
resp.db_instance.resume_full_automation_mode_time #=> Time
resp.db_instance.custom_iam_instance_profile #=> String
resp.db_instance.backup_target #=> String
resp.db_instance.network_type #=> String
resp.db_instance.activity_stream_policy_status #=> String, one of "locked", "unlocked", "locking-policy", "unlocking-policy"
resp.db_instance.storage_throughput #=> Integer
resp.db_instance.db_system_id #=> String
resp.db_instance.master_user_secret.secret_arn #=> String
resp.db_instance.master_user_secret.secret_status #=> String
resp.db_instance.master_user_secret.kms_key_id #=> String
resp.db_instance.certificate_details.ca_identifier #=> String
resp.db_instance.certificate_details.valid_till #=> Time
resp.db_instance.read_replica_source_db_cluster_identifier #=> String
resp.db_instance.percent_progress #=> String
resp.db_instance.dedicated_log_volume #=> Boolean
resp.db_instance.is_storage_config_upgrade_available #=> Boolean
resp.db_instance.multi_tenant #=> Boolean
resp.db_instance.engine_lifecycle_support #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :db_instance_identifier (required, String)

    The DB instance identifier of the current standby database. This value is stored as a lowercase string.

    Constraints:

    • Must match the identifier of an existing Oracle read replica DB instance.

    ^

Returns:

See Also:



31851
31852
31853
31854
# File 'lib/aws-sdk-rds/client.rb', line 31851

def switchover_read_replica(params = {}, options = {})
  req = build_request(:switchover_read_replica, params)
  req.send_request(options)
end

#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean

Polls an API operation until a resource enters a desired state.

## Basic Usage

A waiter will call an API operation until:

  • It is successful

  • It enters a terminal state

  • It makes the maximum number of attempts

In between attempts, the waiter will sleep.

# polls in a loop, sleeping between attempts
client.wait_until(waiter_name, params)

## Configuration

You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You can pass configuration as the final arguments hash.

# poll for ~25 seconds
client.wait_until(waiter_name, params, {
  max_attempts: 5,
  delay: 5,
})

## Callbacks

You can be notified before each polling attempt and before each delay. If you throw ‘:success` or `:failure` from these callbacks, it will terminate the waiter.

started_at = Time.now
client.wait_until(waiter_name, params, {

  # disable max attempts
  max_attempts: nil,

  # poll for 1 hour, instead of a number of attempts
  before_wait: -> (attempts, response) do
    throw :failure if Time.now - started_at > 3600
  end
})

## Handling Errors

When a waiter is unsuccessful, it will raise an error. All of the failure errors extend from Waiters::Errors::WaiterFailed.

begin
  client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
  # resource did not enter the desired state in time
end

## Valid Waiters

The following table lists the valid waiter names, the operations they call, and the default ‘:delay` and `:max_attempts` values.

| waiter_name | params | :delay | :max_attempts | | —————————– | ————————————– | ——– | ————- | | db_cluster_available | #describe_db_clusters | 30 | 60 | | db_cluster_deleted | #describe_db_clusters | 30 | 60 | | db_cluster_snapshot_available | #describe_db_cluster_snapshots | 30 | 60 | | db_cluster_snapshot_deleted | #describe_db_cluster_snapshots | 30 | 60 | | db_instance_available | #describe_db_instances | 30 | 60 | | db_instance_deleted | #describe_db_instances | 30 | 60 | | db_snapshot_available | #describe_db_snapshots | 30 | 60 | | db_snapshot_deleted | #describe_db_snapshots | 30 | 60 | | tenant_database_available | #describe_tenant_databases | 30 | 60 | | tenant_database_deleted | #describe_tenant_databases | 30 | 60 |

Parameters:

  • waiter_name (Symbol)
  • params (Hash) (defaults to: {})

    ({})

  • options (Hash) (defaults to: {})

    ({})

Options Hash (options):

  • :max_attempts (Integer)
  • :delay (Integer)
  • :before_attempt (Proc)
  • :before_wait (Proc)

Yields:

  • (w.waiter)

Returns:

  • (Boolean)

    Returns ‘true` if the waiter was successful.

Raises:

  • (Errors::FailureStateError)

    Raised when the waiter terminates because the waiter has entered a state that it will not transition out of, preventing success.

  • (Errors::TooManyAttemptsError)

    Raised when the configured maximum number of attempts have been made, and the waiter is not yet successful.

  • (Errors::UnexpectedError)

    Raised when an error is encounted while polling for a resource that is not expected.

  • (Errors::NoSuchWaiterError)

    Raised when you request to wait for an unknown state.



31975
31976
31977
31978
31979
# File 'lib/aws-sdk-rds/client.rb', line 31975

def wait_until(waiter_name, params = {}, options = {})
  w = waiter(waiter_name, options)
  yield(w.waiter) if block_given? # deprecated
  w.wait(params)
end

#waiter_namesObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Deprecated.


31983
31984
31985
# File 'lib/aws-sdk-rds/client.rb', line 31983

def waiter_names
  waiters.keys
end