The Hitchhiker's Guide to the ACS

by Bryan Quinn, Adam Farkas, Doug Hoffman, Hiroyoshi Iwashima, Ryan Lee and Ravi Jasuja,

Installing Oracle 8.1.6

  1. Acquire Oracle 8.1.6 Enterprise Edition for Linux

  2. Things to Keep in Mind

    Throughout these instructions, we will refer to a service name or SID of ora8. Although we do not reccomend this for users not experienced with Oracle, it is possible to change this setting. If so, change any reference to the Oracle Service Name or SID of ora8 to your new name.

    Do not change the name of the Oracle path, /ora8. We reccomend this path setting for pathnames to your customized name. If you are confused by this, stick to using ora8.

  3. Pre-Install Tasks

    Though Oracle 8.1.6 has an automated installer, we still need to perform several manual, administrative tasks before we can launch it. You must perform all of these steps as the root user.

  • Set up the oracle user Environment

  • Installing Oracle

  • Creating the first Database

  • Testing Your New Database

  • Once you've got the acceptance test file all set, stay in your term and type the following:

    $ sqlplus system/manager
    
  • Now that you're into SQL*Plus, change the default passwords for system, sys, and ctxsys to "alexisahunk" (or change them to something you'll remember):
    SQL> alter user system identified by alexisahunk;
    SQL> alter user sys identified by alexisahunk;
    SQL> alter user ctxsys identified by alexisahunk;
    
  • Now we'll create a new tablespace:
    SQL> create tablespace web 
         datafile '/ora8/m03/oradata/ora8/web.dbf' 
         size 50m autoextend on;
    
  • and we'll create a user.

    Typically we will name the account the same name that is used under /web/{service_name} to identify the service.

    SQL> create user web identified by pw4web 
         default tablespace web 
         temporary tablespace temp 
         quota unlimited on web; 
    
    SQL> grant create session, connect, resource to web;
    
  • Next, quit out of SQL*Plus:
    SQL> quit
    
  • Only load the site wide ctx stuff once or you will get errors on subsiqunt runs. Log back into SQL*Plus as user "web"
    $ sqlplus web/pw4web
    SQL>@/[path to the acceptancesql file]/acceptance.sql
    
  • The system will now churn for several minutes. This is normal.

  • If there are no errors, then consider yourself fortunate. Your Oracle installation is working.

  • Automating Startup & Shutdown

    You will want to automate the database startup and shutdown process. It's probably best to have Oracle spring to life when you boot up your machine.

  • Test the automation

    Reboot your computer and ensure that Oracle started automatically by starting sqlplus. If it works, then your Oracle installation is complete.

    Useful Procedures

    For more information on Oracle, please consult the documentation.

    Troubleshooting Oracle Dates

    Oracle has an internal representation for storing the data based on the number of seconds elapsed since some date. However, for the purposes of inputing dates into Oracle and getting them back out, Oracle needs to be told to use a specific date format. By default, it uses an Oracle-specific format which isn't copacetic. You want Oracle to use the ANSI-compliant date format which is of form 'YYYY-MM-DD'.

    To fix this, you should include the following line in $ORACLE_HOME/dbs/initSID.ora or for the default case, $ORACLE_HOME/dbs/initora8.ora:

    nls_date_format = "YYYY-MM-DD"
    
    You test whether this solved the problem by firing up sqlplus and typing
    SQL> select sysdate from dual;
    
    You should see back a date like 2000-06-02. If some of the date is chopped off, i.e. like 2000-06-0, everything is still fine. The problem here is that sqlplus is simply truncating the output. You can fix this by typing
    SQL> column sysdate format a15
    SQL> select sysdate from dual;
    
    If the date does not conform to this format, doublecheck that you included the necessary line in the init scripts. If it still isn't working make sure that you have restarted the database since adding the line if you didn't do it prior to database creation.

    If you're sure that you have restarted the database since adding the line, check your initialization scripts. Make sure that the following line is not included

    export nls_lang = american
    
    Setting this environment variable will override the date setting. Either delete this line and login again or add the following entry to your login scripts after the nls_lang line.
    export nls_date_format = 'YYYY-MM-DD'
    
    Log back in again. If adding the nls_date_format line doesn't help, then let me know about it.