Oracle on Linux Installation for Non-DBAs Sheryl Calish Blue Heron Consulting Paper #36684
Introduction Linux Installation Oracle Installation Most Recently: Oracle 9i (Release 2) on SuSE 8.0 (kernel ) Past installs: Oracle 9i on SuSE 7.2 (kernel 2.4.4) Oracle on Red Hat 6.2 (kernel )
Linux Installation Hardware and System Considerations Linux distributions How to prepare for a Linux installation
Oracle Installation Preparation tasks Reported installation issues Recommendations for novices
Hardware and System Considerations To check for compatibility with Linux and Xfree86 To ensure proper configuration of your system To enable others to help you, if something goes wrong
Component Information Monitor: make, model, manufacture, horizontal and vertical scan rate for each resolution Video Card: make, chipset, model number and VRAM Sound Card: make, chipset, and model number
More Components Memory: amount of RAM Oracle 9i requires 512MB minimum Mouse: type, protocol and number of buttons Modem: type and port number CD-ROM: interface type SCSI Adapter: make and model number Paper #36684
Hard Disk Requirements Hard Drive(s): number, size and type Oracle 9i space requirements: 3.5 GB for database software (typical not customized installation) 1.0 GB for seed database 1.0 GB for swap space
System Information Network Information: IP address, netmask, gateway IP address, one or more server IP addresses, domain name, organization name Hostname: name of your computer Partitions: default or map of planned partitions and mount points
Which Distribution? United Linux: SuSE Linux, Turbolinux, Conectiva, The SCOgroup (Caldera) Red Hat Mandrake Debian
Certified for 9iR2 Red Hat 2.1 Advanced Server SLES7 and SLES8
Certified for 9i SLES7 SuSE 7.1 and 7.2 (&RAC) Red Hat 7.1 (&RAC) Caldera OU8 Paper #36684
Certified for SLES7 SuSE 7.1 and 7.2 Red Hat 2.1 AS Red Hat 7.1 Caldera OU8
Shrink Windows Partition Partition Magic FIPS GNU Parted YAST2
Partitioning Rationale "Partitioning Your Hard Drive": "4.3 Partitioning Hard Drives(s)" : easy/install-partitioning
Optimal Flexible Architecture Four separate mount points: /u01, /u02, /u03, /u04 each in its own partition
Two References "Tips for Installing and Configuring Oracle9i Database on Red Hat Linux", from OracleWorld 2003 "Installation Instructions for Oracle 9i Release 2 (9.2.0.x) on United Linux 1.0 based Linux systems", from
My Current Partition Table FilesystemSizeUsedAvailUse%Mounted on /dev/hda12.2G /windows/C /dev/hda2 ****Extended /dev/hda5 14M3.7M9.8M28%/boot /dev/hda6 4.0G2.1G1.9G52%/ /dev/hda7 1.0G***/swap /dev/hda8 6.0G3.8G2.2G64%/opt /dev/hda9 915M349M566M39%/home
Previous Partition Table Filesystem Size Used Avail Use% Mounted on /dev/hda6 1.9G 212M 1.5G 12% / /dev/hda11 758M 5.0M 714M 1% /home /dev/hda10 4.2G 3.7G 324M 92% /opt /dev/hda12 243M 13k 230M 1% /u02 /dev/hda13 243M 13k 230M 1% /u03 /dev/hda7 1.2G 828M 324M 72% /usr /dev/hda8 243M 41M 189M 18% /usr/local Paper #36684
Swap Space Oracle 9i installation requires swap space to be equal to physical memory or 1GB, whichever is greater A temporary swap file can be used
Run Linux Installer Follow the documentation for your distribution Check with your Linux distribution for the latest updates and patches
Prepare for Oracle Installation Make sure appropriate software is installed Create the database administrator groups Create the Oracle user Create mount points Modify kernel parameters Set environment variable s
Required Software rpm -q k_deflt > k_deflt rpm -q glibc > glibc rpm -q binutils > binutils
More Required Software rpm -q gilbc-locale >glibc-locale rpm -q make >make rpm -q gcc >gcc
Database Administrator Groups As root : From menu in SuSE: System -> Configuration -> Create group From command line: groupadd oinstall groupadd dba groupadd oper Paper #36684
Create Oracle user As root : From menu in SuSE: System -> Configuration -> Create user From command line: useradd oracle -g oinstall -G dba,oper
Mount Points If you did not create the partitions for these you can create the mount points now, then, As root, change ownership: chown oracle.dba /opt/oracle (or /u01) OR chown oracle.oinstall /opt/oracle chmod 775 /opt/oracle (or /u01) Run the same command for /u02, /u03, /u04
Kernel Parameters Oracle documentation warns of possible installation or production problems if the settings are insufficient SHMMAX
Environment Variables As oracle user Three sources: 1) Oracle Metalink 2) 3)orarun9i.rpm (run as root)
orarun9i.rpm can be downloaded from SuSE sets up most environment variables in /etc/profile.d/oracle.sh sets kernel parameters sets up automatic startup/shutdown of Oracle look at /usr/share/doc/packages/orarun9i/README
New orarun For SLES8 and SuSE 8.1 use: orarun SL80_81.noarch.rpm Major difference is location of : /etc/profile.d/oracle.[c]sh has been moved to: /etc/sysconfig/oracle Paper #36684
Oracle9i RHL Run Package Oracle9i RHL Run Package Available from GURU LABS Based on orarun9i.rpm from SuSE modified to work with Red Hat
Functions of RHL Run Provides: /etc/init.d/oracle /etc/profile.d/oracle/sh|chs (requires edits) /etc/sysconfig/oracle (requires edits) /usr/share/doc/oraclerun9i-1.4/INSTALL
Temporary swapfile # become the root user su - # create a 1GB file (or any value for "count") dd if=/dev/zero of=/swapfile bs=1k count= # make it a swapfile mkswap /swapfile # activate swapon /swapfile
Run Oracle Installer Oracle 9iR2 installation took 45 minutes with 512MB and 1GB of swap space Oracle 9iR1 installation took 1 hour with 512MB and 658MB of swap space Oracle installation took 15 minutes with 512MB of RAM and 1GB of swap space
Start Oracle linuxprompt:~> sqlplus /nolog SQL> connect / as sysdba SQL> startup
Install Cleanup In order to run Oracle Installer after an incomplete install From rm -rf /etc/oraInst.loc /etc/oratab (/tmp/OraInstall ?) rm -rf $ORACLE_BASE/* /tmp/ Paper #36684
Installation Issue #1 Issue: Inability to access another program after Oracle installation Solution: Add $PATH before you enter other path variables
PATH Example Instead of: PATH=/bin:/usr/bin:/usr/sbin:/etc:/opt/bin:/usr/cc s/bin:/usr/openwin/bin:/opt/local/GNU/bin Enter: PATH=$PATH:/bin:/usr/bin:/usr/sbin:/etc:/opt/b in:/usr/ccs/bin:/usr/openwin/bin:/opt/local/GNU /bin
Installation Issue #2 Issue: Incompatibilities between some versions of Oracle and glibc or binutils of some versions of Linux Examples: Red Hat 7.0 and Oracle have a glibc issue Red Hat 7.1/7.2/7.3, AS 2.1 and Oracle 9iR1 have a binutil issue Sun JDK and SuSE 7.2 have a glibc issue
9iR2 and Red Hat 8.0 From " Error in invoking target install of makefile: /opt/oracle/product/9.2.0/ctx/lib/ins_ctx.mk " Edit $ORACLE_HOME/ctx/lib/env_ctx.mk and go to " INSO_LINK = ", add a " $(LDLIBFLAG)dl " to the line and save it.
9iR2 and SuSE 8.0 From suse-oracle mailing list " Error in invoking target ntcrontab.o of makefile: /opt/oracle/product/oracle/network/lib/ins_int_client.mk"
9iR2 on SuSE 8.0 (con't) First solution: Edit the file $ORACLE_HOME/sysliblist add the following to the existing line - L/usr/lib/gcc-lib/i486-suse-linux/ lgcc the line becomes something like this: - L/usr/lib/gcc-lib/i486-suse-linux/ lgcc -ldl -lm -lpthread Paper #36684
9iR2 on SuSE 8.0 Second solution: look in $ORACLE_HOME/install/make.log for linker errors (eg. lack of the library clntsh. (ld reports cannot find -lclntsh) go to $ORACLE_HOME/bin and run the command 'genclntsh' (as user oracle)
Installation Issue #3 Issue: Some have reported that the Installer hangs during installation Enter: unset LANG Then run Oracle Universal Installer
Installation Issue #4 Issue: Mounting and unmounting cdrom Run Oracle Universal Installer as Oracle user From Oracle user directory: mount /media/cdrom /media/cdrom/oracle9i/runInstaller unmount /media/cdrom DO NOT cd to cdrom directory to./runInstaller!
Recommendations Decide on the version of Oracle you want to install and work backward. Choose the version of the Linux distribution with the same binutils and glibc as the certified version. Oracle 9iR2 reported to install smoothly on Red Hat 7.3, 8.0, SuSE 8.0, 8.1 and 8.2. Check that your hardware and system components are supported by your chosen Linux distribution - especially for Xfree86.
Resources Oracle Metalink Linux Forum at SuSE: Listserve groups: SuSE-oracle
Contact Information Sheryl Calish Blue Heron Consulting Paper #36684