Oracle on Amazon RDS - Amazon Relational Database Service

Oracle on Amazon RDS

Amazon RDS supports DB instances that run the following versions and editions of Oracle Database:

  • Oracle 19c, Version 19.0.0.0

  • Oracle 18c, Version 18.0.0.0

  • Oracle 12c, Version 12.2.0.1

  • Oracle 12c, Version 12.1.0.2

Note

Amazon RDS also currently supports Oracle 11g, Version 11.2.0.4. This version is on a deprecation path because Oracle will no longer provide patches for 11.2.0.4 after the end-of-support date. For more information, see Deprecation of Oracle 11.2.0.4.

You can create DB instances and DB snapshots, point-in-time restores, and automated or manual backups. You can use DB instances running Oracle inside a VPC. You can also add features to your Oracle DB instance by enabling various options. Amazon RDS supports Multi-AZ deployments for Oracle as a high-availability, failover solution.

To deliver a managed service experience, Amazon RDS doesn't provide shell access to DB instances. It also restricts access to certain system procedures and tables that require advanced privileges. You can access databases on a DB instance using any standard SQL client application such as Oracle SQL*Plus. However, you can't access the host directly by using Telnet or Secure Shell (SSH).

When you create a DB instance using your master account, the account gets DBA privileges, with some limitations. Use this account for administrative tasks such as creating additional database accounts. You can't use SYS, SYSTEM, or other Oracle-supplied administrative accounts.

Before creating a DB instance, complete the steps in the Setting Up for Amazon RDS section of this guide.

Common Management Tasks for Oracle on Amazon RDS

Following are the common management tasks you perform with an Amazon RDS Oracle DB instance, with links to relevant documentation for each task.

Task Area Relevant Documentation

Instance Classes, Storage, and PIOPS

If you are creating a production instance, learn how instance classes, storage types, and Provisioned IOPS work in Amazon RDS.

DB Instance Class Support for Oracle

Amazon RDS Storage Types

Multi-AZ Deployments

A production DB instance should use Multi-AZ deployments. Multi-AZ deployments provide increased availability, data durability, and fault tolerance for DB instances.

High Availability (Multi-AZ) for Amazon RDS

Amazon Virtual Private Cloud (VPC)

If your AWS account has a default VPC, then your DB instance is automatically created inside the default VPC. If your account doesn't have a default VPC, and you want the DB instance in a VPC, create the VPC and subnet groups before you create the instance.

Determining Whether You Are Using the EC2-VPC or EC2-Classic Platform

Working with a DB Instance in a VPC

Security Groups

By default, DB instances use a firewall that prevents access. Make sure you create a security group with the correct IP addresses and network configuration to access the DB instance. The security group you create depends on which Amazon EC2 platform your DB instance is on, and whether you will access your DB instance from an Amazon EC2 instance.

In general, if your DB instance is on the EC2-Classic platform, you should create a DB security group. Also, if your instance is on the EC2-VPC platform, you should create a VPC security group.

Determining Whether You Are Using the EC2-VPC or EC2-Classic Platform

Controlling Access with Security Groups

Parameter Groups

If your DB instance is going to require specific database parameters, you should create a parameter group before you create the DB instance.

Working with DB Parameter Groups

Option Groups

If your DB instance will require specific database options, you should create an option group before you create the DB instance.

Options for Oracle DB Instances

Connecting to Your DB Instance

After creating a security group and associating it to a DB instance, you can connect to the DB instance using any standard SQL client application such as Oracle SQL*Plus.

Connecting to a DB Instance Running the Oracle Database Engine

Backup and Restore

You can configure your DB instance to take automated backups, or take manual snapshots, and then restore instances from the backups or snapshots.

Backing Up and Restoring an Amazon RDS DB Instance

Monitoring

You can monitor an Oracle DB instance by using CloudWatch Amazon RDS metrics, events, and enhanced monitoring.

Viewing DB Instance Metrics

Viewing Amazon RDS Events

Log Files

You can access the log files for your Oracle DB instance.

Amazon RDS Database Log Files

There are also advanced tasks and optional features for working with Oracle DB instances. For more information, see the following documentation.

Oracle Licensing

Amazon RDS for Oracle has two licensing options: License Included (LI) and Bring Your Own License (BYOL). After you create an Oracle DB instance on Amazon RDS, you can change the licensing model by modifying the DB instance. For more information, see Modifying an Amazon RDS DB Instance.

License Included

In the License Included model, you don't need to purchase Oracle licenses separately. AWS holds the license for the Oracle database software. In this model, if you have an AWS Support account with case support, contact AWS Support for both Amazon RDS and Oracle Database service requests.

The License Included model is supported on Amazon RDS for the following Oracle database editions:

  • Oracle Database Standard Edition One (SE1)

  • Oracle Database Standard Edition Two (SE2)

Note

The Oracle Database SE1 License Included model isn't supported in the following opt-in AWS Regions:

  • Africa (Cape Town)

  • Asia Pacific (Hong Kong)

  • Europe (Milan)

  • Middle East (Bahrain)

Bring Your Own License (BYOL)

In the BYOL model, you can use your existing Oracle Database licenses to run Oracle deployments on Amazon RDS. You must have the appropriate Oracle Database license (with Software Update License and Support) for the DB instance class and Oracle Database edition you wish to run. You must also follow Oracle's policies for licensing Oracle Database software in the cloud computing environment. For more information on Oracle's licensing policy for Amazon EC2, see Licensing Oracle Software in the Cloud Computing Environment.

In this model, you continue to use your active Oracle support account, and you contact Oracle directly for Oracle Database service requests. If you have an AWS Support account with case support, you can contact AWS Support for Amazon RDS issues. Amazon Web Services and Oracle have a multi-vendor support process for cases that require assistance from both organizations.

The Bring Your Own License model is supported on Amazon RDS for the following Oracle database editions:

  • Oracle Database Enterprise Edition (EE)

  • Oracle Database Standard Edition (SE)

  • Oracle Database Standard Edition One (SE1)

  • Oracle Database Standard Edition Two (SE2)

Integrating with AWS License Manager

To make it easier to monitor Oracle license usage in the BYOL model, AWS License Manager integrates with Amazon RDS for Oracle. License Manager supports tracking of RDS for Oracle engine editions and licensing packs based on virtual cores (vCPUs). You can also use License Manager with AWS Organizations to manage all of your organizational accounts centrally.

Note

RDS for Oracle integration with License Manager isn't supported in the Asia Pacific (Osaka-Local) Region.

The following table shows the product information filters for RDS for Oracle.

Filter

Name

Description

Engine Edition

oracle-ee

Oracle Database Enterprise Edition (EE)

oracle-se

Oracle Database Standard Edition (SE)

oracle-se1

Oracle Database Standard Edition One (SE1)

oracle-se2

Oracle Database Standard Edition Two (SE2)

License Pack

data guard

See Working with Oracle Read Replicas for Amazon RDS (Oracle Active Data Guard)

olap

See Oracle OLAP

ols

See Oracle Label Security

diagnostic pack sqlt

See Oracle SQLT

tuning pack sqlt

See Oracle SQLT

To track license usage of your Oracle DB instances, you can create a license configuration. In this case, RDS for Oracle resources that match the product information filter are automatically associated with the license configuration. Discovery of Oracle DB instances can take up to 24 hours.

