Index: openacs-4/packages/acs-core-docs/www/oracle.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/oracle.html,v diff -u -r1.52 -r1.53 --- openacs-4/packages/acs-core-docs/www/oracle.html 25 Apr 2018 08:38:28 -0000 1.52 +++ openacs-4/packages/acs-core-docs/www/oracle.html 3 Sep 2024 15:37:32 -0000 1.53 @@ -1,132 +1,75 @@ -
By Vinod Kurup
- </authorblurb> - -- If you are installing PostGreSQL instead of Oracle, skip this section. -
-+
+ 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 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. 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 are:
-+ Useful links to find help on how to set up Oracle under Linux are:
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 Oracle?. In summary, free and inexpensive Linux distributions are not certified. -
- -+
You can download the Oracle software from the Oracle Downloads page. -
- - -+
Each Oracle release comes with extensive and usually quite well-written documentation. Your first step should be to thoroughly read the release notes for your operating system and your Oracle version. Find the docs - here:
- -+ here:
+ Release Documentation
+
It is generally useful to run a particular Oracle version with its + 10g Release Documentation
It is generally useful to run a particular Oracle version with 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. -
- -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 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 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 unless you know what you are doing. Subsequent documents will expect that you used the defaults, so a change made here will necessitate further changes later. For a guide to the defaults, please see the section called “Defaults”. -
- -+
In order for OpenACS to work properly you need to set the environment appropriately. -
-+export ORACLE_BASE=/ora8/m01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/8.1.7 export PATH=$PATH:$ORACLE_HOME/bin @@ -135,40 +78,25 @@ export ORACLE_TERM=vt100 export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data -umask 022+umask 022
+open_cursors = 500
+nls_date_format = "YYYY-MM-DD"
-
-open_cursors = 500-
-nls_date_format = "YYYY-MM-DD"- - -
- For additional resources/documentation, please see this thread and Andrew Piskorski's mini-guide. -
+
-
Though Oracle 8.1.7 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. We recommend entering the
X window system as a normal user and then doing a su
-
. This command gives you full root access.
-
-
-
Login as a non-root user and start X by typing
startx
@@ -189,117 +117,84 @@
Create and setup the oracle
group and oracle
account
-
-
-
We need to create a user oracle
,
which is used to install the product, as well as starting and
stopping the database.
-
+[root ~]# groupadd dba [root ~]# groupadd oinstall [root ~]# groupadd oracle [root ~]# useradd -g dba -G oinstall,oracle -m oracle -[root ~]# passwd oracle+[root ~]# passwd oracle
-
- You will be prompted for the New Password and Confirmation of that password. -
-+
Setup the installation location for Oracle. While Oracle can
- reside in a variety of places in the file system, OpenACS has
+ reside in a variety of places in the filesystem, OpenACS has
adopted /ora8
as the base
directory.
-
-
-
Note: the Oracle install needs
about 1 GB free on /ora8
to
install successfully.
-
+[root ~]# mkdir /ora8 root:/ora8# cd /ora8 root:/ora8# mkdir -p m01 m02 m03/oradata/ora8 root:/ora8# chown -R oracle.dba /ora8 -root:/ora8# exit-
+root:/ora8# exit
Set up the oracle
user's
environment
-
-
-
Log in as the user
oracle
by typing the
following:
-
+[joeuser ~]$ su - oracle -Password: ********-
+Password: ********
Use a text editor to edit the
.bash_profile
file in the
oracle
account home
directory.
-
+[oracle ~]$ emacs .bash_profile
-
-[oracle ~]$ emacs .bash_profile- -
- You may get this error trying to start emacs: -
- -+Xlib: connection to ":0.0" refused by server Xlib: Client is not authorized to connect to Server emacs: Cannot connect to X server :0. Check the DISPLAY environment variable or use `-d'. Also use the `xhost' program to verify that it is set to permit -connections from your machine.+connections from your machine.
-
- If so, open a new terminal window and do the following: -
++[joeuser ~]$ xhost +localhost
-
-[joeuser ~]$ xhost +localhost- -
- Now, back in the oracle terminal: -
- -+[oracle ~]$ export DISPLAY=localhost:0.0 -[oracle ~]$ emacs .bash_profile+[oracle ~]$ emacs .bash_profile
-
-
Try this procedure anytime you get an Xlib connection refused
error.
@@ -309,9 +204,7 @@
Oracle version number as needed) to
.bash_profile
:
-
+export ORACLE_BASE=/ora8/m01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/8.1.7 export PATH=$PATH:$ORACLE_HOME/bin @@ -320,45 +213,32 @@ export ORACLE_TERM=vt100 export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data -umask 022+umask 022
-
-
Save the file by typing CTRL-X
CTRL-S
and then exit by typing
CTRL-X
CTRL-C
. Alternatively, use the menus.
-
-
- Make sure that you do not add any lines like the following -
- -+# NLS_LANG=american -# export NLS_LANG+# export NLS_LANG
-
- These lines will change the Oracle date settings and will break OpenACS since OpenACS depends on the ANSI date format, YYYY-MM-DD dates. -
-+
Log out as oracle -
- --[oracle ~]$ exit-
+
+[oracle ~]$ exit
Log back in as oracle
and double
check that your environment variables are as intended. The
@@ -367,27 +247,19 @@
grep
shows you just the lines
you want (those with ORA in it).
-
+[joeuser ~]$ su - oracle -[oracle ~]$ env | grep ORA+[oracle ~]$ env | grep ORA
-
- If it worked, you should see: -
- -+ORACLE_SID=ora8 ORACLE_BASE=/ora8/m01/app/oracle ORACLE_TERM=vt100 ORACLE_HOME=/ora8/m01/app/oracle/product/8.1.7 -ORA_NLS33=/ora8/m01/app/oracle/product/8.1.7/ocommon/nls/admin/data+ORA_NLS33=/ora8/m01/app/oracle/product/8.1.7/ocommon/nls/admin/data
-
-
If not, try adding the files to
~/.bashrc
instead of
.bash_profile
. Then logout and
@@ -399,141 +271,93 @@
.bash_profile
will be
evaluated.
-
-
-
Make sure that /bin
,
/usr/bin
, and
/usr/local/bin
are in your path
by typing:
-
+[oracle ~]$ echo $PATH -/bin:/usr/bin:/usr/local/bin:/usr/bin/X11:/usr/X11R6/bin:/home/oracle/bin:/ora8/m01/app/oracle/product/8.1.7/bin+/bin:/usr/bin:/usr/local/bin:/usr/bin/X11:/usr/X11R6/bin:/home/oracle/bin:/ora8/m01/app/oracle/product/8.1.7/bin
-
-
If they are not, then add them to the
.bash_profile
by changing the
PATH statement above to
PATH=$PATH:/usr/local/bin:$ORACLE_HOME/bin
-
Log in as oracle
and
start X if not already running. Start a new terminal:
-
+[joeuser ~]$ xhost +localhost [joeuser ~]$ su - oracle Password: ********** -[oracle ~]$ export DISPLAY=localhost:0.0-
+[oracle ~]$ export DISPLAY=localhost:0.0
Find the runInstaller
script
-
-
-
If you are installing Oracle from a CD-ROM, it is located in
the install/linux
path from
the cd-rom mount point
-
+[oracle ~]$ su - root [root ~]# mount -t iso9660 /dev/cdrom /mnt/cdrom [root ~]# exit -[oracle ~]$ cd /mnt/cdrom-
+[oracle ~]$ cd /mnt/cdrom
If you are installing from the tarball, the install script is
located in the Oracle8iR2
directory that was created when you expanded the archive.
-
+[oracle ~]$ cd /where/oracle/Disk1
-
-[oracle ~]$ cd /where/oracle/Disk1-
- Check to make sure the file is there. -
- -+oracle:/where/oracle/Disk1$ ls -doc index.htm install runInstaller stage starterdb+doc index.htm install runInstaller stage starterdb
-
-
If you don't see
runInstaller
, you are in the
wrong directory.
-
+
Run the installer -
++oracle:/where/oracle/Disk1$ ./runInstaller
-
-oracle:/where/oracle/Disk1$ ./runInstaller- -
-
A window will open that welcomes you to the 'Oracle Universal
Installer' (OUI). Click on
"Next
"
-
+
Some people have had trouble with this step on RedHat 7.3 and 8.0. If so, try the following steps before calling ./runInstaller: -
-+
Execute the following command: /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh -
-+
Type export LD_ASSUME_KERNEL=2.2.5 -
-+
The "File Locations" screen in the OUI: -
+-
-
"Source" path should have been
prefilled with "(wherever you mounted the
CDROM)/stage/products.jar
"
@@ -543,32 +367,26 @@
"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). -
+
The "Unix Group Name" screen in the OUI: -
+-
-
The Unix Group name needs to be set to
'oinstall
' ( we made
this Unix group earlier ).
@@ -577,95 +395,64 @@
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
-
+[joueser ~]$ su - -[root ~]# ln -s /usr/bin/awk /bin/awk-
+[root ~]# ln -s /usr/bin/awk /bin/awk
Open a new terminal window, then type: -
- -[joeuser ~]$ su - +[joeuser ~]$ su - [root ~]# cd /ora8/m01/app/oracle/product/8.1.7 [root ~]# ./orainstRoot.sh ; You should see: Creating Oracle Inventory pointer file (/etc/oraInst.loc) Changing groupname of /ora8/m01/app/oracle/oraInventory to oinstall. [root ~]# mkdir -p /usr/local/java [root ~]# exit -[joeuser ~]$ exit- -
+[joeuser ~]$ exit
Click "Retry" -
+
The "Available Products" screen in the OUI: -
- -+
Select "Oracle 8i Enterprise Edition 8.1.7.1.0"
Click "Next" -
+
The "Installation Types" screen -
- -+
Select the "Custom" installation type. -
-+
Click "Next" -
+
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. -
+
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. -
+
The "Privileged Operation System Groups" screen in the OUI -
- -+
Enter "dba" for "Database Administrator (OSDBA) Group"
@@ -675,34 +462,27 @@ Click "Next"
A progress bar will appear for about 1 minute. -
+
The "Authentication Methods" screen -
-+
Click "Next" -
+
The next screen is "Choose JDK home directory" -
-+
Keep the default path: /usr/local/java
Click "Next" -
+
The "Create a Database" screen in the OUI -
- -+
Select "No" as we will do this later, after some important configuration changes. @@ -711,14 +491,11 @@ Click "Next" -
+
The next screen is "Oracle Product Support" -
- -+
TCP should be checked with "Status" listed as Required @@ -727,14 +504,11 @@ Click "Next" -
+
The "Summary" screen in the OUI -
- -+
Check the "Space Requirements" section to verify you have enough disk space for the install. @@ -756,9 +530,7 @@ to set the environment appropriately and then do su to get root privileges, while keeping the oracle user's environment. -
- -+[joeuser ~]$ su - oracle Password: ********* [oracle ~]$ su @@ -789,31 +561,22 @@ created by the Oracle Enterprise Manager Intelligent Agent. These files may be found in the directories you use for storing other Net8 log and trace files. - If such files exist, the OEM IA may not restart.-
+ If such files exist, the OEM IA may not restart.
Do not follow the instructions on deleting trace and log files, it is not necessary. -
+
[root ~]# exit -[joeuser ~]$ exit-
+[joeuser ~]$ exit
Go back to the pop-up window and click "OK"
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.
@@ -825,156 +588,104 @@ Select "No"
Click "Next" -
+
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 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" -
- -+
Select "No"
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" -
- -+
Select "No"
Click "Next" -
+
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 disappeared! -
+
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. -
-This step will take you through the steps of creating a customized database. Be warned that this process takes about an hour on a Pentium II with 128 MB of RAM. -
- -+
Make sure you are running X. Open up a terminal and
su
to oracle and then run the
dbassist
program.
-
+[joeuser ~]$ xhost +localhost [joeuser ~]$ su - oracle Password: ********* [oracle ~]$ export DISPLAY=localhost:0.0 -[oracle ~]$ dbassist- -
+[oracle ~]$ dbassist
The "Welcome" screen in the Oracle Database Configuration Agent (ODCA) -
- -+
Select "Create a database"
Click "Next" -
+
The "Select database type" screen in the ODCA -
- -+
Select "Custom"
Click "Next" -
+
The "Primary Database Type" window in ODCA -
- -+
Select "Multipurpose"
Click "Next" -
+
The "concurrent users" screen of the ODCA -
- -+
Select "60" concurrent users.
Click "Next" -
+
Select "Dedicated Server
Mode
", click
"Next
"
@@ -1027,7 +738,7 @@
Click the "Save
"
button. Oracle will automatically save it to the correct
- directory and with the correct file name. This will likely be
+ directory and with the correct filename. 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
@@ -1046,29 +757,20 @@
of
/ora8/m01/app/oracle/product/8.1.7
,
the following will open the file for editing.
-
-[oracle ~]$ emacs /ora8/m01/app/oracle/product/8.1.7/dbs/initora8.ora-
+
+[oracle ~]$ emacs /ora8/m01/app/oracle/product/8.1.7/dbs/initora8.ora
Add the following line to the end: -
- --nls_date_format = "YYYY-MM-DD"-
+
+nls_date_format = "YYYY-MM-DD"
Now find the open_cursors
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 to 500
.
-
-open_cursors = 500-
+
+open_cursors = 500
Save the file. In emacs, do CTRL-X
CTRL-S
to save followed by
CTRL-X CTRL-C
to exit or use
@@ -1086,13 +788,9 @@
Change to the directory where the database creation script is and run it: -
- -+[oracle ~]$ cd /ora8/m01/app/oracle/product/8.1.7/assistants/dbca/jlib -oracle:/ora8/m01/app/oracle/product/8.1.7/assistants/dbca/jlib$ ./sqlora8.sh- -+oracle:/ora8/m01/app/oracle/product/8.1.7/assistants/dbca/jlib$ ./sqlora8.sh
In some instances, Oracle will save the file to
/ora8/m01/app/oracle/product/8.1.7/assistants/dbca
Try running the script there if your first attempt does not
@@ -1102,79 +800,49 @@
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. -
-
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.
Save the file to /var/tmp
In the oracle shell, copy the file. -
- --[oracle ~]$ cp /var/tmp/acceptance-sql.txt /var/tmp/acceptance.sql-
+
+[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: -
- --[oracle ~]$ sqlplus system/manager- -
+
+[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 start it as
- the oracle
user.
+ theoracle
user.[oracle ~]$ svrmgrl SVRMGR> connect internal -SVRMGR> startup-
+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): -
- -+SQL> alter user system identified by alexisahunk; SQL> alter user sys identified by alexisahunk; -SQL> alter user ctxsys identified by alexisahunk;-
+SQL> alter user ctxsys identified by alexisahunk;
Verify that your date settings are correct. -
- --SQL> select sysdate from dual;- -
+
+SQL> select sysdate from dual;
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 @@ -1184,18 +852,12 @@ ---------- 2000-06-10 -SQL>- -+SQL>
Many people encounter an error regarding maximum
key length
:
-
+ERROR at line 1: -ORA-01450: maximum key length (758) exceeded- -+ORA-01450: maximum key length (758) exceeded
This error occurs if your database block size is wrong and is
usually suffered by people trying to load OpenACS into a
pre-existing database. Unfortunately, the only solution is to
@@ -1206,25 +868,14 @@
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 Oracle installation is working. -
-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. -
- -+
Oracle includes a script called
dbstart
that can be used to
automatically start the database. Unfortunately, the script
@@ -1233,68 +884,46 @@
it. First, save dbstart to
/var/tmp
. Then, as
oracle
, do the following:
-
+[oracle ~]$ cp /var/tmp/dbstart.txt /ora8/m01/app/oracle/product/8.1.7/bin/dbstart -[oracle ~]$ chmod 755 /ora8/m01/app/oracle/product/8.1.7/bin/dbstart-
+[oracle ~]$ chmod 755 /ora8/m01/app/oracle/product/8.1.7/bin/dbstart
While you're logged in as
oracle
, you should configure the
oratab
file to load your
database at start. Edit the file
/etc/oratab
:
-
You will see this line.
- --ora8:/ora8/m01/app/oracle/product/8.1.7:N- -
+
You will see this line.
+ora8:/ora8/m01/app/oracle/product/8.1.7:N
By the way, if you changed the service name or have multiple 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. -
- --ora8:/ora8/m01/app/oracle/product/8.1.7:Y- -
+
+ora8:/ora8/m01/app/oracle/product/8.1.7:Y
Save the file & quit the terminal. -
+
You need a script to automate startup and shutdown. Save oracle8i.txt in
/var/tmp
. Then login as
root
and install the
script. (Debian users: substitute
/etc/init.d
for
/etc/rc.d/init.d
throughout
this section)
-
+[oracle ~]$ su - [root ~]# cp /var/tmp/oracle8i.txt /etc/rc.d/init.d/oracle8i [root ~]# chown root.root /etc/rc.d/init.d/oracle8i -[root ~]# chmod 755 /etc/rc.d/init.d/oracle8i-
+[root ~]# chmod 755 /etc/rc.d/init.d/oracle8i
Test the script by typing the following commands and checking the
output. (Debian Users: as root, do mkdir
/var/lock/subsys
first)
-
+[root ~]# /etc/rc.d/init.d/oracle8i stop Oracle 8i auto start/stop Shutting Oracle8i: @@ -1337,21 +966,15 @@ Database "ora8" warm started. -Database "ora8" warm started.-
+Database "ora8" warm started.
If it worked, then run these commands to make the startup and shutdown automatic. -
- -Red Hat users:
-+- -
Red Hat users:
[root ~]# cd /etc/rc.d/init.d/ [root ~]# chkconfig --add oracle8i [root ~]# chkconfig --list oracle8i ; You should see: -oracle8i 0:off 1:off 2:off 3:on 4:on 5:on 6:off-Debian users:
-+oracle8i 0:off 1:off 2:off 3:on 4:on 5:on 6:offDebian users:
[root ~]# update-rc.d oracle8i defaults Adding system startup for /etc/init.d/oracle8i ... /etc/rc0.d/K20oracle8i -> ../init.d/oracle8i @@ -1360,9 +983,7 @@ /etc/rc2.d/S20oracle8i -> ../init.d/oracle8i /etc/rc3.d/S20oracle8i -> ../init.d/oracle8i /etc/rc4.d/S20oracle8i -> ../init.d/oracle8i - /etc/rc5.d/S20oracle8i -> ../init.d/oracle8i-SuSE users:
-+ /etc/rc5.d/S20oracle8i -> ../init.d/oracle8iSuSE users:
[root ~]# cd /etc/rc.d/init.d root:/etc/rc.d/init.d# ln -s /etc/rc.d/init.d/oracle8i K20oracle8i root:/etc/rc.d/init.d# ln -s /etc/rc.d/init.d/oracle8i S20oracle8i @@ -1402,36 +1023,25 @@ Executing /sbin/conf.d/SuSEconfig.tetex... Executing /sbin/conf.d/SuSEconfig.ypclient... Processing index files of all manpages... -Finished.-
+Finished.
You also need some scripts to automate startup and shutdown of the Oracle8i listener. The listener is a name server that allows your Oracle programs to talk to local and remote databases using a standard naming convention. It is required for Intermedia Text and full site search. -
- -+
Download these three scripts into
/var/tmp
-
+
- -+
Now issue the following commands (still as
root
).
-
+[root ~]# su - oracle [oracle ~]$ cp /var/tmp/startlsnr.txt /ora8/m01/app/oracle/product/8.1.7/bin/startlsnr [oracle ~]$ cp /var/tmp/stoplsnr.txt /ora8/m01/app/oracle/product/8.1.7/bin/stoplsnr @@ -1440,14 +1050,10 @@ [oracle ~]$ exit [root ~]# cp /var/tmp/listener8i.txt /etc/rc.d/init.d/listener8i [root ~]# cd /etc/rc.d/init.d -root:/etc/rc.d/init.d# chmod 755 listener8i- -+root:/etc/rc.d/init.d# chmod 755 listener8i
Test the listener automation by running the following commands and checking the output. -
- -+root:/etc/rc.d/init.d# ./listener8i stop Oracle 8i listener start/stop Shutting down Listener for 8i: @@ -1489,20 +1095,14 @@ Services Summary... PLSExtProc has 1 service handler(s) ora8 has 1 service handler(s) -The command completed successfully- -+The command completed successfully
This test will verify that the listener is operating normally. Login into the database using the listener naming convention. -
- -+
sqlplus
username/password/@SID
-
+[root ~]# su - oracle [oracle ~]$ sqlplus system/alexisahunk@ora8 @@ -1514,24 +1114,17 @@ SQL> exit [oracle ~]$ exit -[root ~]#- -
RedHat users:
-+[root ~]#
-
RedHat users:
Now run
-chkconfig
on thelistener8i
script. -+[root ~]# cd /etc/rc.d/init.d/ root:/etc/rc.d/init.d# chkconfig --add listener8i root:/etc/rc.d/init.d# chkconfig --list listener8i -listener8i 0:off 1:off 2:off 3:on 4:on 5:on 6:off-Debian users:
-+listener8i 0:off 1:off 2:off 3:on 4:on 5:on 6:off
Debian users:
Now run
-update-rc.d
on thelistener8i
script. -+[root ~]# update-rc.d listener8i defaults 21 19 Adding system startup for /etc/init.d/listener8i ... /etc/rc0.d/K19listener8i -> ../init.d/listener8i @@ -1540,89 +1133,54 @@ /etc/rc2.d/S21listener8i -> ../init.d/listener8i /etc/rc3.d/S21listener8i -> ../init.d/listener8i /etc/rc4.d/S21listener8i -> ../init.d/listener8i - /etc/rc5.d/S21listener8i -> ../init.d/listener8i-+ /etc/rc5.d/S21listener8i -> ../init.d/listener8i
Test the automation -
- -+
As a final test, reboot your computer and make sure Oracle comes up. You can do this by typing -
- --[root ~]# /sbin/shutdown -r -t 0 now- -
+
+[root ~]# /sbin/shutdown -r -t 0 now
Log back in and ensure that Oracle started automatically. -
- -+[joeuser ~]$ su - oracle [oracle ~]$ sqlplus system/alexisahunk@ora8 -SQL> exit-
+SQL> exit
Congratulations, your installation of Oracle 8.1.7 is complete. -
-
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/init
SID.ora
or for the default case,
$ORACLE_HOME/dbs/initora8.ora
-
-nls_date_format = "YYYY-MM-DD"- -
+
+nls_date_format = "YYYY-MM-DD"
You test whether this solved the problem by firing up
sqlplus
and typing:
-
-SQL> select sysdate from dual;- -
+
+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;- -+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: -
- -+[joeuser ~]$ svrmgrl SVRMGR> connect internal Connected. @@ -1631,91 +1189,41 @@ Database dismounted. ORACLE instance shut down. SVRMGR> startup -ORACLE instance started.- -+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: -
- --export nls_lang = american- -
+
+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'- -
+
+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 forums.
-
+
Dropping a tablespace -
- -+
Run sqlplus as the dba: -
- --[oracle ~]$ sqlplus system/changeme-
+
+[oracle ~]$ sqlplus system/changeme
To drop a user and all of the tables and data owned by that user: -
- -
-SQL> drop user oracle_user_name cascade;
- +
+SQL> drop user oracle_user_name cascade;
To drop the tablespace: This will delete everything in the tablespace overriding any referential integrity constraints. Run this command only if you want to clean out your database entirely. -
-
-SQL> drop tablespace table_space_name including contents cascade constraints;
- +
+SQL> drop tablespace table_space_name including contents cascade constraints;
For more information on Oracle, please consult the documentation. -
-We used the following defaults while installing Oracle.
- - -