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 Database 19c (19.0.0.0)

  • Oracle Database 18c (18.0.0.0)

  • Oracle Database 12c Release 2 (12.2.0.1)

  • Oracle Database 12c Release 1 (12.1.0.2)

Note

Oracle Database 18c (18.0.0.0) is on a deprecation path. Oracle Corporation will no longer provide patches for Oracle Database 18c after the end-of-support date. For more information, see Preparing for the automatic upgrade of Oracle Database 18c.

RDS for Oracle Database 11g is no longer supported.

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.

Oracle versions on Amazon RDS

Amazon RDS for Oracle supports the following major database releases.

Oracle Database 19c with Amazon RDS

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

Oracle Database 19c (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 Database 19c (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 Database 19c edition, see Permitted features, options, and management packs by Oracle database offering in the Oracle documentation.

Amazon RDS parameter changes for Oracle Database 19c (19.0.0.0)

Oracle Database 19c (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 Database 19c (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 Database 19c (19.0.0.0) on Amazon RDS. The following table shows the new default value.

Parameter name

Oracle Database 19c (19.0.0.0) maximum value

Oracle Database 18c (18.0.0.0) maximum value

compatible

19.0.0

18.0.0

The following parameters were removed in Oracle Database 19c (19.0.0.0):

  • exafusion_enabled

  • max_connections

  • o7_dictionary_access

Oracle Database 18c on Amazon RDS

Oracle Corporation intends to deprecate support for Oracle Database 18c (18.0.0.0) on July 1, 2021. On this date, Amazon RDS plans to do the following:

  • Deprecate support for Oracle Database 18c for both BYOL and LI

  • Begin upgrading all Oracle Database 18c instances automatically

The following schedule includes upgrade recommendations. For more information, see Preparing for the automatic upgrade of Oracle Database 18c.

Action or recommendation Oracle Database 18c

We recommend that you upgrade Oracle Database 18c DB instances manually to Oracle Database 19c and validate your applications.

Now–June 30, 2021

We recommend that you upgrade Oracle Database 18c snapshots manually to Oracle Database 19c.

May 1, 2021

You can no longer create new Oracle Database 18c instances with Amazon RDS. You can continue to restore 18c DB snapshots without being automatically upgraded until June 30, 2021.

May 1, 2021

Amazon RDS plans to start automatic upgrades of your Oracle Database 18c instances to Oracle Database 19c.

July 1, 2021

Amazon RDS plans to start automatic upgrades to Oracle Database 19c for any Oracle Database 18c DB instances restored from snapshots.

July 1, 2021

Oracle Database 12c with Amazon RDS

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

Oracle Database 12c Release 2 (12.2.0.1) with Amazon RDS

Oracle Database 12c Release 2 (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 Database 12c Release 2 (12.2.0.1) on Amazon RDS. For a complete list of the changes, see the Oracle Database 12c Release 2 (12.2) documentation. For a complete list of features supported by each Oracle Database 12c edition, see Permitted features, options, and management packs by Oracle database offering in the Oracle documentation.

Amazon RDS parameter changes for Oracle Database 12c Release 2 (12.2.0.1)

Oracle Database 12c Release 2 (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 Database 12c Release 2 (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 Database 12c Release 2 (12.2.0.1) on Amazon RDS. The following table shows the new default value.

Parameter name

Oracle Database 12c Release 2 (12.2.0.1) default value

Oracle Database 12c Release 1 (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 Database 12c Release 2 (12.2.0.1) on Amazon RDS. For the old and new value ranges, see the following table.

Parameter name

Oracle Database 12c Release 2 (12.2.0.1) range

Oracle Database 12c Release 1 (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 Database 12c Release 2 (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 Database 12c Release 2 (12.2.0.1) and later:

  • sec_case_sensitive_logon

Amazon RDS security changes for Oracle Database 12c Release 2 (12.2.0.1)

In Oracle Database 12c Release 2 (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 Database 12c Release 2 (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 Database 12c Release 1 (12.1.0.2) with Amazon RDS

Oracle Database 12c Release 1 (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 Database 12c Release 1 (12.1.0.2) on Amazon RDS. For a complete list of the changes, see the Oracle Database 12c Release 1 (12.1) documentation. For a complete list of features supported by each Oracle Database 12c edition, see Permitted features, options, and management packs by Oracle database edition in the Oracle documentation.

Oracle Database 12c Release 1 (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 Database 12c Release 1 (12.1.0.2)

Oracle Database 12c Release 1 (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 Database 12c Release 1 (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 Enabling 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 Database 12c Release 1 (12.1.0.2) on Amazon RDS. For the old and new value ranges, see the following table.

Parameter name

Oracle Database 12c Release 1 (12.1.0.2) range

audit_trail

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

compatible

If you upgrade to 12.2.0.1, 18c, or 19c, COMPATIBLE must be 11.2.0 or higher. We recommend that you use the default settings for COMPATIBLE for your version of Oracle Database unless you have a reason to change it. If COMPATIBLE is not explicitly set, Amazon RDS automatically sets this parameter to 12.0.0.

db_securefile

PERMITTED | PREFERRED | ALWAYS | IGNORE | FORCE

db_writer_processes

1-100

optimizer_features_enable

8.0.0 to 12.1.0.2

parallel_degree_policy

MANUAL,LIMITED,AUTO,ADAPTIVE

parallel_min_server

0 to parallel_max_servers

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

Parameter name

Oracle Database 12c default value

job_queue_processes

50

Amazon RDS system privileges for Oracle Database 12c Release 1 (12.1.0.2)

Several new system privileges have been granted to the system account for Oracle Database 12c Release 1 (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 Database 12c Release 1 (12.1.0.2)

Several Oracle options changed between Oracle Database 11g and Oracle Database 12c Release 1 (12.1.0.2), though most of the options remain the same between the two versions. The Oracle Database 12c Release 1 (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 Database 12c Release 1 (12.1.0.2). You no longer need to install this option yourself.

Amazon RDS PL/SQL packages for Oracle Database 12c Release 1 (12.1.0.2)

Oracle Database 12c Release 1 (12.1.0.2) includes a number of new built-in PL/SQL packages. The packages included with Amazon RDS for Oracle Database 12c Release 1 (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 Database 12c Release 1 (12.1.0.2) packages not supported

Several Oracle Database 11g PL/SQL packages are not supported in Oracle Database 12c Release 1 (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 licensing options

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 only supported on Amazon RDS for Oracle Database Standard Edition Two (SE2).

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.

Amazon RDS supports the BYOL model only for Oracle Database Enterprise Edition (EE) and 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.

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-se2

Oracle Database Standard Edition Two (SE2)

License Pack

data guard

See Working with Oracle 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.

Migrating between Oracle editions

If you have an unused BYOL Oracle license appropriate for the edition and class of DB instance that you plan to run, you can migrate from Standard Edition 2 (SE2) to Enterprise Edition (EE). 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.

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.

RDS for Oracle instance classes

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 Oracle Database 19c, Oracle Database 18c, and Oracle Database 12c Release 2 (12.2.0.1) support Oracle Database 12c Release 1 (12.1.0.2) 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.r5b.large–db.r5b.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.r5b.large–db.r5b.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.r5.large–db.r5.4xlarge

db.r5b.large–db.r5b.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.r5.large–db.r5.4xlarge

db.r5b.large–db.r5b.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

Note

We encourage all BYOL 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.

Note

If you have DB snapshots of DB instances that were using deprecated 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 instance classes for Oracle

Following are the DB instance classes deprecated for Amazon RDS for Oracle:

  • db.m1, db.m2, db.m3

  • db.t1, db.t2

  • db.r1, db.r2, db.r3

The preceding DB instance classes have been replaced by better performing DB instance classes that are generally available at a lower cost. Amazon RDS for Oracle automatically scales DB instances to DB instance classes that are not deprecated.

If you have DB instances that use deprecated 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 deprecated 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.

RDS for Oracle features

Amazon RDS for 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.

Supported features for RDS for Oracle

Amazon RDS Oracle supports the following Oracle Database features:

Unsupported features for RDS for Oracle

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

  • Automatic Storage Management (ASM)

  • Database Vault

  • Flashback Database

  • Messaging Gateway

  • Multitenant

  • Oracle Enterprise Manager Cloud Control Management Repository

  • Real Application Clusters (Oracle RAC)

  • Real Application Testing

  • Unified Auditing, Pure Mode

  • Workspace Manager (WMSYS) schema

Warning

In general, Amazon RDS doesn't prevent you from creating schemas for unsupported features. However, if you create schemas for Oracle features and components that require SYS privileges, you can damage the data dictionary and affect the availability of your instance. Use only supported features and schemas that are available in Adding options to Oracle DB instances.

RDS for Oracle parameters

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 Database edition and version, run the AWS CLI describe-engine-default-parameters command.

For example, to view the supported parameters for the Enterprise Edition of Oracle Database 12c Release 2 (12.2), run the following command.

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

RDS for Oracle character sets

Amazon RDS for Oracle supports two types of character sets: the DB character set and national character set.

DB character set

The Oracle database character set is used in the CHAR, VARCHAR2, and CLOB data types. The database also uses this character set for metadata such as table names, column names, and SQL statements. The Oracle database character set is typically referred to as the DB character set.

You set the character set when you create a DB instance. You can't change the DB character set after you create the database.

Supported DB character sets

The following table lists the Oracle DB character sets that are supported in Amazon RDS. You can use a value from this table with the --character-set-name parameter of the AWS CLI create-db-instance command or with the CharacterSetName parameter of the Amazon RDS API CreateDBInstance operation.

Value Description

AL32UTF8

Unicode 5.0 UTF-8 Universal character set (default)

AR8ISO8859P6

ISO 8859-6 Latin/Arabic

AR8MSWIN1256

Microsoft Windows Code Page 1256 8-bit Latin/Arabic

BLT8ISO8859P13

ISO 8859-13 Baltic

BLT8MSWIN1257

Microsoft Windows Code Page 1257 8-bit Baltic

CL8ISO8859P5

ISO 88559-5 Latin/Cyrillic

CL8MSWIN1251

Microsoft Windows Code Page 1251 8-bit Latin/Cyrillic

EE8ISO8859P2

ISO 8859-2 East European

EL8ISO8859P7

ISO 8859-7 Latin/Greek

EE8MSWIN1250

Microsoft Windows Code Page 1250 8-bit East European

EL8MSWIN1253

Microsoft Windows Code Page 1253 8-bit Latin/Greek

IW8ISO8859P8

ISO 8859-8 Latin/Hebrew

IW8MSWIN1255

Microsoft Windows Code Page 1255 8-bit Latin/Hebrew

JA16EUC

EUC 24-bit Japanese

JA16EUCTILDE

Same as JA16EUC except for mapping of wave dash and tilde to and from Unicode

JA16SJIS

Shift-JIS 16-bit Japanese

JA16SJISTILDE

Same as JA16SJIS except for mapping of wave dash and tilde to and from Unicode

KO16MSWIN949

Microsoft Windows Code Page 949 Korean

NE8ISO8859P10

ISO 8859-10 North European

NEE8ISO8859P4

ISO 8859-4 North and Northeast European

TH8TISASCII

Thai Industrial Standard 620-2533-ASCII 8-bit

TR8MSWIN1254

Microsoft Windows Code Page 1254 8-bit Turkish

US7ASCII

ASCII 7-bit American

UTF8

Unicode 3.0 UTF-8 Universal character set, CESU-8 compliant

VN8MSWIN1258

Microsoft Windows Code Page 1258 8-bit Vietnamese

WE8ISO8859P1

Western European 8-bit ISO 8859 Part 1

WE8ISO8859P15

ISO 8859-15 West European

WE8ISO8859P9

ISO 8859-9 West European and Turkish

WE8MSWIN1252

Microsoft Windows Code Page 1252 8-bit West European

ZHS16GBK

GBK 16-bit Simplified Chinese

ZHT16HKSCS

Microsoft Windows Code Page 950 with Hong Kong Supplementary Character Set HKSCS-2001. Character set conversion is based on Unicode 3.0.

ZHT16MSWIN950

Microsoft Windows Code Page 950 Traditional Chinese

ZHT32EUC

EUC 32-bit Traditional Chinese

NLS_LANG environment variable

A locale is a set of information addressing linguistic and cultural requirements that corresponds to a given language and country. Setting the NLS_LANG environment variable in your client's environment is the simplest way to specify locale behavior for Oracle. This variable sets the language and territory used by the client application and the database server. It also indicates the client's character set, which corresponds to the character set for data entered or displayed by a client application. For more information on NLS_LANG and character sets, see What is a character set or code page? in the Oracle documentation.

NLS initialization parameters

You can also set the following National Language Support (NLS) initialization parameters at the instance level for an Oracle DB instance in Amazon RDS:

  • NLS_DATE_FORMAT

  • NLS_LENGTH_SEMANTICS

  • NLS_NCHAR_CONV_EXCP

  • NLS_TIME_FORMAT

  • NLS_TIME_TZ_FORMAT

  • NLS_TIMESTAMP_FORMAT

  • NLS_TIMESTAMP_TZ_FORMAT

For information about modifying instance parameters, see Working with DB parameter groups.

You can set other NLS initialization parameters in your SQL client. For example, the following statement sets the NLS_LANGUAGE initialization parameter to GERMAN in a SQL client that is connected to an Oracle DB instance:

ALTER SESSION SET NLS_LANGUAGE=GERMAN;

For information about connecting to an Oracle DB instance with a SQL client, see Connecting to your Oracle DB instance.

National character set

The national character set is used in the NCHAR, NVARCHAR2, and NCLOB data types. The national character set is typically referred to as the NCHAR character set. Unlike the DB character set, the NCHAR character set doesn't affect database metadata.

The NCHAR character set supports the following character sets:

  • AL16UTF16 (default)

  • UTF8

You can specify either value with the --nchar-character-set-name parameter of the create-db-instance command (AWS CLI version 2 only). If you use the Amazon RDS API, specify the NcharCharacterSetName parameter of CreateDBInstance operation. You can't change the national character set after you create the database.

For more information about Unicode in Oracle databases, see Supporting multilingual databases with unicode in the Oracle documentation.

RDS for Oracle limitations

Following are important limitations of using Amazon RDS for Oracle.

Note

This list is not exhaustive.

Oracle file size limits in Amazon RDS

The maximum file size on Amazon RDS Oracle DB instances is 16 TiB (tebibytes). 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

Public synonyms for Oracle-supplied schemas

Don't create or modify public synonyms for Oracle-supplied schemas, including SYS, SYSTEM, and RDSADMIN. Such actions might result in invalidation of core database components and affect the availability of your DB instance.

You can create public synonyms referencing objects in your own schemas.

Schemas for unsupported features

In general, Amazon RDS doesn't prevent you from creating schemas for unsupported features. However, if you create schemas for Oracle features and components that require SYS privileges, you can damage the data dictionary and affect your instance availability. Use only supported features and schemas that are available in Adding options to Oracle DB instances.

Limitations for Oracle DBA privileges

In the database, a role is a collection of privileges that you can grant to or revoke from a user. An Oracle database uses roles to provide security.

The predefined role DBA normally allows all administrative privileges on an Oracle database. When you create a DB instance, your master user account gets DBA privileges (with some limitations). To deliver a managed experience, an RDS for Oracle database doesn't provide the following privileges for the DBA role:

  • ALTER DATABASE

  • ALTER SYSTEM

  • CREATE ANY DIRECTORY

  • DROP ANY DIRECTORY

  • GRANT ANY PRIVILEGE

  • GRANT ANY ROLE

Use the master user account for administrative tasks such as creating additional user accounts in the database. You can't use SYS, SYSTEM, and other Oracle-supplied administrative accounts.