To create a license configuration to track the license usage of your Oracle DB instances

  1. Go to https://console.aws.amazon.com/license-manager/.

  2. Create a license configuration.

    For instructions, see Create a License Configuration in the AWS License Manager User Guide.

    Add a rule for an RDS Product Information Filter in the Product Information panel.

    For more information, see ProductInformation in the AWS License Manager API Reference.

To create a license configuration by using the AWS CLI, call the create-license-configuration command. Use the --cli-input-json or --cli-input-yaml parameters to pass the parameters to the command.

Example

The following code creates a license configuration for Oracle Enterprise Edition.

aws license-manager create-license-configuration —cli-input-json file://rds-oracle-ee.json

The following is the sample rds-oracle-ee.json file used in the example.

{ "Name": "rds-oracle-ee", "Description": "RDS Oracle Enterprise Edition", "LicenseCountingType": "vCPU", "LicenseCountHardLimit": false, "ProductInformationList": [ { "ResourceType": "RDS", "ProductInformationFilterList": [ { "ProductInformationFilterName": "Engine Edition", "ProductInformationFilterValue": ["oracle-ee"], "ProductInformationFilterComparator": "EQUALS" } ] } ] }

For more information about product information, see Automated Discovery of Resource Inventory in the AWS License Manager User Guide.

For more information about the --cli-input parameter, see Generating AWS CLI Skeleton and Input Parameters from a JSON or YAML Input File in the AWS CLI User Guide.

Licensing Oracle Multi-AZ Deployments

Amazon RDS supports Multi-AZ deployments for Oracle as a high-availability, failover solution. We recommend Multi-AZ for production workloads. For more information, see High Availability (Multi-AZ) for Amazon RDS.

If you use the Bring Your Own License model, you must have a license for both the primary DB instance and the standby DB instance in a Multi-AZ deployment.

Migrating Between Oracle Editions

For the BYOL model, you can migrate from any Standard Edition (SE, SE1, or SE2) to Enterprise Edition (EE), assuming you have an unused Oracle license appropriate for the edition and class of DB instance that you plan to run. You can't migrate from Enterprise Edition to other editions.

To change the edition and retain your data

  1. Create a snapshot of the DB instance.

    For more information, see Creating a DB Snapshot.

  2. Restore the snapshot to a new DB instance, and select the Oracle database edition you want to use.

    For more information, see Restoring from a DB Snapshot.

  3. (Optional) Delete the old DB instance, unless you want to keep it running and have the appropriate Oracle Database licenses for it.

    For more information, see Deleting a DB Instance.

DB Instance Class Support for Oracle

The computation and memory capacity of a DB instance is determined by its DB instance class. The DB instance class you need depends on your processing power and memory requirements. For more information, see DB Instance Classes.

The following are the DB instance classes supported for Oracle.

Oracle Edition 19c, 18c, and 12c Version 12.2.0.1 Support 12c Version 12.1.0.2 Support 11g Version 11.2.0.4 Support

Enterprise Edition (EE)

Bring Your Own License (BYOL)

db.m5.large–db.m5.24xlarge

db.m4.large–db.m4.16xlarge

db.z1d.large–db.z1d.12xlarge

db.x1e.xlarge–db.x1e.32xlarge

db.x1.16xlarge–db.x1.32xlarge

db.r5.large–db.r5.24xlarge

db.r4.large–db.r4.16xlarge

db.t3.small–db.t3.2xlarge

db.m5.large–db.m5.24xlarge

db.m4.large–db.m4.16xlarge

db.z1d.large–db.z1d.12xlarge

db.x1e.xlarge–db.x1e.32xlarge

db.x1.16xlarge–db.x1.32xlarge

db.r5.large–db.r5.24xlarge

db.r4.large–db.r4.16xlarge

db.t3.micro–db.t3.2xlarge

db.m5.large–db.m5.24xlarge

db.m4.large–db.m4.16xlarge

db.z1d.large–db.z1d.12xlarge

db.x1e.xlarge–db.x1e.32xlarge

db.x1.16xlarge–db.x1.32xlarge

db.r5.large–db.r5.24xlarge

db.r4.large–db.r4.16xlarge

db.t3.micro–db.t3.2xlarge

Standard Edition 2 (SE2)

Bring Your Own License (BYOL)

db.m5.large–db.m5.4xlarge

db.m4.large–db.m4.4xlarge

db.z1d.large–db.z1d.3xlarge

db.x1e.xlarge–db.x1e.4xlarge

db.r5.large–db.r5.4xlarge

db.r4.large–db.r4.4xlarge

db.t3.small–db.t3.2xlarge

db.m5.large–db.m5.4xlarge

db.m4.large–db.m4.4xlarge

db.z1d.large–db.z1d.3xlarge

db.x1e.xlarge–db.x1e.4xlarge

db.r5.large–db.r5.4xlarge

db.r4.large–db.r4.4xlarge

db.t3.micro–db.t3.2xlarge

Standard Edition 2 (SE2)

License Included

db.m5.large–db.m5.4xlarge

db.m4.large–db.m4.4xlarge

db.r5.large–db.r5.4xlarge

db.r4.large–db.r4.4xlarge

db.t3.small–db.t3.2xlarge

db.m5.large–db.m5.4xlarge

db.m4.large–db.m4.4xlarge

db.r5.large–db.r5.4xlarge

db.r4.large–db.r4.4xlarge

db.t3.micro–db.t3.2xlarge

Standard Edition 1 (SE1)

Bring Your Own License (BYOL)

db.m5.large–db.m5.4xlarge

db.m4.large–db.m4.4xlarge

db.z1d.large–db.z1d.3xlarge

db.x1e.xlarge–db.x1e.4xlarge

db.r5.large–db.r5.4xlarge

db.r4.large–db.r4.4xlarge

db.t3.micro–db.t3.2xlarge

Standard Edition 1 (SE1)

License Included

db.m5.large–db.m5.4xlarge

db.m4.large–db.m4.4xlarge

db.r5.large–db.r5.4xlarge

db.t3.micro–db.t3.2xlarge

Standard Edition (SE)

Bring Your Own License (BYOL)

db.m5.large–db.m5.8xlarge

db.m4.large–db.m4.4xlarge

db.z1d.large–db.z1d.6xlarge

db.x1e.xlarge–db.x1e.8xlarge

db.r5.large–db.r5.8xlarge

db.r4.large–db.r4.8xlarge

db.t3.micro–db.t3.2xlarge

Note

We encourage all bring-your-own-license customers to consult their licensing agreement to assess the impact of Amazon RDS for Oracle deprecations. For more information on the compute capacity of DB instance classes supported by Amazon RDS for Oracle, see DB Instance Classes and Configuring the Processor for a DB Instance Class.

Deprecated db.t2 DB Instance Classes for Oracle

The db.t2 DB instance classes are deprecated for Amazon RDS for Oracle. The db.t2 DB instance classes have been replaced by the better performing db.t3 DB instance classes that are generally available at a lower cost. Starting on January 15, 2020, Amazon RDS for Oracle will automatically scale db.t2 DB instances to comparable db.t3 DB instance classes.

If you have DB instances that use db.t2 DB instance classes, Amazon RDS will modify each one automatically to use a comparable DB instance class that is not deprecated. You can change the DB instance class for a DB instance yourself by modifying the DB instance. For more information, see Modifying an Amazon RDS DB Instance.

If you have DB snapshots of DB instances that were using db.t2 DB instance classes, you can choose a DB instance class that is not deprecated when you restore the DB snapshots. For more information, see Restoring from a DB Snapshot.

Note

