How to install APEX - shorthand.
Prepare the database
There are some options and tools to be installed. If you use the DBCA to generate scripts, make sure you at least run these:@$AH/scripts/CreateDB.sql
@$AH/scripts/CreateDBFiles.sql
@$AH/scripts/CreateDBCatalog.sql
@$AH/scripts/JServer.sql
@$AH/scripts/context.sql
@$AH/scripts/xdb_protocol.sql
@$AH/scripts/postDBCreation.sql
$AH stands for my Administrative Home directory; usually something like $ORACLE_BASE/admin/{SID}
Check
Not sure? You should at least get the following three, when running this:select comp_id from dba_registry;
COMP_ID
------------------------------
XDB
CONTEXT
JAVAVM
owa_util
select owa_util.get_version from dual;
should result in 10.1.2.0.6 or higher. It will need to get patched/upgraded if not. You can safely execute owainst.sql in the owa sub directory of the installation, as the OWA installation checks the version, and only patches if there's something to patchshared_pool
Only when not using SGA_TARGET (10g and 11g) or MEMORY_TARGET (11g), define shared_pool_size 100MB or higher.Install
Now, you are ready to install:@apexins sysaux sysaux temp /i/
Don't forget the last "/"... Change the password of the public account, and unlock the account:
alter user apex_public_user identified by ABC123DEF account unlock;
The OHS
Assuming a MS Windows workstation, zip the images directory of the apex install. Transfer that to your OHS (Oracle Http Server). Now, create a directory and unzip:$ mkdir $ORACLE_BASE/htdocs/apex
$ cd $ORACLE_BASE/htdocs/apex
$ unzip /.../apeximg.zip
plsql.conf
Add this entry to plsql.conf ($ORACLE_BASE points to /oracle/apex): PlsqlMaxParameters 15000
dads.conf
Add this dads.conf:Alias /i/ "/oracle/apex/htdocs/apex/images/"
AddType text/xml xbl
AddType text/x-component htc
<Location /demo>
SetHandler pls_handler
Order deny,allow
Allow from All
AllowOverride None
PlsqlDatabaseUsername apex_public_user
PlsqlDatabasePassword ABC123DEF
PlsqlDatabaseConnectString cs-frank03.home.local:1521:orcl.home.local ServiceNameFormat
PlsqlNLSLanguage American_America.UTF8
PlsqlAuthenticationMode Basic
PlsqlSessionStateManagement StatelessWithFastResetPackageState
PlsqlDocumentPath docs
PlsqlDocumentProcedure wwv_flow_file_mgr.process_downloadd
PlsqlDocumentTablename wwv_flow_file_objects$
PlsqlDefaultPage apex
PlsqlAlwaysDescribeProcedure Off
PlsqlRequestValidationFunction wwv_flow_epg_include_modules.authorize
</Location>
Obfuscate password
It is not a good practice to leave cleartext passwords; obfuscate it:cd $ORACLE_HOME/ohs/modplsql/conf
export PERL5LIB=$ORACLE_HOME/perl/lib/5.8.3
export SHLIB_PATH=$ORACLE_HOME/lib:/usr/lib
export PATH=$ORACLE_HOME/ohs/modplsql/conf:$ORACLE_HOME/perl/bin:$PATH
perl dadTool.pl -o
$ Error: Could not obfuscate password 'ABC123DEF' for dad '/demo'
Number of failed obfuscations : 1
export PERL5LIB=$ORACLE_HOME/perl/lib/5.8.3
export SHLIB_PATH=$ORACLE_HOME/lib:/usr/lib
export PATH=$ORACLE_HOME/ohs/modplsql/conf:$ORACLE_HOME/perl/bin:$PATH
perl dadTool.pl -o
$ Error: Could not obfuscate password 'ABC123DEF' for dad '/demo'
Number of failed obfuscations : 1
Nevermind - it is. Just check it. You're almost done, just make OHS aware of all changes:
$ opmnctl restartproc type=ohs
You are now ready to add workspaces and users, like I've done here.