1 Oracle REST Data Services Installation Checklist

This chapter provides information about supported platforms, system requirements, and Database privileges required for using ORDS .

System Requirements

Oracle REST Data Services system requirements are as follows:

  • Oracle Database (Enterprise Edition, Standard Edition or Standard Edition One) release 11g Release 2 or later, or Oracle 21c Express Edition.

  • Oracle Java 11 or 17.

    Note:

    If the Oracle Java version is lower than 11, then the installation fails with the following error message:
    "Error: A JNI error has occurred, please check your installation and try again  
    Exception in thread "main" java.lang.UnsupportedClassVersionError:
  • Web browser requirements:

    Refer to Oracle Software Web Browser Support Policy for more information.

Note:

Oracle Application Express is not a prerequisite for using Oracle REST Data Services.

If Oracle Application Express is installed and if RESTful services have been configured during the installation (see the step Configuring Oracle REST Data Services in Oracle Application Express Installation Guide), then Oracle REST Data Services supports it.

Supported Java EE Application Servers

Oracle REST Data Services supports the following Java EE application servers:

Application Server Supported Release

Oracle WebLogic Server

14c Release and later

Apache Tomcat

Release 8.5.x through Release 9.0.x

Note:

ORDS cannot run on Tomcat Release 10.

Supported Oracle Application Express (APEX) Versions

Oracle REST Data Services supports the currently supported versions of APEX.

See Also:

The Oracle Application Express (Formerly HTML DB) table in the ORACLE INFORMATION-DRIVEN SUPPORT document for supported versions of APEX.

ORDS Installer Privileges Script

This section describes about the script file that provides privileges to the user to install, upgrade, repair, and uninstall ORDS.

Note:

This script is used when you do not want to use SYS AS SYSDBA to install, upgrade, repair, and uninstall ORDS for Oracle PDB or Oracle 11g.

The Oracle REST Data Services contains a script, ords_installer_privileges.sql which is located in the scripts/installer folder. The script provides the assigned database user the privileges to install, upgrade, repair, and uninstall ORDS in Oracle Database.

Perform the following steps:
  1. Using SQLcl or SQL*Plus, connect to the Oracle Database instance. You must have a Database account with appropriate privileges for installing ORDS.
  2. Execute the following script providing the database user:
    SQL> @/path/to/scripts/installer/ords_installer_privileges.sql exampleuser
    SQL> exit

You must use the specified database user to install, upgrade, repair, and uninstall ORDS.

Privileges Granted to the Oracle REST Data Services Users