The db.t3 DB instance classes have hyper-threading enabled by default. When DB instances running the db.t2 DB instance class are migrated, the number of vCPUs is set automatically to the default number of the comparable db.t3 DB instance class. To learn more about the vCPU management features available on Amazon RDS for Oracle, and the default settings for each db.t3 DB instance class, see Configuring the Processor for a DB Instance Class.

Deprecated db.m3 and db.r3 DB Instance Classes for Oracle

The db.m3 and db.r3 DB instance classes are deprecated for Amazon RDS for Oracle. These DB instance classes have been replaced by better performing DB instance classes that are generally available at a lower cost. Starting on September 30, 2019, Amazon RDS for Oracle will automatically scale DB instances to DB instance classes that are not deprecated.

If you have DB instances that use db.m3 and db.r3 DB instance classes, Amazon RDS will modify each one automatically to use a comparable DB instance class that is not deprecated. You can change the DB instance class for a DB instance yourself by modifying the DB instance. For more information, see Modifying an Amazon RDS DB Instance.

If you have DB snapshots of DB instances that were using db.m3 or db.r3 DB instance classes, you can choose a DB instance class that is not deprecated when you restore the DB snapshots. For more information, see Restoring from a DB Snapshot.

Deprecated db.m1 and db.m2 DB Instance Classes for Oracle

The db.m1 and db.m2 DB instance classes are deprecated for Amazon RDS for Oracle. These DB instance classes have been replaced by better performing DB instance classes that are generally available at a lower cost. Starting on September 12, 2018, Amazon RDS for Oracle will automatically scale DB instances to DB instance classes that are not deprecated.

If you have DB instances that use db.m1 and db.m2 DB instance classes, Amazon RDS will modify each one automatically to use a comparable DB instance class that is not deprecated. You can change the DB instance class for a DB instance yourself by modifying the DB instance. For more information, see Modifying an Amazon RDS DB Instance.

If you have DB snapshots of DB instances that were using db.m1 or db.m2 DB instance classes, you can choose a DB instance class that is not deprecated when you restore the DB snapshots. For more information, see Restoring from a DB Snapshot.

Oracle File Size Limits in Amazon RDS

The maximum file size on Amazon RDS Oracle DB instances is 16 TiB. If you try to resize a data file in a bigfile tablespace to a value over the limit, you receive an error such as the following.

ORA-01237: cannot extend datafile 6 ORA-01110: data file 6: '/rdsdbdata/db/mydir/datafile/myfile.dbf' ORA-27059: could not reduce file size Linux-x86_64 Error: 27: File too large Additional information: 2

Oracle Security

The Oracle database engine uses role-based security. A role is a collection of privileges that can be granted to or revoked from a user. A predefined role, named DBA, normally allows all administrative privileges on an Oracle database. The following privileges are not available for the DBA role on an Amazon RDS DB instance using the Oracle engine:

  • ALTER DATABASE

  • ALTER SYSTEM

  • CREATE ANY DIRECTORY

  • DROP ANY DIRECTORY

  • GRANT ANY PRIVILEGE

  • GRANT ANY ROLE

When you create a DB instance, the master user account that you use to create the instance gets DBA privileges (with some limitations). Use the master user account for any administrative tasks such as creating additional user accounts in the database. You can't use the SYS user, SYSTEM user, and other Oracle-supplied administrative accounts.

Amazon RDS Oracle supports SSL/TLS encrypted connections and also the Oracle Native Network Encryption (NNE) option to encrypt connections between your application and your Oracle DB instance. For more information about using SSL with Oracle on Amazon RDS, see Using SSL with an Oracle DB Instance. For more information about the Oracle Native Network Encryption option, see Oracle Native Network Encryption.

Using SSL with an Oracle DB Instance

Secure Sockets Layer (SSL) is an industry-standard protocol for securing network connections between client and server. After SSL version 3.0, the name was changed to Transport Layer Security (TLS), but it is still often referred to as SSL and we refer to the protocol as SSL. Amazon RDS supports SSL encryption for Oracle DB instances. Using SSL, you can encrypt a connection between your application client and your Oracle DB instance. SSL support is available in all AWS regions for Oracle.

You enable SSL encryption for an Oracle DB instance by adding the Oracle SSL option to the option group associated with the DB instance. Amazon RDS uses a second port, as required by Oracle, for SSL connections. Doing this allows both clear text and SSL-encrypted communication to occur at the same time between a DB instance and an Oracle client. For example, you can use the port with clear text communication to communicate with other resources inside a VPC while using the port with SSL-encrypted communication to communicate with resources outside the VPC.

For more information, see Oracle Secure Sockets Layer.

Note

You can't use both SSL and Oracle native network encryption (NNE) on the same DB instance. Before you can use SSL encryption, you must disable any other connection encryption.

Oracle 19c with Amazon RDS

Amazon RDS supports Oracle version 19c, which includes Oracle Enterprise Edition and Oracle Standard Edition Two.

Oracle 19c version 19.0.0.0 includes many new features and updates from the previous version. In this section, you can find the features and changes important to using Oracle 19c version 19.0.0.0 on Amazon RDS. For a complete list of the changes, see the Oracle Database 19c documentation. For a complete list of features supported by each Oracle 19c edition, see Permitted Features, Options, and Management Packs by Oracle Database Offering in the Oracle documentation.

Amazon RDS Parameter Changes for Oracle 19c Version 19.0.0.0

Oracle 19c version 19.0.0.0 includes several new parameters and parameters with new ranges and new default values.

The following table shows the new Amazon RDS parameters for Oracle 19c version 19.0.0.0.

Name

Values

Modifiable

Description

lob_signature_enable

TRUE, FALSE (default)

Y

Enables or disables the LOB locator signature feature.

max_datapump_parallel_per_job

1 to 1024, or AUTO

Y

Specifies the maximum number of parallel processes allowed for each Oracle Data Pump job.

The compatible parameter has a new maximum value for Oracle 19c version 19.0.0.0 on Amazon RDS. The following table shows the new default value.

Parameter Name

Oracle 19c Version 19.0.0.0 Maximum Value

Oracle 18c Version 18.0.0.0 Maximum Value

compatible

19.0.0

18.0.0

The following parameters were removed in Oracle 19c Version 19.0.0.0:

  • exafusion_enabled

  • max_connections

  • o7_dictionary_access

Oracle 18c with Amazon RDS

Amazon RDS supports Oracle version 18c, which includes Oracle Enterprise Edition and Oracle Standard Edition Two.

Oracle 18c version 18.0.0.0 includes many new features and updates from the previous version. In this section, you can find the features and changes important to using Oracle 18c version 18.0.0.0 on Amazon RDS. For a complete list of the changes, see the Oracle Database 18c. For a complete list of features supported by each Oracle 18c edition, see Permitted Features, Options, and Management Packs by Oracle Database Offering in the Oracle documentation.

Amazon RDS Parameter Changes for Oracle 18c Version 18.0.0.0

Oracle 18c version 18.0.0.0 includes several new parameters and parameters with new ranges and new default values.

The following table shows the new Amazon RDS parameters for Oracle 18c version 18.0.0.0.

Name

Values

Modifiable

Description

adg_account_info_tracking

LOCAL (default), GLOBAL

N

Controls login attempts of users on Active Data Guard Standby databases. It extends the control of user account security information.

inmemory_optimized_arithmetic

ENABLE, DISABLE (default)

Y

Encodes the NUMBER data type in in-memory tables compressed with QUERY LOW as a fixed-width native integer scaled by a common exponent.

optimizer_ignore_hints

TRUE, FALSE (default)

Y

