|
New Page 1
Introduction
This articles covers the Installation of Oracle Database 11g Release 2 on
Enterprise Linux 5 and Suse 11.
Oracle 11g Release 2 launched in August 2009. Now, the product is available on
Linux platform. There are almost 400 aditional functionality added by Oracle
11g. After watching the Oracle webcast 11g Release 2, I feel Oracle 11g Release
more focus on High Availability(easy RAC installation and
implementation),Compressing Data,Security,etc.
11g Release 2 required minimum 1gb RAM for the installation. I would recommend
minimum 4gb ram will be ideally better. Swap should have double of physical ram.
I recommend the following Server Configuration:
Intel Xeon Processor W5580
3.20ghz
L3 8mb Cache
1 Quad Core
4 to 8gb Ram (an ideal configuration) .
146gb HDD (default) - This configuration can be changed, based on various
factors.
The following packages is mandatory for Enterprise Linux : GNOME Desktop
Environment ,Graphical Internet, X Window System ,Editors , Development Tools
,Server Configuration Tools,System Tools and Administration Tools.
You can download the software, subject to Oracle Licensing.
http://www.oracle.com/technology/software/products/database/index.html
Standard Edition One – support upto 2 cpu
Standard Edition – support upot 4 cpu
Enterprise Edition(11.2.0.1.0)– unlimited.
Linux x86 | Disk 1, Disk 2 (2.1 GB)
Set the Linux Kernal Parameters:
Linux Kernel Parameters
What is the Shared Memory ( reference with various linux/unix sites for these
parameters.):
The shared memory will hve huge impact on Oracle Performance. So very carefully
to be handled.
Shared memory allows processes to access common structures and data by placing
them in shared memory segments. It's the fastest form of IPC (Interprocess
Communication) available since no kernel involvement occurs when data is passed
between the processes.
Oracle uses shared memory segments for the SGA (Shared Global Area) which is an
area of memory that is shared by all Oracle background and foreground processes.
Setting SHMMAX Parameter
This parameter defines the maximum size in bytes for a shared memory segment.
Since the SGA is comprised of shared memory, SHMMAX can potentially limit the
size of the SGA.
Setting SHMMNI Parameter
This parameter sets the maximum number of shared memory segments system wide.
Setting SHMALL Parameter
This parameter sets the total amount of shared memory in bytes that can be used
at one time on the system.
The SEMMSL Parameter
This parameter defines the maximum number of semaphores per semaphore set.
Oracle recommends to set SEMMSL to the largest PROCESSES init.ora parameter of
any database on the Linux system.
The SEMMNI Parameter
This parameter defines the maximum number of semaphore sets in the entire Linux
system.
The SEMMNS Parameter
This parameter defines the total number of semaphores (not semaphore set) in the
entire Linux system.
The SEMOPM Parameter
This parameter defines the maximum number of semaphore operations that can be
performed per semop(2) system call.
Setting File Handles
The maximum number of file handles denotes the maximum number of open files that
you can have on the Linux system.
Setting System Wide Limit for File Handles
The value in /proc/sys/fs/file-max sets the maximum number of file handles or
open files that the Linux kernel will allocate. When you get error messages
about running out of file handles, then you might want to raise this limit.
Change the parameters:
Copy sysctl.conf
cp sysctl.conf sysctl.confold
Cd /etc
Vi sysctl.conf
Add the following:
kernel.shmmax = 2147483648
kernel.shmall = 2097152
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536 # 512 * PROCESSES
net.core.rmem_default=4194304
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=262144
net.ipv4.ip_local_port_range = 1024 65000
Press Esc :wq
Change the Hosts File Entry
Cd /etc
Cp hosts hostsold
Vi hosts
IP-address Machinename.domainname Hostname
Press Esc and :wq
Go to /etc/security (cd /etc/security)
Vi limits.conf
Add or change /etc/security/limits.conf file:
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
to save Esc :wq
Go to /etc/pam.d (cd /etc/pam.d)
Vi login
Add or change line to the /etc/pam.d/login file
session required pam_limits.so
session required /lib/security/pam_limits.so
to save Esc :wq
Very important Steps:
On secure linux has to be disabled:
Go to /etc/selinux(cd /etc/selinux)
Vi config
Change or add
SELINUX=disabled
to save Esc :wq
The following packages(rpm) required for Enterprise Linux 5.0 on various cd’s :
Insert the cd and mount the same
Go to cd /media/cdrom/Server (cd /media/cdrom/Server)
(carefully use –force and –nodeps)
rpm -Uvh --force --nodeps binutils-2.17.50.0.6
rpm -Uvh --force --nodeps compat-libstdc++-33-3.2.3
rpm -Uvh --force –nodeps elfutils-libelf-0.125
rpm -Uvh --force –nodeps elfutils-libelf-devel-0.125
rpm -Uvh --force –nodeps elfutils-libelf-devel-static-0.125
rpm -Uvh --force –nodeps gcc-4.1.2
rpm -Uvh --force –nodeps gcc-c++-4.1.2
rpm -Uvh --force –nodeps glibc-2.5-24
rpm -Uvh --force –nodeps glibc-common-2.5
rpm -Uvh --force –nodeps glibc-devel-2.5
rpm -Uvh --force –nodeps glibc-headers-2.5
rpm -Uvh --force –nodeps kernel-headers-2.6.18
rpm -Uvh --force –nodeps ksh-20060214
rpm -Uvh --force –nodeps libaio-0.3.106
rpm -Uvh --force –nodeps libaio-devel-0.3.106
rpm -Uvh --force –nodeps libgcc-4.1.2
rpm -Uvh --force –nodeps libgomp-4.1.2
rpm -Uvh --force –nodeps libstdc++-4.1.2
rpm -Uvh --force –nodeps libstdc++-devel-4.1.2
rpm -Uvh --force –nodeps make-3.81
rpm -Uvh --force --nodeps sysstat-7.0.2
rpm -Uvh --force --nodeps unixODBC-2.2.11
rpm -Uvh --force --nodeps unixODBC-devel-2.2.11
eject
or unmount
Linux Enterprise Server 11 - SUSE:
rpm -Uvh --force –nodeps binutils-2.19
rpm -Uvh --force –nodeps gcc-4.3
rpm -Uvh --force –nodeps gcc-c++-4.3
rpm -Uvh --force –nodeps glibc-2.9
rpm -Uvh --force –nodeps glibc-devel-2.9
rpm -Uvh --force –nodeps ksh-93t
rpm -Uvh --force –nodeps libstdc++33-3.3.3
rpm -Uvh --force –nodeps libstdc++43-4.3.3_20081022
rpm -Uvh --force –nodeps libstdc++43-devel-4.3.3_20081022
rpm -Uvh --force –nodeps libaio-0.3.104
rpm -Uvh --force –nodeps libaio-devel-0.3.104
rpm -Uvh --force –nodeps libgcc43-4.3.3_20081022
rpm -Uvh --force –nodeps libstdc++-devel-4.3
rpm -Uvh --force –nodeps make-3.81
rpm -Uvh --force –nodeps sysstat-8.1.5
Create user and groups
Adding Groups
groupadd oinstall
groupadd dba
groupadd asmadmin
Adding user and assign the group:
useradd -g oinstall -G dba,oper,asmadmin oracle
Add password for Oracle user
passwd oracle
I would like to light on the "asmadmin" group is used for ASM.
Make directories in which the Oracle Binary to be installed:
mkdir -p /data1/app/oracle/product/11/db_1
chown -R oracle:oinstall /data1
chmod -R 777 /data1
Shutdown or reboot the machine
Login as Oracle
Change/add user enviroment
Go to /home/oracle
Vi .bash_profile
Add the following:
ORACLE_HOSTNAME=machinename.domainname
ORACLE_BASE=/data1/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2/db_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export
CLASSPATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit
-n 65536
else
ulimit -u 16384 -n
65536
fi
fi
Press Esc key :wq
Log out
Login as Oracle user
Run Install Steps:
Set the Display first
export
DISPLAY=hostname:0.0
Or
DISPAY=HOSTNAME:0.0
export
DISPLAY
Go setup Disk directory
Cd Disk1
./runInstaller
Rest follow the GUI provided by Oracle
|