Index: openacs-4/packages/acs-core-docs/www/oracle.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/oracle.adp,v diff -u -r1.1.2.6 -r1.1.2.7 --- openacs-4/packages/acs-core-docs/www/oracle.adp 9 Jun 2016 13:03:11 -0000 1.1.2.6 +++ openacs-4/packages/acs-core-docs/www/oracle.adp 23 Jun 2016 08:32:45 -0000 1.1.2.7 @@ -16,32 +16,32 @@ OpenACS documentation staff.

If you are installing PostGreSQL instead of Oracle, skip this section.

OpenACS 5.9.0 will install with Oracle 9i but has not been extensively tested so may still have bugs or tuning issues. See -Andrew Piskorski's Oracle 9i notes for +Andrew Piskorski's Oracle 9i notes for guidance.

This installation guide attempts to present all of the information necessary to complete an OpenACS installation. We try hard to make all of the steps possible in one pass, rather than having a step which amounts to "go away and develop a profound understanding of software X and then come back and, in 99% of all -cases, type these two lines." The exception to our rule is Oracle -production systems. This page describes a set of steps to get a -working Oracle development server, but it is unsuitable for production systems. +cases, type these two lines." The exception to our rule is +Oracle production systems. This page describes a set of steps to +get a working Oracle development server, but it is unsuitable for production systems. If you will be using OpenACS on Oracle in a production environment, you will experience many problems unless you develop a basic understanding of Oracle which is outside the scope of this -document. T

This document assumes that you'll be installing Oracle on the -same box as AOLserver. For more details on a remote Oracle -installation, see Daryl Biberdorf's document.

Useful links to find help on how to set up Oracle under Linux +document. T

This document assumes that you'll be installing Oracle on +the same box as AOLserver. For more details on a remote Oracle +installation, see Daryl Biberdorf's document.

Useful links to find help on how to set up Oracle under Linux are:

Acquire Oracle

Production Oracle systems should run on certified platforms. Follow the metalink note 223718.1to find certified -platforms. If you don't have metalink access, take a look at the -Oracle on Linux FAQ: Which Linux Distributions Are Directly Supported By +platforms. If you don't have metalink access, take a look at +the Oracle on Linux FAQ: Which Linux Distributions Are Directly Supported By Oracle?. In summary, free and inexpensive Linux distributions -are not certified.

If you don't have an account at OTN get one: you can +are not certified.

If you don't have an account at OTN get one: you can download the Oracle software from the Oracle Downloads page. It is also get the CDs shipped to you for a nominal fee from the Oracle Store.

Each Oracle release comes with extensive and usually quite well-written documentation. Your first step should be to thoroughly @@ -52,18 +52,18 @@ its latest patchset. At the time of writing these were 8.1.7.4 and 9.2.0.5, both of which are considered to be very stable.

To be able to download a patchset, you need a (to-pay-for) account on Metalink. You may find the appropriate patchset by -following Andrew's suggestion.

+following Andrew's suggestion.

Things to Keep in Mind

Oracle is very well-documented software, the online documentation comes with printable PDFs and full-text search. Altogether there is more than 20.000 pages of documentation, so do not expect to understand Oracle within in a few hours. The best -starting pointing into Oracle is the Concepts book. Here's the +starting pointing into Oracle is the Concepts book. Here's the 8i version and the 9.2 version.

To give you an idea of how configurable Oracle is and how much thought you may need to put into buying the proper hardware and -creating a sane setup, you should thoroughly read Cary Millsap's -Configuring Oracle Server for VLDB and the +creating a sane setup, you should thoroughly read Cary +Millsap's Configuring Oracle Server for VLDB and the Optimal Flexible Architecture standard.

Throughout these instructions, we will refer to a number of configurable settings and advise certain defaults. With the exception of passwords, we advise you to follow these defaults @@ -87,7 +87,7 @@

 nls_date_format = "YYYY-MM-DD"
 

For additional resources/documentation, please see this -thread and Andrew Piskorski's mini-guide.

+thread and Andrew Piskorski's mini-guide.

Pre-Installation Tasks