Specifies whether embedded hints are ignored.

optimizer_ignore_parallel_hints

TRUE, FALSE (default)

Y

Specifies that embedded parallel hints are ignored.

parallel_min_degree

1 (default) and higher or CPU

Y

Controls the minimum degree of parallelism computed by automatic degree of parallelism.

The compatible parameter has a new default value for Oracle 18c version 18.0.0.0 on Amazon RDS. The following table shows the new default value.

Parameter Name

Oracle 18c Version 18.0.0.0 Default Value

Oracle 12c Version 12.2.0.1 Default Value

compatible

18.0.0

12.2.0

The following parameters were removed in Oracle 18c Version 18.0.0.0:

  • standby_archive_dest

  • utl_file_dir

Oracle 12c with Amazon RDS

Amazon RDS supports Oracle version 12c, which includes Oracle Enterprise Edition and Oracle Standard Edition Two. Oracle version 12c includes two major versions:

Oracle 12c Version 12.2.0.1 with Amazon RDS

Oracle 12c version 12.2.0.1 includes many new features and updates from the previous version. In this section, you can find the features and changes important to using Oracle 12c version 12.2.0.1 on Amazon RDS. For a complete list of the changes, see the Oracle 12c version 12.2 documentation. For a complete list of features supported by each Oracle 12c edition, see Permitted Features, Options, and Management Packs by Oracle Database Offering in the Oracle documentation.

Amazon RDS Parameter Changes for Oracle 12c Version 12.2.0.1

Oracle 12c version 12.2.0.1 includes 20 new parameters in addition to several parameters with new ranges and new default values.

The following table shows the new Amazon RDS parameters for Oracle 12c version 12.2.0.1.

Name

Values

Modifiable

Description

allow_global_dblinks

TRUE, FALSE (default)

Y

Specifies whether LDAP lookup for database links is allowed for the database.

approx_for_aggregation

TRUE, FALSE (default)

Y

Replaces exact query processing for aggregation queries with approximate query processing.

approx_for_count_distinct

TRUE, FALSE (default)

Y

Automatically replaces COUNT (DISTINCT expr) queries with APPROX_COUNT_DISTINCT queries.

approx_for_percentile

NONE (default), PERCENTILE_CONT, PERCENTILE_CONT DETERMINISTIC, PERCENTILE_DISC, PERCENTILE_DISC DETERMINISTIC, ALL, ALL DETERMINISTIC

Y

Converts exact percentile functions to their approximate percentile function counterparts.

cursor_invalidation

DEFERRED, IMMEDIATE (default)

Y

Controls whether deferred cursor invalidation or immediate cursor invalidation is used for DDL statements by default.

data_guard_sync_latency

0 (default) to the number of seconds specified by the NET_TIMEOUT attribute for the LOG_ARCHIVE_DEST_n parameter

Y

Controls how many seconds the Log Writer (LGWR) process waits beyond the response of the first in a series of Oracle Data Guard SYNC redo transport mode connections.

data_transfer_cache_size

0 – 512M, rounded up to the next granule size

Y

Sets the size of the data transfer cache (in bytes) used to receive data blocks (typically from a primary database in an Oracle Data Guard environment) for consumption by an instance when an RMAN RECOVER ... NONLOGGED BLOCK command is running.

inmemory_adg_enabled

TRUE (default), FALSE

Y

Indicates whether in-memory for Active Data Guard is enabled in addition to the in-memory cache size.

inmemory_expressions_usage

STATIC_ONLY, DYNAMIC_ONLY,ENABLE (default), DISABLE

Y

Controls which In-Memory Expressions (IM expressions) are populated into the In-Memory Column Store (IM column store) and are available for queries.

inmemory_virtual_columns

ENABLE, MANUAL (default), DISABLE

Y

Controls which In-Memory Expressions (IM expressions) are populated into the In-Memory Column Store (IM column store) and are available for queries.

instance_abort_delay_time

0 (default) and higher

Y

Specifies how much time to delay an internally initiated instance shutdown (in seconds), such as when a fatal process dies or an unrecoverable instance error occurs.

instance_mode

READ-WRITE (default), READ-ONLY, READ-MOSTLY

N

Indicates whether the instance is read-write, read-only, or read-mostly.

long_module_action

TRUE (default), FALSE

Y

Enables the use of longer lengths for modules and actions.

max_idle_time

0 (default) to the maximum integer. The value of 0 indicates that there is no limit.

Y

Specifies the maximum number of minutes that a session can be idle. After that point, the session is automatically terminated.

optimizer_adaptive_plans

TRUE (default), FALSE

Y

Controls adaptive plans. Adaptive plans are execution plans built with alternative choices that are decided at run time based on statistics collected as the query executes.

optimizer_adaptive_statistics

TRUE, FALSE (default)

Y

Controls adaptive statistics. Some query shapes are too complex to rely on base table statistics alone, so the optimizer augments these statistics with adaptive statistics.

outbound_dblink_protocols

ALL (default), NONE, TCP, TCPS, IPC

N

Specifies the network protocols allowed for communicating for outbound database links in the database.

resource_manage_goldengate

TRUE, FALSE (default)

Y

Determines whether Oracle GoldenGate apply processes in the database are resource managed.

standby_db_preserve_states

NONE (default), SESSION, ALL

N

Controls whether user sessions and other internal states of the instance are retained when a readable physical standby database is converted to a primary database.

uniform_log_timestamp_format

TRUE (default), FALSE

Y

Specifies that a uniform timestamp format be used in Oracle Database trace (.trc) files and log files (such as the alert log).

The compatible parameter has a new default value for Oracle 12c version 12.2.0.1 on Amazon RDS. The following table shows the new default value.

Parameter Name

Oracle 12c Version 12.2.0.1 Default Value

Oracle 12c Version 12.1.0.2 Default Value

compatible

12.2.0

12.0.0

The optimizer_features_enable parameter has a new value range for Oracle 12c version 12.2.0.1 on Amazon RDS. For the old and new value ranges, see the following table.

Parameter Name

12c Version 12.2.0.1 Range

12c Version 12.1.0.2 Range

optimizer_features_enable

8.0.0 to 12.2.0.1

8.0.0 to 12.1.0.2

The following parameters were removed in Oracle 12c Version 12.2.0.1:

  • global_context_pool_size

  • max_enabled_roles

  • optimizer_adaptive_features

  • parallel_automatic_tuning

  • parallel_degree_level

  • use_indirect_data_buffers

The following parameter is not supported in Oracle 12c Version 12.2.0.1:

  • sec_case_sensitive_logon

Amazon RDS Security Changes for Oracle 12c Version 12.2.0.1

In Oracle 12c version 12.2.0.1, direct grant of the privilege ADMINISTER DATABASE TRIGGER is required for the owners of database-level triggers. During a major version upgrade to Oracle 12c version 12.2.0.1, Amazon RDS grants this privilege to any user that owns a trigger so that the trigger owner has the required privileges. For more information, see the My Oracle Support document 2275535.1.

Oracle 12c Version 12.1.0.2 with Amazon RDS

Oracle 12c version 12.1.0.2 brings over 500 new features and updates from the previous version. In this section, you can find the features and changes important to using Oracle 12c version 12.1.0.2 on Amazon RDS. For a complete list of the changes, see the Oracle 12c version 12.1 documentation. For a complete list of features supported by each Oracle 12c edition, see Permitted Features, Options, and Management Packs by Oracle Database Edition in the Oracle documentation.

