
{"id":7603,"date":"2020-04-23T09:06:53","date_gmt":"2020-04-23T09:06:53","guid":{"rendered":"https:\/\/rax-stg-wp-aws.com\/blogs\/install-and-configure-oracle-apex-and-ords\/"},"modified":"2026-11-03T19:28:46","modified_gmt":"2026-11-03T19:28:46","slug":"install-and-configure-oracle-apex-and-ords","status":"publish","type":"blogs","link":"https:\/\/www.rackspace.com\/en-gb\/blogs\/install-and-configure-oracle-apex-and-ords\/","title":{"rendered":"Install and configure Oracle APEX and ORDS"},"content":{"rendered":"<p><strong>Introduction<\/strong><\/p>\n<p>This post describes Oracle\u00ae; Application Express (APEX) and Oracle REST Data&nbsp;Services (ORDS), including the steps to install APEX and install and configure&nbsp;ORDS. Typically, database administrators (DBAs) carry out both of these tasks.<\/p>\n<p><strong>APEX<\/strong><\/p>\n<p>Oracle developed APEX as a low-cost, web-based software development environment&nbsp;platform that runs on an Oracle database. You can deploy APEX anywhere, which&nbsp;enables developers to build secure and scalable enterprise apps with various&nbsp;features.<\/p>\n<p><strong>ORDS<\/strong><br \/>\nORDS, a Java-based application, enables developers with SQL and database skills&nbsp;to develop REST APIs for Oracle Database. You can deploy ORDS on web and&nbsp;application servers, including WebLogic\u00ae, Tomcat\u00ae&nbsp;and Glassfish\u00ae as shown in the following image:<\/p>\n<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/blog_article_images\/26449-body-Picture1_5.png\" alt=\"ORDS Pic 1\" \/><\/p>\n<p><a href=\"https:\/\/www.oracle.com\/technetwork\/developer-tools\/apex\/application-express\/apex-arch-1876607.png](https:\/\/www.oracle.com\/technetwork\/developer-tools\/apex\/application-express\/apex-arch-1876607.png\">Image Source<\/a>&nbsp;<\/p>\n<p><strong>Install and configure<\/strong><\/p>\n<p>You can install and configure APEX and ORDS by using the following methods:<\/p>\n<ul>\n<li>Install APEX and ORDS and configure ORDS.<\/li>\n<li>Install APEX and configure a web listener: embedded PL\/SQL gateway.<\/li>\n<li>Install APEX and configure the legacy web listener: Oracle HTTP Server.<\/li>\n<\/ul>\n<p>For this post, I chose the first option, which Oracle recommends: &nbsp;Install APEX&nbsp;and ORDS and configure ORDS.<\/p>\n<p><strong>Install APEX<\/strong><\/p>\n<p><strong>Note:&nbsp;<\/strong>You must install APEX on the database server node.&nbsp;Install the Apex executable and create the tablespace and schema by using the&nbsp;following steps:<\/p>\n<p>\n1. Download and unzip the APEX software to <strong>\/u01\/app\/oradi\/Apex<\/strong>.<br \/>\n<em>&nbsp; &nbsp; &nbsp; &nbsp; $unzip apex_19.2_en.zip<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; SQL&gt; create tablespace apex_data datafile &#8216;+DMLCKI_DATA1\/dmlcki\/datafile\/apex_data01.dbf&#8217; size 4000M; Tablespace created.<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; $pwd \/u01\/app\/oradi\/Apex<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; sqlplus &#8220;\/as sysdba&#8221;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; SQL&gt; @apexins.sql apex_data apex_data TEMP \/i\/<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; apex_data &#8211; Tablespace to hold Apex Schema and its files<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; TEMP &#8211; Temporary Tablespace<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; \/i\/ &#8211; It is image directory<\/em><\/p>\n<p>2\u00b7 Change the administrator password.<\/p>\n<p><em>&nbsp;SQL&gt; @apxchpwd.sql<\/em><\/p>\n<p>3\u00b7 Create the APEX\\_LISTENER and APEX\\_REST\\_PUBLIC\\_USER.<\/p>\n<p><em>&nbsp; &nbsp; &nbsp; &nbsp; SQL&gt; @apex_rest_config.sql<\/em><\/p>\n<p><strong>Install and configure ORDS<\/strong><br \/>\nUse the following steps to install and configure ORDS:<\/p>\n<p>1. Download the latest release of ORDS to <em>\/<strong>u01\/app\/oradi\/ORDS<\/strong><\/em>.<\/p>\n<p>2. Unzip the downloaded file into the directory of your choice.<\/p>\n<p>3. Copy the images directory, <strong>\/u01\/app\/oradi\/Apex\/apex\/images<\/strong>, from the&nbsp;APEX software zip file to the location where you plan to install ORDS.<br \/>\n<em>&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 apex]$ cp -rp images \/u01\/app\/oradi\/ORDS\/<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 apex]$ pwd<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; \/u01\/app\/oradi\/Apex\/apex<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 apex]$ cd \/u01\/app\/oradi\/ORDS\/<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 ORDS]$ ls -lrt<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; drwxr-xr-x 32 oradi oinstall &nbsp;40960 Nov 6 14:21 images<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; -rw-r&#8211;r&#8211; 1 oradi oinstall 63211594 Nov 27 20:14 ords-19.2.0.199.1647.zip<\/em><br \/>\n&nbsp;<\/p>\n<p>4. Oracle recommends that you use the latest version of Java is for ORDS. Download JDK version 8 from the patch file, <strong>p30437878_180231_LINUX.zip<\/strong>, and unzip the file.<\/p>\n<p>5. Take a backup of the existing <strong>jdk<\/strong>&nbsp;folder and copy <strong>jdk1.8.0_231<\/strong>&nbsp;to&nbsp;<strong>ORACLE_HOME\/<\/strong><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 clone]$ cd \/u01\/app\/oradi\/DMLCKI\/db\/tech_st\/11.2.0\/<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 11.2.0]$ mv jdk jdk_old<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 11.2.0]$ cd<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 ~]$ cd clone\/<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 clone]$ cp -rp jdk1.8.0_231 $ORACLE_HOME\/<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 clone]$ cd $ORACLE_HOME\/<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 11.2.0]$ mv jdk1.8.0_231 jdk<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 11.2.0]$ java -version<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; java version &#8220;1.8.0_231&#8221;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Java(TM) SE Runtime Environment (build 1.8.0_231-b33)<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Java HotSpot(TM) Server VM (build 25.231-b33, mixed mode).<\/p>\n<p>\n6. Execute the following command to complete the setup and configuration:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; [oradi@diatmlckidb01 ORDS]$ java -Dorg.eclipse.jetty.server.Request.maxFormContentSize=3000000 -jar ords.war<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; This Oracle REST Data Services instance has not yet been configured.<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Please complete the following prompts<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the location to store configuration data: \/u01\/app\/oradi\/ORDS\/params<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the name of the database server [localhost]:diatmlckidb01.<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the database listen port [1521]:1522<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter 1 to specify the database service name, or 2 to specify the database SID [1]:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the database service name:DMLCKI<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the database password for ORDS_PUBLIC_USER:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Confirm password:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Requires to login with administrator privileges to verify Oracle REST Data Services schema.<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the administrator username:sys<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the database password for SYS AS SYSDBA:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Confirm password:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Retrieving information.<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the default tablespace for ORDS_PUBLIC_USER [SYSAUX]:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter <strong>1<\/strong>&nbsp;if you want to use PL\/SQL Gateway or <strong>2<\/strong>&nbsp;to skip this step.<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; If you are using Oracle Application Express or migrating from mod_plsql then you must enter <strong>1<\/strong>:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the database password for APEX_PUBLIC_USER:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Confirm password:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter <strong>1<\/strong>&nbsp;to specify passwords for Application Express RESTful Services database users (APEX_LISTENER, APEX_REST_PUBLIC_USER) or <strong>2&nbsp;<\/strong>to skip this step:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the database password for APEX_LISTENER:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Confirm password:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the database password for APEX_REST_PUBLIC_USER:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Confirm password:<\/p>\n<p>&nbsp; &nbsp; Enter the database password for APEX_LISTENER:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Confirm password:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Enter the database password for APEX_REST_PUBLIC_USER:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Confirm password:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Nov 28, 2019 6:38:12 AM<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Installing Oracle REST Data Services version 19.2.0.r1991647<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &#8230; Log file written to \/home\/oradi\/ords_install_core_2019-11-28_063812_00625.log<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &#8230; Verified database prerequisites<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &#8230; Created Oracle REST Data Services proxy user<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &#8230; Created Oracle REST Data Services schema<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &#8230; Granted privileges to Oracle REST Data Services<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &#8230; Created Oracle REST Data Services database objects<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &#8230; Log file written to \/home\/oradi\/ords_install_datamodel_2019-11-28_063822_00076.log<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &#8230; Log file written to \/home\/oradi\/ords_install_apex_2019-11-28_063823_00607.log<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Complete installation for Oracle REST Data Services version 19.2.0.r1991647. Elapsed time: 00:00:12.537.<\/p>\n<p>You should be able to access the URL for APEX, <strong>https:\/\/localhost:8080\/apex\/apex_admin<\/strong>, from your web browser.<\/p>\n<p><strong>Conclusion<\/strong><\/p>\n<p>APEX, the Oracle tool for database and web application development, replaced the&nbsp;legacy Oracle forms applications. Oracle APEX is a better choice because it&nbsp;quickly builds applications at a low cost and enables DBAs to address the&nbsp;requirements of your customers.<\/p>\n<p>ORDS gives you direct access to your database access through an HTTP or HTTPS&nbsp;request, so you can easily modify your data for an existing application. Software&nbsp;developers just call a web service to interact with the database.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Install and configure Oracle APEX and ORDS<\/p>\n","protected":false},"author":2,"featured_media":7605,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","format":"standard","meta":{"content-type":"","nid":"26449","content_type":"blog","created_by":"10130","authored_on":"2024-01-05T10:06:53+00:00","field_article_industries":"","tag_category":"Technical","field_blog_author_text":"by Rackspace Technology Staff","seo_description":"Delve into the installation and configuration process of Oracle APEX and ORDS, enabling the building of secure and scalable enterprise apps.\r\n","field_featured_image":"","insights_image":"\/wp-content\/uploads\/2026\/blog_technical_images\/26449-insights_image-oracle-technical-blog-1-insights.jpg","field_partners":"","rxt_platforms":"Oracle","product":"","publisheddate":"2020-04-23T09:06:53","rxt_solutions":"Applications, Application Management & Operations","opengraph_tag":"","x_tag":"","teaser_flag":"Technical Blog","seo_titile":"Sett up Oracle APEX and ORDS | Rackspace Technology","field_topics":"","field_slug":"install-and-configure-oracle-apex-and-ords","footnotes":""},"categories":[178],"tags":[204],"class_list":["post-7603","blogs","type-blogs","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-technical"],"_links":{"self":[{"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/blogs\/7603","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/blogs"}],"about":[{"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/types\/blogs"}],"author":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/comments?post=7603"}],"version-history":[{"count":3,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/blogs\/7603\/revisions"}],"predecessor-version":[{"id":9563,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/blogs\/7603\/revisions\/9563"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/media\/7605"}],"wp:attachment":[{"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/media?parent=7603"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/categories?post=7603"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/tags?post=7603"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}