| Home -> oracle -> Oracle 9i (9.0.1) on RedHat 7.2 |
Oracle 9i (9.0.1) installation on Red Hat Linux 7.2Installation of Oracle 9i server on Redhat 7.2 is the same as on Redhat 7.1, except for some really strange behaviour I experienced when the Database configuration assistant (dbca) was invoked, both as part of installation and later when I tried to invoke it manually. This combination is not certified by Oracle, therefore installation problems were to be expected.
Contents
1. Things you need before you start
2. Unpacking downloaded installation filesIf you downloaded database installation files from Oracle site (Linux9i_Disk1.cpio.gz, Linux9i_Disk2.cpio.gz and Linux9i_Disk3.cpio.gz) gunzip them somewhere and you'll get three .cpio files.Unpacking them as described in Oracle documentation won't work (at least it didn't work for me and I have GNU cpio version 2.4.2), so use: # cpio -idmv<Linux9i_Disk1.cpio # cpio -idmv<Linux9i_Disk2.cpio # cpio -idmv<Linux9i_Disk3.cpioNow you should have three directories (Disk1, Disk2 and Disk3) containing installation files. 3. Installation procedureInstall jdk-1.1.8_v3.According to jdk documentation, install jdk under /usr/local.
Now you should create symbolic link to the jdk because oracle expects to find it under /usr/local/java:
# ln -s /usr/local/jdk118_v3 /usr/local/javaNow you should downgrade your binutils to the version 2.10.0.18-1, shipped with RedHat 7.0: # rpm -Uvh --force --nodeps binutils-2.10.0.18-1.i386.rpmCreate user oracle and dependent groups: # groupadd oinstall # groupadd dba # useradd -g oinstall -G dba oracle # passwd oracleCreate user that apache with primary group oinstall: # groupadd apache # useradd -g oinstall -G apache apache # passwd apacheCreate directories in which database files will reside. Oracle recommends OFA - Optimal Flexible Architecture (see oracle installation guide), but in this example everything will be installed under /home/oracle: # mkdir /home/oracle/product # mkdir /home/oracle/product/9.0.1 # chown -R oracle.oinstall /home/oracle/* # mkdir /var/opt/oracle # chown oracle.dba /var/opt/oracleNow login as user oracle and put the following lines at the end of your .bash_profile:
#oracle 9i
export ORACLE_HOME=/home/oracle/product/9.0.1
export ORACLE_BASE=/home/oracle
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export ORACLE_TERM=xterm
export PATH=$PATH:$ORACLE_HOME/bin:/usr/local/java/bin
export TNS_ADMIN=$ORACLE_HOME/config
# change this NLS settings to suit your taste
# or don't put anything and fall back to
# american NLS settings
export NLS_LANG='croatian_croatia.ee8iso8859p2'
export NLS_SORT=xcroatian
if [ -z $LD_LIBRARY_PATH ]
then
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
else
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
fi
if [ -z $CLASSPATH ]
then
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH
else
CLASSPATH=$CLASSPATH:$ORACLE_HOME/JRE:$ORACLE_HOME/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export CLASSPATH
fi
Since I am from Croatia, I use Croatian national language support (NLS_LANG, NLS_DATE_LANGUAGE, NLS_SORT and NLS_DATE_FORMAT).
You should set these variables to suit your needs. Note that all other variables defined here are mandatory.
Listing of valid Oracle NLS Data parameters including supported languages, territories and storage character sets can be found here. Now .bash_profile should be executed in order to initialize these variables:$ source /home/.bash_profileor just log off and than back on as user oracle. If you use some shell other than bash (tcsh, sh, ...) these variables should be set according to syntax of your shell and put in script that automatically executes at user login. Oracle installer MUST be run from Xwindows by user oracle. Start Xwindows and from terminal window and start the installer: $ /wherever/you/unpacked/it/Disk1/runInstalleror (if you have the CD set): $ /mnt/cdrom/runInstaller 4. the Database Configuration AssistantAfter install and relink, oracle installer first runs Network configuration assistant. The 'use tipical configuration' is a safe bet. Then comes configuring and starting of Apache web server which is done with no user input. This should work, but if you experience any problems, you may try to temporarilly shut down your Apache server if you have one running).Now comes the interesting part, the dbca. On step 2 of 8 page I picked the General purpose template which includes pre-configured database files. Procede in choosing your configuration until you come to Step 6 of 8: Initialization parameters (snapshot available). The thing is that when I pressed 'Next' button, the Database Configuration Assistant filled up all the available memory and crashed. In second attempt (well, actually it was more like tenth), instead of clicking 'Next' I clicked 'Finish' and this time installation went on. Now I got to the 'Summary' page (snapshot available). I waited for some time for Database template to load but nothing showed up, so I just clicked 'OK' and, surprisingly, installation went on. Now that your installation has completed, you should reinstall the original binutils from Redhat 7.2 distribution: [root@marvin ora9]# rpm -Uvh binutils-2.11.90.0.8-9.i386.rpm 5. Starting the database for the first time5.1 Starting the databaseIn.bash_profile (if you use bash shell) for user oracle add variable
ORACLE_SID=your_database_instance.
Default value for instance is ORCL, so your line would look like this:
export ORACLE_SID=ORCLNow we should set this variable for current session: $ export ORACLE_SID=ORCLalternatively, you can log off and than back on. Now open /etc/oratab with your favorite editor, and make sure that it contains the following line:
orcl:/home/oracle/product/9.0.1:Y(you should replace 'orcl' with the name of your instance) Let's actually start the database now: $ dbstartOr you can do it the other way:
[ora9@marvin ora9]$ sqlplus /nolog
SQL*Plus: Release 9.0.1.0.0 - Production on Pon Stu 19 23:02:05 2001
(c) Copyright 2001 Oracle Corporation. All rights reserved.
SQL> connect / as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 235693104 bytes
Fixed Size 279600 bytes
Variable Size 167772160 bytes
Database Buffers 67108864 bytes
Redo Buffers 532480 bytes
Database mounted.
Database opened.
SQL> select sysdate from dual;
SYSDATE
--------
19.11.01
SQL> select * from scott.dept;
DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
SQL> exit
Disconnected from Oracle9i Enterprise Edition Release 9.0.1.0.0 - Production
With the Partitioning option
JServer Release 9.0.1.0.0 - Production
[ora9@marvin ora9]$
5.2 Shutting down the databaseTo shut down the database use:$ dbshutor through the SQL*PLUS: [ora9@marvin ora9]$ sqlplus /nolog SQL*Plus: Release 9.0.1.0.0 - Production on Pon Stu 19 23:12:36 2001 (c) Copyright 2001 Oracle Corporation. All rights reserved. SQL> connect / as sysdba Connected. SQL> shutdown Database closed. Database dismounted. ORACLE instance shut down. SQL> exit Disconnected from Oracle9i Enterprise Edition Release 9.0.1.0.0 - Production With the Partitioning option JServer Release 9.0.1.0.0 - Production [ora9@marvin ora9]$ Notes on memory usageI have 256M RAM, and 450M swap partition. First time I tried installing 9i I ran completely out of memory, so I had to add more swap space on the run. Here's a little tip how to do it in the times of need ;)First, make a file that will act as additional swap space, let's say about 300 Megs: # dd if=/dev/zero of=tempswap bs=1k count=300000Now we should change the file permissions: # chmod 600 tempswapFinally we format the "partition" as swap and add it to swap space: # mke2fs tempswap # mkswap tempswap # swapon tempswap My actual configurationHere are the actual values I used, just so you don't get confused with the SQL*plus output:Oracle account: ora9 ORACLE_HOME: /public/ora9/product/9i ORACLE_SID: orcl9 My linux box is an AMD Athlon, 700MHz, 256M RAM, Kernel 2.2.14, Redhat linux 7.2 with all available updates to date (including glibc-2.2.4-19) I hope this helps. Anyway, if you have any questions or comments regarding this text, feel free
to mail me at denis.klaric@in2.hr.
|
| Home -> oracle -> Oracle 9i (9.0.1) on RedHat 7.1 |
|
|
|