Oracle 12c version 12.1.0.2 includes 16 new parameters that impact your Amazon RDS DB instance, and also 18 new system privileges, several no longer supported packages, and several new option group settings. For more information on these changes, see the following sections.

Amazon RDS Parameter Changes for Oracle 12c Version 12.1.0.2

Oracle 12c version 12.1.0.2 includes 16 new parameters in addition to several parameters with new ranges and new default values.

The following table shows the new Amazon RDS parameters for Oracle 12c version 12.1.0.2.

Name

Values

Modifiable

Description

connection_brokers

CONNECTION_BROKERS = broker_description[,...]

N

Specifies connection broker types, the number of connection brokers of each type, and the maximum number of connections per broker.

db_index_compression_inheritance

TABLESPACE, TABL, ALL, NONE

Y

Displays the options that are set for table or tablespace level compression inheritance.

db_big_table_cache_percent_target

0-90

Y

Specifies the cache section target size for automatic big table caching, as a percentage of the buffer cache.

heat_map

ON, OFF

Y

Enables the database to track read and write access of all segments and modification of database blocks that are due to data manipulation language (DML) and data definition language (DDL) statements.

inmemory_clause_default

INMEMORY, NO INMEMORY

Y

INMEMORY_CLAUSE_DEFAULT enables you to specify a default In-Memory Column Store (IM column store) clause for new tables and materialized views.

inmemory_clause_default_memcompress

NO MEMCOMPRESS, MEMCOMPRESS FOR DML, MEMCOMPRESS FOR QUERY, MEMCOMPRESS FOR QUERY LOW, MEMCOMPRESS FOR QUERY HIGH, MEMCOMPRESS FOR CAPACITY, MEMCOMPRESS FOR CAPACITY LOW, MEMCOMPRESS FOR CAPACITY HIGH

Y

See INMEMORY_CLAUSE_DEFAULT.

inmemory_clause_default_priority

PRIORITY LOW, PRIORITY MEDIUM, PRIORITY HIGH, PRIORITY CRITICAL, PRIORITY NONE

Y

See INMEMORY_CLAUSE_DEFAULT.

inmemory_force

DEFAULT, OFF

Y

INMEMORY_FORCE allows you to specify whether tables and materialized view that are specified as INMEMORY are populated into the In-Memory Column Store (IM column store) or not.

inmemory_max_populate_servers

Null

N

INMEMORY_MAX_POPULATE_SERVERS specifies the maximum number of background populate servers to use for In-Memory Column Store (IM column store) population, so that these servers don't overload the rest of the system.

inmemory_query

ENABLE (default), DISABLE

Y

INMEMORY_QUERY is used to enable or disable in-memory queries for the entire database at the session or system level.

inmemory_size

0, 104857600-274877906944

Y

INMEMORY_SIZE sets the size of the In-Memory Column Store (IM column store) on a database instance.

inmemory_trickle_repopulate_servers_percent

0 to 50

Y

INMEMORY_TRICKLE_REPOPULATE_SERVERS_PERCENT limits the maximum number of background populate servers used for In-Memory Column Store (IM column store) repopulation. This limit is applied because trickle repopulation is designed to use only a small percentage of the populate servers.

max_string_size

STANDARD (default), EXTENDED

N

Controls the maximum size of VARCHAR2, NVARCHAR2, and RAW.

For more information, see Using Extended Data Types.

optimizer_adaptive_features

TRUE (default), FALSE

Y

Enables or disables all of the adaptive optimizer features.

optimizer_adaptive_reporting_only

TRUE, FALSE (default)

Y

Controls reporting-only mode for adaptive optimizations.

pdb_file_name_convert

There is no default value.

N

Maps names of existing files to new file names.

pga_aggregate_limit

0-max of memory

Y

Specifies a limit on the aggregate PGA memory consumed by the instance.

processor_group_name

There is no default value.

N

Instructs the database instance to run itself within the specified operating system processor group.

spatial_vector_acceleration

TRUE, FALSE

N

Enables or disables the spatial vector acceleration, part of spatial option.

temp_undo_enabled

TRUE, FALSE (default)

Y

Determines whether transactions within a particular session can have a temporary undo log.

threaded_execution

TRUE, FALSE

N

Enables the multithreaded Oracle model, but prevents OS authentication.

unified_audit_sga_queue_size

1 MB - 30 MB

Y

Specifies the size of the system global area (SGA) queue for unified auditing.

use_dedicated_broker

TRUE, FALSE

N

Determines how dedicated servers are spawned.

Several parameters have new value ranges for Oracle 12c version 12.1.0.2 on Amazon RDS. For the old and new value ranges, see the following table.

Parameter Name

12c Version 12.1.0.2 Range

11g Range

audit_trail

os | db [, extended] | xml [, extended]

os | db [, extended] | xml [, extended] | true | false

compatible

For DB instances upgraded from Oracle 11g, automatically set to 12.0.0 on Amazon RDS unless a lower value is explicitly provided during the upgrade (as low as 11.2.0)

For new Oracle 12c version 12.1.0.2 DB instances, starts with 12.0.0 on Amazon RDS

Starts with 11.2.0 on Amazon RDS

db_securefile

PERMITTED | PREFERRED | ALWAYS | IGNORE | FORCE

PERMITTED | ALWAYS | IGNORE | FORCE

db_writer_processes

1-100

1-36

optimizer_features_enable

8.0.0 to 12.1.0.2

8.0.0 to 11.2.0.4

parallel_degree_policy

MANUAL,LIMITED,AUTO,ADAPTIVE

MANUAL,LIMITED,AUTO

parallel_min_server

0 to parallel_max_servers

CPU_COUNT * PARALLEL_THREADS_PER_CPU * 2 to parallel_max_servers

One parameter has a new default value for Oracle 12c on Amazon RDS. The following table shows the new default value.

Parameter Name

Oracle 12c Default Value

Oracle 11g Default Value

job_queue_processes

50

1000

Amazon RDS System Privileges for Oracle 12c Version 12.1.0.2

Several new system privileges have been granted to the system account for Oracle 12c version 12.1.0.2. These new system privileges include the following:

  • ALTER ANY CUBE BUILD PROCESS

  • ALTER ANY MEASURE FOLDER

  • ALTER ANY SQL TRANSLATION PROFILE

  • CREATE ANY SQL TRANSLATION PROFILE

  • CREATE SQL TRANSLATION PROFILE

  • DROP ANY SQL TRANSLATION PROFILE

  • EM EXPRESS CONNECT

  • EXEMPT DDL REDACTION POLICY

  • EXEMPT DML REDACTION POLICY

  • EXEMPT REDACTION POLICY

  • LOGMINING

  • REDEFINE ANY TABLE

  • SELECT ANY CUBE BUILD PROCESS

  • SELECT ANY MEASURE FOLDER

  • USE ANY SQL TRANSLATION PROFILE

Amazon RDS Options for Oracle 12c Version 12.1.0.2

Several Oracle options changed between Oracle 11g and Oracle 12c version 12.1.0.2, though most of the options remain the same between the two versions. The Oracle 12c version 12.1.0.2 changes include the following:

  • Oracle Enterprise Manager Database Express 12c replaced Oracle Enterprise Manager 11g Database Control. For more information, see Oracle Enterprise Manager Database Express.

  • The option XMLDB is installed by default in Oracle 12c version 12.1.0.2. You no longer need to install this option yourself.

Amazon RDS PL/SQL Packages for Oracle 12c Version 12.1.0.2