Though Oracle 8.1.7 has an automated installer, we still need to @@ -131,7 +131,7 @@ root:/ora8# exit

  • -

    Set up the oracle user's +

    Set up the oracle user's environment

    • Log in as the user oracle by @@ -241,13 +241,13 @@

    Check to make sure the file is there.

     oracle:/where/oracle/Disk1$ ls
     doc  index.htm  install  runInstaller  stage  starterdb
    -

    If you don't see runInstaller, you are in the wrong +

    If you don't see runInstaller, you are in the wrong directory.

  • Run the installer

     oracle:/where/oracle/Disk1$ ./runInstaller
    -

    A window will open that welcomes you to the 'Oracle Universal -Installer' (OUI). Click on "Next"

    +

    A window will open that welcomes you to the 'Oracle +Universal Installer' (OUI). Click on "Next"

    Note

    Some people have had trouble with this step on RedHat 7.3 and 8.0. If so, try the following steps before calling ./runInstaller:

    1. Execute the following command: /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh @@ -258,20 +258,20 @@

  • The "File Locations" screen in the OUI:

      -
    • "Source" path should have been prefilled with "(wherever you -mounted the CDROM)/stage/products.jar"

    • +
    • "Source" path should have been prefilled with +"(wherever you mounted the CDROM)/stage/products.jar"

    • "destination" path says "/ora8/m01/app/oracle/product/8.1.7"

      If the destination is not correct it is because your environment variables are not set properly. Make sure you logged on as oracle using su - oracle. If so, edit the ~/.bash_profile as you did in the section called “Pre-Installation Tasks”

      -
    • Click "Next" (a pop up window will display Loading Product -information).

    • +
    • Click "Next" (a pop up window will display Loading +Product information).

  • The "Unix Group Name" screen in the OUI:

      -
    • The Unix Group name needs to be set to 'oinstall' ( we made this Unix group earlier -).

    • Click "Next"

    • A popup window appears instantly, requesting you to run a script +

    • The Unix Group name needs to be set to 'oinstall' ( we made this Unix group +earlier ).

    • Click "Next"

    • A popup window appears instantly, requesting you to run a script as root:

      • Debian users need to link /bin/awk to /usr/bin/awk before running the script below

        @@ -303,17 +303,20 @@
         
      • The "Available Product Components" screen

        • In addition to the defaults, make sure that "Oracle SQLJ -8.1.7.0," "Oracle Protocol Support 8.1.7.0.0," and "Linux -Documentation 8.1.7.0.0" are also checked.

        • Click "Next"

        • A progress bar will appear for about 1 minute.

        • +8.1.7.0," "Oracle Protocol Support 8.1.7.0.0," and +"Linux Documentation 8.1.7.0.0" are also checked.

        • Click "Next"

        • A progress bar will appear for about 1 minute.

      • The "Component Locations" screen in the OUI

          -
        • Click on the "Java Runtime Environment 1.1.8" It should have the -path "/ora8/m01/app/oracle/jre/1.1.8"

        • Click "Next"

        • A progress bar will appear for about 1 minute.

        • +
        • Click on the "Java Runtime Environment 1.1.8" It +should have the path "/ora8/m01/app/oracle/jre/1.1.8"

        • Click "Next"

        • A progress bar will appear for about 1 minute.

      • -

        The "Privileged Operation System Groups" screen in the OUI

          -
        • Enter "dba" for "Database Administrator (OSDBA) Group"

        • Enter "dba" for the "Database Operator (OSOPER) Group"

        • Click "Next"

        • A progress bar will appear for about 1 minute.

        • +

          The "Privileged Operation System Groups" screen in the +OUI

            +
          • Enter "dba" for "Database Administrator (OSDBA) +Group"

          • Enter "dba" for the "Database Operator (OSOPER) +Group"

          • Click "Next"

          • A progress bar will appear for about 1 minute.

        • The "Authentication Methods" screen

          • Click "Next"

          @@ -324,24 +327,25 @@
      • The "Create a Database" screen in the OUI

          -
        • Select "No" as we will do this later, after some important -configuration changes.

        • Click "Next"

        • +
        • Select "No" as we will do this later, after some +important configuration changes.

        • Click "Next"

      • The next screen is "Oracle Product Support"

          -
        • TCP should be checked with "Status" listed as Required

        • Click "Next"

        • +
        • TCP should be checked with "Status" listed as +Required

        • Click "Next"

      • The "Summary" screen in the OUI

          -
        • Check the "Space Requirements" section to verify you have enough -disk space for the install.

        • Check that "(144 products)" is in the "New Installations" -section title.

        • Click "Install"

        • A progress bar will appear for about 20 - 30 minutes. Now is a -good time to take a break.

        • A "Setup Privileges" window will popup towards the end of the -installation asking you to run a script as root +

        • Check the "Space Requirements" section to verify you +have enough disk space for the install.

        • Check that "(144 products)" is in the "New +Installations" section title.

        • Click "Install"

        • A progress bar will appear for about 20 - 30 minutes. Now is a +good time to take a break.

        • A "Setup Privileges" window will popup towards the end +of the installation asking you to run a script as root

        • Run the script. Switch to the oracle user first to set the environment appropriately and then do su to get root privileges, while -keeping the oracle user's enviroment.

          +keeping the oracle user's enviroment.

           [joeuser ~]$ su - oracle
           Password: *********
           [oracle ~]$ su
          @@ -384,40 +388,44 @@
           

          The "Configuration Tools" screen in the OUI

          • This window displays the config tools that will automatically be launched.

        • -

          The "Welcome" screen in the "net 8 Configuration Assistant"

            -
          • Make sure the "Perform Typical installation" is not selected.

          • Click "Next"

          • The "Directory Service Access" screen in the "Net 8 -Configuration Assistant"

          • Select "No"

          • Click "Next"

          • +

            The "Welcome" screen in the "net 8 Configuration +Assistant"

              +
            • Make sure the "Perform Typical installation" is +not selected.

            • Click "Next"

            • The "Directory Service Access" screen in the "Net +8 Configuration Assistant"

            • Select "No"

            • Click "Next"

          • -

            The "Listener Configuration, Listener Name" screen in the "Net 8 -Configuration Assistant"

              +

              The "Listener Configuration, Listener Name" screen in +the "Net 8 Configuration Assistant"

              • Accept the default listener name of "LISTENER"

              • Click "Next"

            • -

              The "Listener Configuration, Select Protocols" screen in the -"Net 8 Configuration Assistant"

                -
              • The only choice in "Select protocols:" should be "TCP/IP"

              • Click "Next"

              • +

                The "Listener Configuration, Select Protocols" screen +in the "Net 8 Configuration Assistant"

                  +
                • The only choice in "Select protocols:" should be +"TCP/IP"

                • Click "Next"

              • -

                The "Listener Configuration TCP/IP Protocol" screen in the "Net -8 Configuration Assistant"

                  +

                  The "Listener Configuration TCP/IP Protocol" screen in +the "Net 8 Configuration Assistant"

                  • Default Port should be 1521 and selected.

                  • Click "Next"

                • -

                  The "Listener Configuration, More Listeners" screen in the "Net -8 Configuration Assistant"

                    +

                    The "Listener Configuration, More Listeners" screen in +the "Net 8 Configuration Assistant"

                    • Select "No"

                    • Click "Next"

                  • -

                    The "Listener Configuration Done" screen in the "Net 8 -Configuration Assistant"

                    • Click "Next"

                    +

                    The "Listener Configuration Done" screen in the +"Net 8 Configuration Assistant"

                    • Click "Next"

                  • -

                    The "Naming Methods Configuration" screen in the "Net 8 -Configuration Assistant"

                      +

                      The "Naming Methods Configuration" screen in the +"Net 8 Configuration Assistant"

                      • Select "No"

                      • Click "Next"

                    • -

                      The "Done" screen in the "Net 8 Configuration Assistant"

                      • Click "Finish"

                      +

                      The "Done" screen in the "Net 8 Configuration +Assistant"

                      • Click "Finish"

                    • The "End of Installation" screen in the OUI

                      • Click "Exit"

                      • Click "Yes" on the confirmation pop up window.

                      • The Oracle Universal Installer window should have @@ -426,7 +434,7 @@

                      Congratulations, you have just installed Oracle 8.1.7 Server! However, you still need to create a database which can take about -an hour of non-interactive time, so don't quit yet.

                      +an hour of non-interactive time, so don't quit yet.

                    Creating the First Database

                    This step will take you through the steps of creating a @@ -445,8 +453,8 @@ [oracle ~]$ dbassist

                  • -

                    The "Welcome" screen in the Oracle Database Configuration Agent -(ODCA)

                      +

                      The "Welcome" screen in the Oracle Database +Configuration Agent (ODCA)

                      • Select "Create a database"

                      • Click "Next"

                    • @@ -464,20 +472,21 @@
                    • Select "Dedicated Server Mode", click "Next"

                    • Accept all of the options, and click Next Oracle Visual Information Retrieval may be grayed out. If so, you can ignore it; just make sure that -everything else is checked.

                    • For "Global Database Name", enter "ora8"; for "SID", also enter "ora8" (it should do this automatically). -Click "Change Character Set and -select UTF8. Click -"Next".

                    • Accept the defaults for the next screen (control file location). -Click "Next"

                    • Go to the "temporary" and "rollback" tabs, and change the Size -(upper-right text box) to 150MB. Click "Next"

                    • Increase the redo log sizes to 10000K each. Click "Next"

                    • Use the default checkpoint interval & timeout. Click -"Next"

                    • Increase "Processes" to -100; "Block Size" to 4096 (better for small Linux boxes; use +everything else is checked.

                    • For "Global Database Name", enter "ora8"; for "SID", also enter +"ora8" (it should do +this automatically). Click "Change Character Set and select +UTF8. Click "Next".

                    • Accept the defaults for the next screen (control file location). +Click "Next"

                    • Go to the "temporary" and "rollback" tabs, +and change the Size (upper-right text box) to 150MB. Click "Next"

                    • Increase the redo log sizes to 10000K each. Click "Next"

                    • Use the default checkpoint interval & timeout. Click +"Next"

                    • Increase "Processes" to 100; "Block Size" to 4096 (better for small Linux boxes; use 8192 for a big Solaris machine).

                    • Accept the defaults for the Trace File Directory. Click -"Next"

                    • Finally, select "Save information -to a shell script" and click "Finish" (We're going to examine the -contents of this file before creating our database.)

                    • Click the "Save" button. -Oracle will automatically save it to the correct directory and with -the correct file name. This will likely be /ora8/m01/app/oracle/product/8.1.7/assistants/dbca/jlib/sqlora8.sh +"Next"

                    • Finally, select "Save +information to a shell script" and click +"Finish" (We're +going to examine the contents of this file before creating our +database.)

                    • Click the "Save" +button. Oracle will automatically save it to the correct directory +and with the correct file name. This will likely be /ora8/m01/app/oracle/product/8.1.7/assistants/dbca/jlib/sqlora8.sh

                    • It will alert you that the script has been saved successfully.

                    • Now we need to customize the database configuration a bit. While @@ -496,7 +505,7 @@

                    • Now find the open_cursors -line in the file. If you're using emacs scroll up to the top of the buffer +line in the file. If you're using emacs scroll up to the top of the buffer and do CTRL-S and type open_cursors to find the line. The default is 100. Change it @@ -519,26 +528,26 @@ succeed.

                    • Your database will now be built. It will take > 1 hour - no -fooling. You will see lots of errors scroll by (like: "ORA-01432: -public synonym to be dropped does not exist") Fear not, this is -normal.

                      Eventually, you'll be returned to your shell prompt. In the -meantime, relax, you've earned it.

                      +fooling. You will see lots of errors scroll by (like: +"ORA-01432: public synonym to be dropped does not exist") +Fear not, this is normal.

                      Eventually, you'll be returned to your shell prompt. In the +meantime, relax, you've earned it.

                  Acceptance Test

                  For this step, open up a terminal and su to oracle as usual. You should be running X and Netscape (or other web browser) for this phase.

                    -
                  • You need to download the "Oracle Acceptance Test" file. It's -available here and at http://philip.greenspun.com/wtr/oracle/acceptance-sql.txt. +

                  • You need to download the "Oracle Acceptance Test" +file. It's available here and at http://philip.greenspun.com/wtr/oracle/acceptance-sql.txt. Save the file to /var/tmp

                  • In the oracle shell, copy the file.

                     [oracle ~]$ cp /var/tmp/acceptance-sql.txt /var/tmp/acceptance.sql
                     
                  • -

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

                    +

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

                     [oracle ~]$ sqlplus system/manager
                     

                    SQL*Plus should startup. If you get an ORA-01034: Oracle not Available error, it is because your Oracle instance is not running. You can manually @@ -549,25 +558,25 @@ SVRMGR> startup

                  • -

                    Now that you're into SQL*Plus, change the default passwords for -system, sys, and ctxsys to "alexisahunk" (or to something you'll -remember):

                    +

                    Now that you're into SQL*Plus, change the default passwords +for system, sys, and ctxsys to "alexisahunk" (or 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;
                     
                  • Verify that your date settings are correct.

                     SQL> select sysdate from dual;
                    -

                    If you don't see a date that fits the format YYYY-MM-DD, please read the section called +

                    If you don't see a date that fits the format YYYY-MM-DD, please read the section called “Troubleshooting Oracle Dates”.

                  • At this point we are going to hammer your database with an intense acceptance test. This usually takes around 30 minutes.

                     SQL> \@ /var/tmp/acceptance.sql
                     
                    -; A bunch of lines will scroll by.  You'll know if the test worked if
                    +; A bunch of lines will scroll by.  You'll know if the test worked if
                     ; you see this at the end:
                     
                     SYSDATE
                    @@ -586,16 +595,16 @@
                     “Creating the First Database”
                     above. You can set the parameter using the dbassist program or by setting the
                     DB_BLOCK_SIZE parameter in your
                    -database's creation script.

                    If there were no errors, then consider yourself fortunate. Your +database's creation script.

                    If there were 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.

                    +process. It's probably best to have Oracle spring to life when +you boot up your machine.

                    • Oracle includes a script called dbstart that can be used to automatically start the database. Unfortunately, the script shipped in the Linux @@ -605,7 +614,7 @@ [oracle ~]$ chmod 755 /ora8/m01/app/oracle/product/8.1.7/bin/dbstart

                    • -

                      While you're logged in as oracle, you should configure the +

                      While you're logged in as oracle, you should configure the oratab file to load your database at start. Edit the file /etc/oratab:

                      • @@ -615,9 +624,9 @@ databases, the format of this file is:

                        service_name:$ORACLE_HOME:Y || N (for autoload)

                      • -

                        Change the last letter from "N" to "Y". This tells Oracle that -you want the database to start when the machine boots. It should -look like this.

                        +

                        Change the last letter from "N" to "Y". This +tells Oracle that you want the database to start when the machine +boots. It should look like this.

                         ora8:/ora8/m01/app/oracle/product/8.1.7:Y
                         
                      • Save the file & quit the terminal.

                      • @@ -870,8 +879,8 @@ 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 +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

                        @@ -887,8 +896,8 @@
                         SQL> select sysdate from dual;
                         

                        If the date does not conform to this format, double-check 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:

                        +isn't working, make sure that you have restarted the database
                        +since adding the line:

                         [joeuser ~]$ svrmgrl
                         SVRMGR> connect internal
                         Connected.
                        @@ -898,16 +907,16 @@
                         ORACLE instance shut down.
                         SVRMGR> startup
                         ORACLE instance started.
                        -

                        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:

                        +

                        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, you can -ask for advice in our OpenACS +

                        Log back in again. If adding the nls_date_format line doesn't help, you +can ask for advice in our OpenACS forums.

                      @@ -961,8 +970,8 @@ access to the Oracle system. -

                      ($‌Id: oracle.xml,v 1.21 2006/07/17 05:38:37 -torbenb Exp $)
                      +
                      ($‌Id: oracle.html,v 1.49.2.10 2016/06/21 +07:44:36 gustafn Exp $)