- Developer install : The normal install of Oracle APEX, including APEX administration console and all the developer features.
- Run-time install : Completely stripped version of Oracle APEX without any developer features or administration console.
Usually I install APEX using the first option. However with all the new stuff I've learned over the last couple of months I thought.. Why don't I give the run-time only install a try ? Perhaps it's not a bad idea to use this type of configuration for production systems ?
Well today I tried it. And it turned out to be not that difficult.
APEX installation to Oracle XE
- This is basically the most important step. Normally I use @apexins.sql to install. But for the run-time version I use a different sql file.
@apxrtins.sql SYSAUX SYSAUX TEMP /i/
- Then change the default password
@apxchpwd.sql
- This is an optional step : Install the necessary images. This isn't mandatory but if you plan on using any theme I suggest you install this.
@apxldimg.sql /opt/apex
- Then change the password one more time
@apxchpwd.sql
Now after this our APEX run-time version is installed. I pointed my browser to http://localhost:8080/apex/
And all I saw... was an error. Err-1014 Application not found
Meaning absolutely nothing was installed.
Now I wanted to test a the installation of a new application. This proved to be a bit more difficult, because every change to the APEX administration needs to be done using a PL/SQL command, and not the console (which doesn't exist). For more information concerning this API : http://download.oracle.com/docs/cd/E10513_01/doc/apirefs.310/e12855/apex_instance.htm
Using the following steps I installed the Oracle Event Packaged application
- Create demo user (add some grants offcourse : CONNECT,RESOURCE, etc..)
CREATE USER demo IDENTIFIED BY demopwd;
- Create a new workspace (with the matching workspace id from the SQL file)
BEGIN
APEX_INSTANCE_ADMIN.ADD_WORKSPACE(269990401159459463,'WKS_DEMO','DEMO','');
END;
- Load the SQL file. (I performed this as SYSDBA, however it is a lot smarted to create a specific APEX deployment user. Using the APEX_ADMINISTRATOR_ROLE privilege)
@events_installer_1.0.sql
As by magic the application is deployed an available at the url http://localhost:8080/apex/f?p=180 without having used the administration console.
Well I hope you folks found it useful and there are a lot of extra functions available using the ADMIN API so check em out to make your APEX environment a bit more secure.
Note : This was just a small selection of the features that are "disabled" in the run-time mode. For more information read the APEX_INSTANCE_ADMIN documentation or ask on the Oracle forum.