Oracle 12c version 12.1.0.2 includes a number of new built-in PL/SQL packages. The packages included with Amazon RDS Oracle 12c version 12.1.0.2 include the following.

Package Name

Description

CTX_ANL

The CTX_ANL package is used with AUTO_LEXER and provides procedures for adding and dropping a custom dictionary from the lexer.

DBMS_APP_CONT

The DBMS_APP_CONT package provides an interface to determine if the in-flight transaction on a now unavailable session committed or not, and if the last call on that session completed or not.

DBMS_AUTO_REPORT

The DBMS_AUTO_REPORT package provides an interface to view SQL Monitoring and Real-time Automatic Database Diagnostic Monitor (ADDM) data that has been captured into Automatic Workload Repository (AWR).

DBMS_GOLDENGATE_AUTH

The DBMS_GOLDENGATE_AUTH package provides subprograms for granting privileges to and revoking privileges from GoldenGate administrators.

DBMS_HEAT_MAP

The DBMS_HEAT_MAP package provides an interface to externalize heatmaps at various levels of storage including block, extent, segment, object, and tablespace.

DBMS_ILM

The DBMS_ILM package provides an interface for implementing Information Lifecycle Management (ILM) strategies using Automatic Data Optimization (ADO) policies.

DBMS_ILM_ADMIN

The DBMS_ILM_ADMIN package provides an interface to customize Automatic Data Optimization (ADO) policy execution.

DBMS_PART

The DBMS_PART package provides an interface for maintenance and management operations on partitioned objects.

DBMS_PRIVILEGE_CAPTURE

The DBMS_PRIVILEGE_CAPTURE package provides an interface to database privilege analysis.

DBMS_QOPATCH

The DBMS_QOPATCH package provides an interface to view the installed database patches.

DBMS_REDACT

The DBMS_REDACT package provides an interface to Oracle Data Redaction, which enables you to mask (redact) data that is returned from queries issued by low-privileged users or an application.

DBMS_SPD

The DBMS_SPD package provides subprograms for managing SQL plan directives (SPD).

DBMS_SQL_TRANSLATOR

The DBMS_SQL_TRANSLATOR package provides an interface for creating, configuring, and using SQL translation profiles.

DBMS_SQL_MONITOR

The DBMS_SQL_MONITOR package provides information about real-time SQL Monitoring and real-time Database Operation Monitoring.

DBMS_SYNC_REFRESH

The DBMS_SYNC_REFRESH package provides an interface to perform a synchronous refresh of materialized views.

DBMS_TSDP_MANAGE

The DBMS_TSDP_MANAGE package provides an interface to import and manage sensitive columns and sensitive column types in the database. DBMS_TSDP_MANAGE is used with the DBMS_TSDP_PROTECT package for transparent sensitive data protection (TSDP) policies. DBMS_TSDP_MANAGE is available with the Enterprise Edition only.

DBMS_TSDP_PROTECT

The DBMS_TSDP_PROTECT package provides an interface to configure transparent sensitive data protection (TSDP) policies in conjunction with the DBMS_TSDP_MANAGE package. DBMS_TSDP_PROTECT is available with the Enterprise Edition only.

DBMS_XDB_CONFIG

The DBMS_XDB_CONFIG package provides an interface for configuring Oracle XML DB and its repository.

DBMS_XDB_CONSTANTS

The DBMS_XDB_CONSTANTS package provides an interface to commonly used constants. Oracle recommends using constants instead of dynamic strings to avoid typographical errors.

DBMS_XDB_REPOS

The DBMS_XDB_REPOS package provides an interface to operate on the Oracle XML database Repository.

DBMS_XMLSCHEMA_ANNOTATE

The DBMS_XMLSCHEMA_ANNOTATE package provides an interface to manage and configure the structured storage model, mainly through the use of pre-registration schema annotations.

DBMS_XMLSTORAGE_MANAGE

The DBMS_XMLSTORAGE_MANAGE package provides an interface to manage and modify XML storage after schema registration has been completed.

DBMS_XSTREAM_ADM

The DBMS_XSTREAM_ADM package provides interfaces for streaming database changes between an Oracle database and other systems. XStream enables applications to stream out or stream in database changes.

DBMS_XSTREAM_AUTH

The DBMS_XSTREAM_AUTH package provides subprograms for granting privileges to and revoking privileges from XStream administrators.

UTL_CALL_STACK

The UTL_CALL_STACK package provides an interface to provide information about currently executing subprograms.

Oracle 12c Version 12.1.0.2 Packages Not Supported

Several Oracle 11g PL/SQL packages are not supported in Oracle 12c version 12.1.0.2. These packages include the following:

  • DBMS_AUTO_TASK_IMMEDIATE

  • DBMS_CDC_PUBLISH

  • DBMS_CDC_SUBSCRIBE

  • DBMS_EXPFIL

  • DBMS_OBFUSCATION_TOOLKIT

  • DBMS_RLMGR

  • SDO_NET_MEM

Oracle Database Feature Support

Amazon RDS Oracle supports most of the features and capabilities of Oracle Database. Some features might have limited support or restricted privileges. Some features are only available in Enterprise Edition, and some require additional licenses. For more information about Oracle Database features for specific Oracle Database versions, see the Oracle Database Licensing Information User Manual for the version you're using.

Note

These lists are not exhaustive.

Amazon RDS Oracle supports the following Oracle Database features:

Amazon RDS Oracle doesn't support the following Oracle Database features:

  • Automatic Storage Management (ASM)

  • Database Vault

  • Flashback Database

  • Multitenant

  • Oracle Enterprise Manager Cloud Control Management Repository

  • Real Application Clusters (Oracle RAC)

  • Real Application Testing

  • Unified Auditing, Pure Mode

Oracle Database Parameter Support

In Amazon RDS, you manage parameters using parameter groups. For more information, see Working with DB Parameter Groups. To view the supported parameters for a specific Oracle edition and version, run the AWS CLI describe-engine-default-parameters command.

For example, to view the supported parameters for Oracle Enterprise Edition version 12.2, run the following command.

aws rds describe-engine-default-parameters --db-parameter-group-family oracle-ee-12.2

Oracle Engine Version Management

With DB engine version management, you can control when and how the database engine software running your DB instances is patched and upgraded. With this feature, you get the flexibility to maintain compatibility with database engine patch versions. You can also test new patch versions to ensure they work effectively with your application before deploying them in production. In addition, you can perform version upgrades on your own terms and timelines.

Note

Amazon RDS periodically aggregates official Oracle database patches using an Amazon RDS-specific DB engine version. To see a list of which Oracle patches are contained in an Amazon RDS Oracle-specific engine version, go to Oracle Database Engine Release Notes.

If you enable auto minor version upgrades on your DB instance, they occur automatically. You must perform major upgrades manually, with the exception of the automatic upgrade of 11.2.0.4. For more information about upgrading an Oracle DB instance, see Upgrading the Oracle DB Engine.

Deprecation of Oracle 11.2.0.4

Oracle Corporation intends to deprecate support for Oracle Database version 11.2.0.4 on December 31, 2020. On October 31, 2020, Amazon RDS plans to deprecate support for Oracle version 11.2.0.4 SE1 using the License Included model. On December 31, 2020, Amazon RDS plans to deprecate support for 11.2.0.4 on all editions that use the Bring Your Own License model (BYOL).

Amazon RDS plans to deprecate support for Oracle version 11.2.0.4 by the following schedule, which includes upgrade recommendations. For more information, see Preparing for the Automatic Upgrade of Oracle 11g SE1.