As part of the Oracle REST Data Services installation, privileges are granted to several users and roles:

  • ORDS_RUNTIME_ROLE role
    • ORDS_RUNTIME_ROLE is granted EXECUTE on the following packages if these packages are not granted EXECUTE to PUBLIC:
      • SYS.DBMS_LOB
      • SYS.DBMS_SESSION
      • SYS.DBMS_UTILITY
      • SYS.WPIUTL
    • ORDS_RUNTIME_ROLE is granted the necessary ORDS_METADATA object privileges to determine the repository version and to access the connection pool configurations.
  • ORDS_PUBLIC_USER user
    • ORDS_PUBLIC_USER is granted connect to allow connection to the database.
    • ORDS_PUBLIC_USER is granted role, ORDS_RUNTIME_ROLE to allow the user to act as an ORDS runtime user
  • ORDS_ADMINISTRATOR_ROLE role
    • ORDS_ADMINISTRATOR_ROLE is granted EXECUTE on ORDS_METADATA.ORDS_ADMIN PL/SQL package.
  • PUBLIC
    • PUBLIC is granted EXECUTE on ORDS_METADATA.ORDS_REPVERSION view to allow the repository version to be queried by anyone.
    • PUBLIC is granted SELECT on many ORDS_METADATA views.
    • PUBLIC is granted EXECUTE on ORDS_METADATA PL/SQL packages that are available for developer users.
  • ORDS_METADATA schema
    • ORDS_METADATA schema is granted on the following packages if these packages are not granted EXECUTE on PUBLIC:
      • SYS.DBMS_ASSERT
      • SYS.DBMS_LOB
      • SYS.DBMS_OUTPUT
      • SYS.DBMS_SCHEDULER
      • SYS.DBMS_SESSION
      • SYS.DBMS_UTILITY
      • SYS.DEFAULT_JOB_CLASS
      • SYS.HTP
      • SYS.OWA
      • SYS.WPG_DOCLOAD
    • ORDS_METADATA is granted SELECT (11g) or READ (12c or later) on the following view if it is not granted SELECT or READ to PUBLIC:
      • SYS.SESSION_PRIVS
    • ORDS_METADATA schema is granted EXECUTE on the following packages:
      • SYS.DBMS_CRYPTO
      • SYS.DBMS_METADATA
    • ORDS_METADATA schema is granted SELECT (11g) or READ (12c or later) on the following views:
      • SYS.DBA_OBJECTS
      • SYS.DBA_ROLE_PRIVS
      • SYS.DBA_TAB_COLUMNS
    • ORDS_METADATA schema is granted SELECT including WITH GRANT OPTION on the following views:
      • SYS.USER_CONS_COLUMNS
      • SYS.USER_CONSTRAINTS
      • SYS.USER_OBJECTS
      • SYS.USER_PROCEDURES
      • SYS.USER_TAB_COLUMNS
      • SYS.USER_TABLES
      • SYS.USER_VIEWS
    • ORDS_METADATA schema is granted the following system privileges:
      • ALTER USER
      • CREATE ANY TRIGGER
      • CREATE JOB
      • CREATE VIEW
      • CREATE PUBLIC SYNONYM
      • DROP PUBLIC SYNONYM
    • ORDS_METADATA schema is granted the necessary object privileges to migrate Application Express REST data to ORDS_METADATA tables.
    • ORDS_METADATA schema is granted ORDS_ADMINISTRATOR_ROLE, ORDS_RUNTIME_ROLE roles with administrator option.
  • PUBLIC is granted SELECT on many ORDS_METADATA tables and views.

  • PUBLIC is granted EXECUTE on PL/SQL packages that are available for users to invoke.

  • ORDS_METADATA is granted EXECUTE on the following packages if these packages are not granted EXECUTE to PUBLIC:

    • SYS.DBMS_ASSERT
    • SYS.DBMS_LOB
    • SYS.DBMS_OUTPUT
    • SYS.DBMS_SCHEDULER
    • SYS.DBMS_SESSION
    • SYS.DBMS_UTILITY
    • SYS.DEFAULT_JOB_CLASS
    • SYS.HTP
    • SYS.OWA
    • SYS.WPG_DOCLOAD
  • ORDS_METADATA is granted the necessary object privileges to migrate Application Express REST data to ORDS_METADATA tables.

About the Database Users Used by Oracle REST Data Services

Oracle REST Data Services uses the following database users:

User Name Required Description

ORDS_METADATA

Yes

Owner of the PL/SQL packages used for implementing many Oracle REST Data Services capabilities. ORDS_METADATA is where the metadata about Oracle REST Data Services-enabled schemas is stored.

It is not accessed directly by Oracle REST Data Services; the Oracle REST Data Services application never creates a connection to the ORDS_METADATA schema.

ORDS_PUBLIC_USER

Yes

User for Oracle REST Data Services to make an initial database connection for handling requests. Depending on the request, the user will proxy to the relevant Oracle REST Data Services-enabled schema or PL/SQL Gateway user to complete the requested action in the database.

About Command-Line Interface

ORDS release 22.1.0 introduces the ORDS Command-Line Interface that provides the following benefits:
  • Create, update, and list your ORDS configuration
  • Add additional database pools to your configuration Install/upgrade
  • Repair, or uninstall ORDS in the database
  • Run ORDS in standalone mode
The preceding functions can be accomplished interactively through prompts, or run silently (non-interactively) using the ORDS commands.

About Online Help

The online help provides information about the commands along with the available options and arguments. To show the list of ORDS commands, execute the following command:
ords --help
To show the details of an ORDS command, specify the ORDS command followed by --help. If you want additional details for a sub-command, then specify the --help after the sub-command.
Syntax:
ords <command> --help

ords <command> <sub-command> --help
Examples:
  • ords install --help
  • ords config --help


ords config set --help