Home -> oracle -> Oracle 10g release 1 (10.1.0.2) on Fedora core 1 Oracle Database 10g release 1 (10.1.0.2) installation on Fedora core 1 Please note that Oracle Database 10g is not certified to run on Fedora Linux, therefore you should not use this combination on a production server. You can examine Oracle certification matrix at Metalink Contents 1. Downloading and unpacking installation files 2. Preparing your system 2.1 Steps to perform as root user 2.2 Steps to perform as oracle user 3. Running the installer 4. Post-installation steps 4.1 Starting database services 4.2 Shutting down database services 4.3 Automating oracle startup and shutdown 1. Downloading and unpacking installation files Download Oracle Database 10g from Oracle Technology Network. Four files are available:
ship.ccd.cpio.gz - Oracle 10g Companion CD ship.client.cpio.gz - Oracle 10g Client ship.crs.cpio.gz - Oracle 10g Cluster Ready Services ship.db.cpio.gz - Oracle 10g Database Only ship.db.cpio.gz is required in order to install the database. Once you downloaded the file, unpack it: gunzip ship.db.cpio.gz cpio -idmv<ship.db.cpio All four installation files unpack to directory named "Disk1", so rename directory before you eventually unpack another file. You may want to create Oracle installation CD set from unpacked installation files. As I don't have a CD-burner on any of my linux boxes, I created ISO images using mkisofs -JR -l -o ship.db.iso Disk1/ and burned CDs on Windows machine. 2. Preparing your system 2.1 Steps to perform as root user Install following fedora packages using rpm -ivh package_name: From Fedora-core Disk 1:
setarch-1.0-1.i386.rpm From Fedora-core Disk 2:
openmotif-2.2.2-16.1.i386.rpm From Fedora-core Disk 3:
compat-libstdc++-7.3-2.96.118.i386.rpm compat-db-4.0.14-2.i386.rpm compat-gcc-7.3-2.96.118.i386.rpm compat-libgcj-7.3-2.96.118.i386.rpm compat-libstdc++-devel-7.3-2.96.118.i386.rpm compat-libgcj-devel-7.3-2.96.118.i386.rpm Now we have to make Oracle installer think that we have one of the supported distributions: Create a backup of your /etc/redhat-release file, an change its contents: # cp /etc/redhat-release /etc/redhat-release.orig # echo "Red Hat Enterprise Linux AS release 3 (Taroon)" > /etc/redhat-release Change kernel parameters by adding the following lines in /etc/sysctl.conf: kernel.shmall = 2097152 kernel.shmmax = 2147483648 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 32768 65000 Update kernel configuration: [root@fedora root]# sysctl -e -p /etc/sysctl.conf Add the following lines to /etc/security/limits.conf file: * soft nproc 2047 * hard nproc 16384 * soft nofile 1024 * hard nofile 65536 Add the following line to the /etc/pam.d/login file, if it does not already exist:
session required /lib/security/pam_limits.so Create user and groups that will own oracle installation. In this exaple the username will be oracle: [root@fedora]# groupadd oinstall [root@fedora]# groupadd dba [root@fedora]# useradd -g oinstall -G dba oracle [root@fedora]# passwd oracle Create directories in which oracle software will be installed. Oracle recommends OFA - Optimal Flexible Architecture (see oracle installation guide), but in this example everything will be installed under /home/oracle: [root@fedora]# mkdir -p /home/oracle/product/10g [root@fedora]# chown -R oracle.oinstall /home/oracle/* 2.2 Steps to perform as oracle user Make gcc296 default compiler for user oracle by creating symbolic link. It is important that the directory containing the link (/home/oracle/bin) is listed in the PATH variable before /usr/bin. [oracle@fedora oracle]$ mkdir /home/oracle/bin [oracle@fedora oracle]$ cd /home/oracle/bin [oracle@fedora bin]$ ln -s /usr/bin/gcc296 gcc Put the following lines in oracle user .bash_profile export ORACLE_BASE=/home/oracle export ORACLE_HOME=/home/oracle/product/10g export ORACLE_SID=orcl export ORACLE_TERM=xterm export PATH=$HOME/bin:$ORACLE_HOME/bin:$PATH ulimit -u 16384 -n 65536 # # change this NLS settings to suit your country: # example: # german_germany.we8iso8859p15, american_america.we8iso8859p1 etc. # export NLS_LANG='croatian_croatia.ee8iso8859p2' Since I am from Croatia, I use Croatian national language support (NLS_LANG, NL2005-2-28_LANGUAGE, NLS_SORT and NL2005-2-28_FORMAT). You should set these variables to suit your needs. Listing of valid Oracle NLS Data parameters including supported languages, territories and storage character sets can be found here. In this example ORACLE_SID=orcl. You will be prompted by installer to specify SID and global database name, and you should replace the SID in .bash_profile with your own SID. Update environment to include new variables:
[oracle@fedora]$ source /home/oracle/.bash_profile Everything is now ready to start the oracle installer. 3. Running the installer If you have Oracle 10g Database CD, login as root and mount it: [root@fedora]# mount /mnt/cdrom Oracle installer needs to be run from Xwindows, so start Xwindows and login as user oracle. Make sure that your envionment is correctly set up: [oracle@fedora oracle]$ set|grep ORACLE ORACLE_BASE=/home/oracle ORACLE_HOME=/home/oracle/product/10g ORACLE_SID=orcl ORACLE_TERM=xterm [oracle@fedora oracle]$ gcc --version 2.96 Start the installer: [oracle@fedora oracle]$ /mnt/cdrom/runInstaller Note: if you get thew following error when running the installer from CD-ROM bash: /mnt/cdrom/runInstaller: /bin/sh: bad interpreter: Permission denied you should check how your CD-ROM was mounted. It should be mounted by user root, and the information about the filesystem in /etc/fstab sohuld look similar to this: /dev/cdrom /mnt/cdrom auto exec,noauto,owner,kudzu,ro 0 0 Now the installer should be up and running. 4. Post-installation steps First we want to change back the /etc/redhat-release file: [root@fedora]# cp /etc/redhat-release.orig /etc/redhat-release Next, modify the /etc/oratab file in order to use database startup and shutdown scripts provided by oracle. Find the line in /etc/oratab that looks similar to this: *:/home/oracle/product/10g:N Entries are of the form: $ORACLE_SID:$ORACLE_HOME:<N|Y> Change the last field (N) to Y, and you will be able to start the database using dbstart utility. 4.1. Starting database services Note: If you just installed Oracle, the database, TNS listener and enterprise manager are already running. Start TNS Listener:
[oracle@fedora oracle]$ lsnrctl start You can start the database via dbstart utility: [oracle@fedora oracle]$ dbstart or via SQL*Plus: [oracle@fedora oracle]$ sqlplus / as sysdba
SQL*Plus: Release 10.1.0.2.0 - Production on Sat Feb 21 18:05:43 2004
Copyright (c) 1982, 2004, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup ORACLE instance started.
Total System Global Area 188743680 bytes Fixed Size 778036 bytes Variable Size 162537676 bytes Database Buffers 25165824 bytes Redo Buffers 262144 bytes Database mounted. Database opened. SQL> exit Disconnected from Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options [oracle@fedora oracle]$ Start Enterprise manager server: [oracle@fedora oracle]$ emctl start dbconsole 4.2. Stopping database services Stop Enterprise manager server: [oracle@fedora oracle]$ emctl stop dbconsole You can stop the database via dbshut utility: [oracle@fedora oracle]$ dbshut or via SQL*Plus: [oracle@fedora oracle]$ sqlplus / as sysdba
SQL*Plus: Release 10.1.0.2.0 - Production on Sat Feb 21 18:11:23 2004
Copyright (c) 1982, 2004, Oracle. All rights reserved.
Connected to: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options
SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL> exit Disconnected from Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options [oracle@fedora oracle]$ Stop TNS listener: [oracle@fedora oracle]$ lsnrctl stop 4.3 Automating oracle startup and shutdown To automatically start/shut oracle database during system startup/shutdown you need to write a script in /etc/rc.d/init.d directory. You can view or Download an example script. Copy the script to /etc/rc.d/init.d as root user, edit environment variables to match your settings and modify its permissions: [root@fedora root]# chown root.root /etc/rc.d/init.d/ora10 [root@fedora root]# chmod 755 /etc/rc.d/init.d/ora10 The script I wrote uses chkconfig utility to simplify service management. It is configured to start oracle services in runlevels 3 and 5,with start priority 95 and stop priority 1. Initialize new service: [root@fedora root]# chkconfig ora10 reset [root@fedora root]# chkconfig --list ora10 ora10 0:off 1:off 2:off 3:on 4:off 5:on 6:off Now oracle services will be automatically started when entering runlevels 3 and 5, and shut down when entering any other runlevel. For more information on chkconfig utility refer to its man page. To manually start/stop oracle services you can use [root@fedora root]# service ora10 start and [root@fedora root]# service ora10 stop Hope this helps. Denis. Home -> oracle -> Oracle 10g release 1 (10.1.0.2) on Fedora core 1
-------------------- HAPPYMENG
|