Action or Recommendation 11.2.0.4 on SE1 with License Included 11.2.0.4 on EE, SE, and SE1 with BYOL

We recommend that you upgrade 11.2.0.4 DB instances manually to the version of your choice.

Now–October 31, 2020

Now–December 31, 2020

We recommend that you upgrade 11.2.0.4 snapshots manually to the version of your choice.

August 1–January 31, 2021

October 1, 2020–March 31, 2021

You can no longer create new instances with Amazon RDS for Oracle with the listed version.

August 1, 2020

October 1, 2020

Amazon RDS for Oracle starts automatic upgrades of your DB instances to version 19c.

November 1, 2020

January 1, 2021

Amazon RDS for Oracle starts automatic upgrades to version 19c for any DB instances restored from snapshots.

November 1, 2020–January 31, 2021

January 1–March 31, 2021

Using Huge Pages with an Oracle DB Instance

Amazon RDS for Oracle supports Linux kernel huge pages for increased database scalability. The use of huge pages results in smaller page tables and less CPU time spent on memory management, increasing the performance of large database instances. For more information, see Overview of HugePages in the Oracle documentation.

You can use huge pages with the following versions and editions of Oracle:

  • 19.0.0.0, all editions

  • 18.0.0.0, all editions

  • 12.2.0.1, all editions

  • 12.1.0.2, all editions

  • 11.2.0.4, all editions

The use_large_pages parameter controls whether huge pages are enabled for a DB instance. The possible settings for this parameter are ONLY, FALSE, and {DBInstanceClassHugePagesDefault}. The use_large_pages parameter is set to {DBInstanceClassHugePagesDefault} in the default DB parameter group for Oracle.

To control whether huge pages are enabled for a DB instance automatically, you can use the DBInstanceClassHugePagesDefault formula variable in parameter groups. The value is determined as follows:

  • For the DB instance classes mentioned in the table following, DBInstanceClassHugePagesDefault always evaluates to FALSE by default, and use_large_pages evaluates to FALSE. You can enable huge pages manually for these DB instance classes if the DB instance class has at least 14 GiB of memory.

  • For DB instance classes not mentioned in the table following, if the DB instance class has less than 14 GiB of memory, DBInstanceClassHugePagesDefault always evaluates to FALSE. Also, use_large_pages evaluates to FALSE.

  • For DB instance classes not mentioned in the table following, if the instance class has at least 14 GiB of memory and less than 100 GiB of memory, DBInstanceClassHugePagesDefault evaluates to TRUE by default. Also, use_large_pages evaluates to ONLY. You can disable huge pages manually by setting use_large_pages to FALSE.

  • For DB instance classes not mentioned in the table following, if the instance class has at least 100 GiB of memory, DBInstanceClassHugePagesDefault always evaluates to TRUE. Also, use_large_pages evaluates to ONLY and huge pages can't be disabled.

Huge pages are not enabled by default for the following DB instance classes.

DB Instance Class Family DB Instance Classes with Huge Pages Not Enabled by Default

db.m5

db.m5.large

db.m4

db.m4.large, db.m4.xlarge, db.m4.2xlarge, db.m4.4xlarge, db.m4.10xlarge

db.m3

db.m3.medium, db.m3.large, db.m3.xlarge, db.m3.2xlarge

db.r3

db.r3.large, db.r3.xlarge, db.r3.2xlarge, db.r3.4xlarge, db.r3.8xlarge

db.t3

db.t3.micro, db.t3.small, db.t3.medium, db.t3.large

db.t2

db.t2.micro, db.t2.small, db.t2.medium, db.t2.large

For more information about DB instance classes, see Hardware Specifications for DB Instance Classes .

To enable huge pages for new or existing DB instances manually, set the use_large_pages parameter to ONLY. You can't use huge pages with Oracle Automatic Memory Management (AMM). If you set the parameter use_large_pages to ONLY, then you must also set both memory_target and memory_max_target to 0. For more information about setting DB parameters for your DB instance, see Working with DB Parameter Groups.

You can also set the sga_target, sga_max_size, and pga_aggregate_target parameters. When you set system global area (SGA) and program global area (PGA) memory parameters, add the values together. Subtract this total from your available instance memory (DBInstanceClassMemory) to determine the free memory beyond the huge pages allocation. You must leave free memory of at least 2 GiB, or 10 percent of the total available instance memory, whichever is smaller.

After you configure your parameters, you must reboot your DB instance for the changes to take effect. For more information, see Rebooting a DB Instance.

Note

The Oracle DB instance defers changes to SGA-related initialization parameters until you reboot the instance without failover. In the Amazon RDS console, choose Reboot but do not choose Reboot with failover. In the AWS CLI, call the reboot-db-instance command with the --no-force-failover parameter. The DB instance does not process the SGA-related parameters during failover or during other maintenance operations that cause the instance to restart.

The following is a sample parameter configuration for huge pages that enables huge pages manually. You should set the values to meet your needs.

memory_target = 0 memory_max_target = 0 pga_aggregate_target = {DBInstanceClassMemory*1/8} sga_target = {DBInstanceClassMemory*3/4} sga_max_size = {DBInstanceClassMemory*3/4} use_large_pages = ONLY

Assume the following parameters values are set in a parameter group.

memory_target = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4}) memory_max_target = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4}) pga_aggregate_target = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*1/8}, 0) sga_target = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0) sga_max_size = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0) use_large_pages = {DBInstanceClassHugePagesDefault}

The parameter group is used by a db.r4 DB instance class with less than 100 GiB of memory and a db.r3 instance with more than 100 GiB memory. With these parameter settings and use_large_pages set to {DBInstanceClassHugePagesDefault}, huge pages are enabled on the db.r4 instance, but disabled on the db.r3 instance.

Consider another example with following parameters values set in a parameter group.

memory_target = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4}) memory_max_target = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4}) pga_aggregate_target = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*1/8}, 0) sga_target = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0) sga_max_size = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0) use_large_pages = FALSE

The parameter group is used by a db.r4 DB instance class and a db.r5 DB instance class, both with less than 100 GiB of memory. The parameter group is also used by a db.r3 instance with more than 100 GiB memory. With these parameter settings, huge pages are disabled on the db.r4 instance, the db.r5 instance, and the db.r3 instance.

Note

If this parameter group is used by a db.r4 DB instance class or db.r5 DB instance class with at least 100 GiB of memory, the FALSE setting for use_large_pages is overridden and set to ONLY. In this case, a customer notification regarding the override is sent.

After huge pages are active on your DB instance, you can view huge pages information by enabling enhanced monitoring. For more information, see Enhanced Monitoring.

Using utl_http, utl_tcp, and utl_smtp with an Oracle DB Instance

Amazon RDS supports outbound network access on your DB instances running Oracle. You can use utl_http, utl_tcp, and utl_smtp to connect from your DB instance to the network.

Note the following about working with outbound network access:

  • To use utl_http on DB instances running Oracle 11g, you must install the XMLDB option. For more information, see Oracle XML DB.

  • Outbound network access with utl_http, utl_tcp, and utl_smtp is supported only for Oracle DB instances in a VPC. To determine whether or not your DB instance is in a VPC, see Determining Whether You Are Using the EC2-VPC or EC2-Classic Platform. To move a DB instance not in a VPC into a VPC, see Moving a DB Instance Not in a VPC into a VPC.

  • To use SMTP with the UTL_MAIL option, see Oracle UTL_MAIL.

  • The Domain Name Server (DNS) name of the remote host can be any of the following:

    • Publicly resolvable.

    • The endpoint of an Amazon RDS DB instance.

    • Resolvable through a custom DNS server. For more information, see Setting Up a Custom DNS Server.

    • The private DNS name of an Amazon EC2 instance in the same VPC or a peered VPC. In this case, make sure that the name is resolvable through a custom DNS server. Alternatively, to use the DNS provided by Amazon, you can enable the enableDnsSupport attribute in the VPC settings and enable DNS resolution support for the VPC peering connection. For more information, see DNS Support in Your VPC and Modifying Your VPC Peering Connection.

