This page is a fast and easy (trivial) guide to install Oracle RDBMS 10g R2 into a fresh installed Red Hat Enterprise Server 4 (Linux RH). For other releases see below.
Prerequisites: 1GB RAM, 2*RAM swap 4GB disk x sw, 2GB disk local DB 400MB on /tmp (or where TEMP TMPDIR vars refer) OS RH ES 3 Oracle 10g R2 (10.2.0.1) root access to the system, X11 working! Packages: Default Installation + pdksh.5.2 binutils-2.11 cpp-2.96 compat-glibc-6.2 kernel-headers-2.4 glibc-devel-2.2 libstdc++-devel-2.96 openmotif-devel-2.1 piranha-0.7 gcc-c++-2.96 make-3.80 Preparation (as root) Prepare FSs with the required size (eg. 2x10GB (SW, stage)). Download all the required CDs, put them on the system (mount /dev/cdrom; cd media; cp ...) Create oracle user, groups, ... configure profile # groupadd -g 500 oinstall # groupadd -g 501 dba # useradd -u 500 -d /home/oracle -g "oinstall" -G "dba" -m -s /bin/bash oracle # grep nobody /etc/passwd Nobody:x:99:99:Nobody:/:/sbin/nobody $ vi ~oracle/.bash_profile umask 022 ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE TMP=/u01/bigtmp; export TMP TMPDIR=$TMP; export TMPDIR Check system prerequisites (requires RDA tool): ./rda.pl -T hcve Configure kernel parameters (Oracle 10g R2): vi /etc/sysctl.conf # Oracle RDBMS kernel parameters -- BEGIN kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default=262144 net.core.wmem_default=262144 net.core.rmem_max=262144 net.core.wmem_max=262144 # Oracle RDBMS kernel parameters -- END then use /sbin/sysctl -p to update kernel values Note (Oracle 10g R1): kernel.sem = 256 32000 100 142 kernel.shmmax = 2147483648 kernel.shmmni = 4096 kernel.shmall = 2097152 fs.file-max = 131072 net.ipv4.ip_local_port_range = 20000 65000 Note (easier but not saved): echo 256 32000 100 142 > /proc/sys/kernel/sem echo 2147483648 > /proc/sys/kernel/shmmax echo 4096 > /proc/sys/kernel/shmmni echo 2097152 > /proc/sys/kernel/shmall echo 131072 > /proc/sys/fs/file-max echo 20000 65000 > /proc/sys/net/ipv4/ip_local_port_range Configure ulimit vi /etc/security/limits.conf # Oracle Limits Configuration * soft nproc 2047 * hard nproc 16384 * soft nofile 2048 * hard nofile 16384 For RHEL4: cat >> /etc/profile <<EOF if [ \$USER = "oracle" ]; then if [ \$SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi EOF cat >> /etc/csh.login <<EOF if ( \$USER == "oracle" ) then limit maxproc 16384 limit descriptors 65536 umask 022 endif EOF ln -s /sbin/fuser /bin/fuser Installation (as oracle) Uncompress Oracle SW (unzip) Start installation (xhost +; set DISPLAY then ./runInstaller) Use default replies to all the questions! There are some scripts to be run as root... You are prompted to define the SYS/SYSTEM/... password. Do not forget it! Post Installation Check if Oracle is working (sqlplus http://hostname:1158/em) Configure startup (/etc/rc3.d /etc/oratab /etc/rc3.d/S35vncserver ...) Many manual configuration are useful: tuning parameters, SUBSCRIBE_FOR_NODE_DOWN_EVENT_LISTENER=OFF, ... Different versions (eg. 10g on RH5 64bit, 9.2 on RH4 64bit, ...) You can install Oracle 32 or 64 on Linux 64 (check with uname -a). You can install only Oracle 32 on Linux 32. Avoid SE-Linux... put SELINUX=disabled in /etc/selinux/config (it is not certified and difficoult to configure) 10g on RH5 64bit # Ignore prerequisites: ./runInstaller -ignoreSysPrereqs # Modify the oraparam.ini file to read redhat-5 as a certified version: [Certified Versions] Linux=redhat-3,SuSE-9,redhat-4,UnitedLinux-1.0,asianux-1,asianux-2,redhat-5 Packages (i) gcc-c++-4.1.1-52.el5.i386.rpm and all its dependent packages. The dependent packages are gcc-4.1.1-52.el5.i386.rpm libstdc++-devel-4.1.1-52.el5.i386.rpm glibc-devel-2.5-12.i386.rpm glibc-headers-2.5-12.i386.rpm libgomp-4.1.1-52.el5.i386.rpm (ii) libXp-1.0.0-8.i386.rpm (iii) compat-libstdc++-296-2.96-138.i386.rpm (iv) compat-libstdc++-33-3.2.3-61.i386.rpm (v) compat-db-4.2.52-5.1.i386.rpm This packages are available in the directory Server in CD#3 of RHEL 5. Carefully check RPMs version and architecture with rpm -aq --queryformat "%{NAME}-%{VERSION}-%{RELEASE} %{ARCH}\n" runInstaller needs some 386i packages... Kernel parameters Add the following the lines in the file /etc/sysctl.conf: kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default = 1048576 net.core.rmem_max = 1048576 net.core.wmem_default = 262144 net.core.wmem_max = 262144 10g R2 on RH5.3 64bit Prerequisites: binutils-2.17.50.0.6-2 (x86_64) compat-db-4.2.52-5.1 (x86_64) compat-libstdc++-296-2.96-138 (i386) compat-libstdc++-33-3.2.3-61(x86_64) compat-libstdc++-33-3.2.3-61 (i386) control-center-2.16.0-14 (x86_64) gcc-4.1.1-52 (x86_64) gcc-c++-4.1.1-52 (x86_64) glibc-2.5-12 (x86_64) glibc-2.5-12 (i686) glibc-common-2.5-12 (x86_64) glibc-devel-2.5-12 (x86_64) glibc-devel-2.5-12 (i386) glibc-headers-2.5-12 (x86_64) ksh-20060214-1.4 (x86_64) libaio-0.3.106-3.2 (x86_64) libgcc-4.1.1-52 (i386) libgcc-4.1.1-52 (x86_64) libgnome-2.16.0-6 (x86_64) libgnomeui-2.16.0-5 (x86_64) libgomp-4.1.1-52 (x86_64) libstdc++-4.1.1-52 (x86_64) libstdc++-devel-4.1.1-52 (x86_64) libXp-1.0.0-8 (i386) libXtst-1.0.1-3.1 (i386) make-3.81-1.1 (x86_64) sysstat-7.0.0-3 (x86_64) 9.2 on RH4 64bit # if runInstaller does not start! Check, carefully, the prerequisites! Check PATH, 32bit libraries, unset CLASSPATH. # if runInstaller hangs! Try: export LD_ASSUME_KERNEL=2.4.19 # on RHEL 4; 2.4.1 on RHEL 3, RH 9; 2.2.5 on RHAS 2.1; 2.4.21 on SLES8, SLES9; unset on RHEL5, SLES10 export LDEMULATION=elf_i386 # if it does not compile sqlplus, ... it does not matter!Buon divertimento! Have a lot of Fun! Que te diviertas! Diverte-te!
To create new DBs use dbca Configuring DB Storage requires a specific design There are a lot of options in the OUI... Official documentation: http://www.oracle-base.com/articles/10g/OracleDB10gR2InstallationOnRHEL5.php Better than Oracle doc: http://www.puschitz.com/InstallingOracle10g.shtml If You prefer the italian version of this document...