To connect securely to remote SSL/TLS resources, you can create and upload customized Oracle wallets. By using the Amazon S3 integration with Amazon RDS for Oracle feature, you can download a wallet from Amazon S3 into Oracle DB instances. For information about Amazon S3 integration for Oracle, see Amazon S3 Integration.

The following example creates a wallet for accessing https://status.aws.amazon.com/robots.txt over utl_http.

  1. Obtain the certificate for Amazon Root CA 1 from the Amazon Trust Services Repository.

  2. Create a new wallet and add the following certificate:

    orapki wallet create -wallet . -auto_login_only orapki wallet add -wallet . -trusted_cert -cert AmazonRootCA1.pem.pem - auto_login_only orapki wallet display -wallet .
  3. Upload the wallet to your Amazon S3 bucket.

  4. Complete the prerequisites for Amazon S3 integration with Oracle, and add the S3_INTEGRATION option to your Oracle DB instance. Ensure that the IAM role for the option has access to the Amazon S3 bucket you are using.

    For more information, see Amazon S3 Integration.

  5. Connect to the DB instance, and create a directory in the database to hold the wallet. The following example creates a directory called SSL_WALLET:

    exec rdsadmin.rdsadmin_util.create_directory('SSL_WALLET');
  6. Download the wallet from your Amazon S3 bucket to the Oracle DB instance.

    The following example downloads a wallet to the DB instance directory SSL_WALLET:

    SELECT rdsadmin.rdsadmin_s3_tasks.download_from_s3( p_bucket_name => 'bucket_name', p_s3_prefix => 'wallet_name', p_directory_name => 'SSL_WALLET') AS TASK_ID FROM DUAL;

    Replace bucket_name with the name of the bucket you are using, and replace wallet_name with the name of the wallet.

  7. Set this wallet for utl_http transactions by running the following procedure:

    DECLARE l_wallet_path all_directories.directory_path%type; BEGIN select directory_path into l_wallet_path from all_directories where upper(directory_name)='SSL_WALLET'; utl_http.set_wallet('file:/' || l_wallet_path); END;
  8. Access the URL from above over SSL/TLS.

    SELECT utl_http.request('https://status.aws.amazon.com/robots.txt') AS ROBOTS_TXT FROM DUAL; ROBOTS_TXT -------------------------------------------------------------------------------- User-agent: * Allow: /
Note

The specific certificates that are required for your wallet vary by service. For AWS services, the certificates can typically be found in the Amazon Trust Services Repository.

You can use a similar setup to send emails through UTL_SMTP over SSL/TLS (including Amazon Simple Email Service).

You can establish database links between Oracle DB instances over an SSL/TLS endpoint if the Oracle SSL option is configured for each instance. No further configuration is required. For more information, see Oracle Secure Sockets Layer.

Using OEM, APEX, TDE, and Other Options

Most Amazon RDS DB engines support option groups that allow you to select additional features for your DB instance. Oracle DB instances support several options, including Oracle Enterprise Manager (OEM), Transparent Data Encryption (TDE), Application Express (APEX), and Native Network Encryption. For a complete list of supported Oracle options, see Options for Oracle DB Instances. For more information about working with option groups, see Working with Option Groups.

Using Extended Data Types

Amazon RDS Oracle version 12c supports extended data types. With extended data types, the maximum size is 32,767 bytes for the VARCHAR2, NVARCHAR2, and RAW data types. To use extended data types, set the MAX_STRING_SIZE parameter to EXTENDED. For more information, see Extended Data Types in the Oracle documentation.

If you don't want to use extended data types, keep the MAX_STRING_SIZE parameter set to STANDARD (the default). When this parameter is set to STANDARD, the size limits are 4,000 bytes for the VARCHAR2 and NVARCHAR2 data types, and 2,000 bytes for the RAW data type.

You can enable extended data types on a new or existing DB instance. For new DB instances, DB instance creation time is typically longer when you enable extended data types. For existing DB instances, the DB instance is unavailable during the conversion process.

The following are considerations for a DB instance with extended data types enabled:

  • When you enable extended data types for a DB instance, you can't change the DB instance back to use the standard size for data types. After a DB instance is converted to use extended data types, if you set the MAX_STRING_SIZE parameter back to STANDARD it results in the incompatible-parameters status.

  • When you restore a DB instance that uses extended data types, you must specify a parameter group with the MAX_STRING_SIZE parameter set to EXTENDED. During restore, if you specify the default parameter group or any other parameter group with MAX_STRING_SIZE set to STANDARD it results in the incompatible-parameters status.

  • We recommend that you don't enable extended data types for Oracle DB instances running on the t2.micro DB instance class.

When the DB instance status is incompatible-parameters because of the MAX_STRING_SIZE setting, the DB instance remains unavailable until you set the MAX_STRING_SIZE parameter to EXTENDED and reboot the DB instance.

Enabling Extended Data Types for a New DB Instance

To enable extended data types for a new DB instance

  1. Set the MAX_STRING_SIZE parameter to EXTENDED in a parameter group.

    To set the parameter, you can either create a new parameter group or modify an existing parameter group.

    For more information, see Working with DB Parameter Groups.

  2. Create a new Amazon RDS Oracle DB instance, and associate the parameter group with MAX_STRING_SIZE set to EXTENDED with the DB instance.

    For more information, see Creating an Amazon RDS DB Instance.

Enabling Extended Data Types for an Existing DB Instance

When you modify a DB instance to enable extended data types, the data in the database is converted to use the extended sizes. The DB instance is unavailable during the conversion. The amount of time it takes to convert the data depends on the DB instance class used by the DB instance and the size of the database.

Note

After you enable extended data types, you can't perform a point-in-time restore to a time during the conversion. You can restore to the time immediately before the conversion or after the conversion.

To enable extended data types for an existing DB instance

  1. Take a snapshot of the database.

    If there are invalid objects in the database, Amazon RDS tries to recompile them. The conversion to extended data types can fail if Amazon RDS can't recompile an invalid object. The snapshot enables you to restore the database if there is a problem with the conversion. Always check for invalid objects before conversion and fix or drop those invalid objects. For production databases, we recommend testing the conversion process on a copy of your DB instance first.

    For more information, see Creating a DB Snapshot.

  2. Set the MAX_STRING_SIZE parameter to EXTENDED in a parameter group.

    To set the parameter, you can either create a new parameter group or modify an existing parameter group.

    For more information, see Working with DB Parameter Groups.

  3. Modify the DB instance to associate it with the parameter group with MAX_STRING_SIZE set to EXTENDED.

    For more information, see Modifying an Amazon RDS DB Instance.

  4. Reboot the DB instance for the parameter change to take effect.

    For more information, see Rebooting a DB Instance.

Public Synonyms

You can create public synonyms referencing objects in your own schemas. Don't create or modify public synonyms for Oracle-maintained schemas, including SYS, SYSTEM, and RDSADMIN. Doing so might result in invalidation of core database components and affect the availability of your DB instance.