|Contents||Bulletin||Scripting in shell and Perl||Network troubleshooting||History||Humor|
|News||Scripting for Oracle DBA||Recommended Links||Recommended Papers||Kernel parameters tuning on Linux||Linux Kernel Tuning via /proc system||Semaphore and Shared Segment Kernel Parameters|
|Installing Oracle Database 11g R||Installation of Oracle 11g on SLES 11||oracle-validated||Linux Performance Tuning||TCP Performance Tuning||Humor||Etc|
Minimum hardware requirements:
Note: Both Linux and Oracle must be installed for the same architecture: you need 64-bit Oracle to install on 64 bit Linux.
Oracle Database 11g Release 2 is certified to run the base release of OEL5 without patches. Free copies of OEL5 and RHEL 5(called evaluation copy by Red Hat) can be downloaded from Oracle and Red Hat sites, correspondingly. Required minimum kernel version: 2.6.18. Check your kernel version by running the following command:
Oracle does not automate this part of the installation process well. In Suse 11 you can install all the dependencies for orarrun package (but do not install orarun package itself, unless you want additional problems).
In Oracle Linux you can use oracle-validated RPM (but don't run it as init script on startup: Oracle is crazy to recommend this ;-).
rpm -ql oracle-validated /etc/rc.d/init.d/oraclevalidated /etc/sysconfig/oracle-validated/oracle-validated-verify /etc/sysconfig/oracle-validated/oracle-validated.params /usr/bin/oracle-validated-verify
Now that the Linux OS is installed, you need to configure it for Oracle.
Create the Oracle Groups and User Account
ORacel and dba account are often installed automatically vy packages like orarrun or oracle-validated. In this case they are ususlaly installed incorrectly and you need to modify them to make it comliant with the way you company is using them. The group oinstall is actually redundant and you can skip it althoether.
To create accounts manually:
/usr/sbin/groupadd dba /usr/sbin/useradd -m -G dba oracle id oracle
Set the password on the oracle account:
Location depends on you company practice. There is so called Optimal Flexible Architecture (OFA) for the naming conventions used in creating the directory structure. For more information on OFA standards, see Appendix D of the Oracle Database Installation Guide 11g Release 1 (11.1) for Linux.
The following assumes that the directories are being created in the root filesystem. This is done for the sake of simplicity and is not recommended as a general practice. These directories would normally be created as separate filesystems.
mkdir -p /u01/app/oracle chown -R oracle:oinstall /u01/app chmod -R 775 /u01/app
See Oracle kernel parameters tuning on Linux
Oracle recommends setting limits on the number of processes and open files each Linux account may use. To make these changes, cut and paste the following commands as root:
cat >> /etc/security/limits.conf <<EOF oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 EOFIn some Oracle installation documents it is recommended to add session required pam_limits.so to /etc/pam.d/login. Don't do this. This is stupid. This line is usually present by default both in RHEL and SLES. Here is an example of such recommendation from ...
cat >> /etc/pam.d/login <<EOF session required pam_limits.so EOF
Change the default profile to change ulimit or add this to oracle user profile
cat >> /etc/profile <<EOF if [ \$USER = "oracle" ]; then ulimit -u 16384 -n 65536 umask 022 fi EOF
Use ext4 to create this new filesystem. Other filesystems such as ext3 work just as well, but ext4 is a little bit faster.
It is recommended to create separate filesystems for database and for archives.
|Bulletin||Latest||Past week||Past month||
3. Required OS Components (per Release Notes, and Install Guide)
a.) The exact version number details of this list are based upon 64-bit (x86_64) RHEL Server 5.2 (aka "update 2"). When a higher "update" level is used, the RPM release numbers (such as 4.1.2-44) may be slightly different (such as 4.1.2-57 or 4.1.3-10). Since "update 2" and greater of RHEL 5 are certified, this is fine so long as you are still using 64-bit Linux (x86_64) RHEL Server 5 RPMs.
b.) Some of the Install Guide requirements will already be present from the "default-RPMs" foundation of Linux that you started with:
1.) binutils-184.108.40.206.6-6.el5 (x86_64)
2.) compat-libstdc++-33-3.2.3-61 (x86_64) <<< both ARCH's are required. See next line.
3.) compat-libstdc++-33-3.2.3-61 (i386) <<< both ARCH's are required. See previous line.
4.) elfutils-libelf-0.125-3.el5 (x86_64)
5.) glibc-2.5-24 (x86_64) <<< both ARCH's are required. See next line.
6.) glibc-2.5-24 (i686) <<< both ARCH's are required. See previous line.
7.) glibc-common-2.5-24 (x86_64)
8.) ksh-20060214-1.7 (x86_64)
9.) libaio-0.3.106-3.2 (x86_64) <<< both ARCH's are required. See next line.
10.) libaio-0.3.106-3.2 (i386) <<< both ARCH's are required. See previous line.
11.) libgcc-4.1.2-42.el5 (i386) <<< both ARCH's are required. See next line.
12.) libgcc-4.1.2-42.el5 (x86_64) <<< both ARCH's are required. See previous line.
13.) libstdc++-4.1.2-42.el5 (x86_64) <<< both ARCH's are required. See next line.
14.) libstdc++-4.1.2-42.el5 (i386) <<< both ARCH's are required. See previous line.
15.) make-3.81-3.el5 (x86_64)
c.) The remaining Install Guide requirements will have to be installed:
a.) requires elfutils-libelf-devel-static-0.125-3.el5.x86_64.rpm as a prerequisite, as listed below.
b.) elfutils-libelf-devel and elfutils-libelf-devel-static each depend upon the other. Therefore, they must be installed together, in one (1) "rpm -ivh" command as follows:
rpm -ivh elfutils-libelf-devel-0.125-3.el5.x86_64.rpm elfutils-libelf-devel-static-0.125-3.el5.x86_64.rpm
a.) requires kernel-headers-2.6.18-92.el5.x86_64.rpm as a prerequisite, as listed below
3.) glibc-devel-2.5-24.x86_64.rpm <<< both ARCH's are required. See next item.
4.) glibc-devel-2.5-24.i386.rpm <<< both ARCH's are required. See previous item.
a.) requires libgomp-4.1.2-42.el5.x86_64.rpm as a prerequisite, as listed below
8.) libaio-devel-0.3.106-3.2.x86_64.rpm <<< both ARCH's are required. See next item
9.) libaio-devel-0.3.106-3.2.i386.rpm <<< both ARCH's are required. See previous item.
11.) unixODBC-2.2.11-7.1.x86_64.rpm <<< both ARCH's are required. See next item
12.) unixODBC-2.2.11-7.1.i386.rpm <<< both ARCH's are required. See previous item.
13.) unixODBC-devel-2.2.11-7.1.x86_64.rpm <<< both ARCH's are required. See next item
14.) unixODBC-devel-2.2.11-7.1.i386.rpm <<< both ARCH's are required. See previous item.
4. Additional Required OS Components (per the runInstaller OUI)
a.) intentionally blank
5. Additional Required OS Components (per this NOTE)
a.) Please do not rush, skip, or minimize this critical step.
- This list is based upon a "default-RPMs" installation of 64-bit (x86_64) RHEL Server 5.
- Additional RPMs (beyond anything known to Oracle) may be needed if a "less-than-default-RPMs" installation of 64-bit (x86_64) RHEL Server 5 is performed. For more information, please refer to Note 376183.1, "Defining a "default RPMs" installation of the RHEL OS"
b.) Several RPMs will be required as prerequisites to those listed in section II.3.c:
6. Oracle Global Customer Support has noticed a recent trend with install problems that originates from installing too many RPMs. For example:
- installing your own JDK version (prior to beginning the Oracle Software “runInstaller”) is not needed on Linux, and is not recommended on Linux. A pre-existing JDK often interferes with the correct JDK that the Linux Oracle Software “runInstaller” will place and use.
- installing more than the required version of the gcc / g++ RPMs often leads to accidentally using (aka enabling or activating) the incorrect one. If you have multiple RDBMS versions installed on the same Linux machine, then you will likely have to manage multiple versions of gcc /g++ . For more information, please see Note 444084.1, "Multiple gcc / g++ Versions in Linux"
7. All of the RPMs in section II. are on the Red Hat Enterprise Linux 5 64-bit (x86_64) distribution media.
1. Modify your kernel settings in /etc/sysctl.conf (RedHat) as follows. If the current value for any parameter is higher than the value listed in this table, do not change the value of that parameter. Range values (such as net.ipv4.ip_local_port_range) must match exactly.
kernel.shmall = physical RAM size / pagesize For most systems, this will be the value 2097152. See Note 301830.1 for more information.
kernel.shmmax = 1/2 of physical RAM. This would be the value 2147483648 for a system with 4Gb of physical RAM.kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 512 x processes (for example 6815744 for 13312 processes)
fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576
2. To activate these new settings into the running kernel space, run the “sysctl –p” command as root.
3. Set Shell Limits for the oracle User. Assuming that the "oracle" Unix user will perform the installation, do the following:
4. The gcc-4.1.2 and gcc-c++-4.1.2 RPM items above will ensure that the correct gcc / g++ versions are installed. It is also required that you ensure that these correct gcc / g++ versions are active, and in-use. Ensure that the commands "gcc --version" and "g++ --version" each return "4.1.x".
- Add the following settings to /etc/security/limits.conforacle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
- Add or edit the following line in the /etc/pam.d/login file, if it does not already exist:
session required pam_limits.so
- Add the following lines to /etc/profile:if [ $USER = "oracle" ]; then ulimit -u 16384 -n 65536 fi
5. The hostname command should return the fully qualified hostname as shown below:% hostname hostname.domainname
6. If any Java packages are installed on the system, unset the Java environment variables, for example JAVA_HOME.
7. The oracle account that is used to install Oracle 220.127.116.11, should not have the Oracle install related variables set by default. For example setting ORACLE_HOME, PATH, LD_LIBRARY_PATH to include Oracle binaries in .profile, .login file and /etc/profile.d should be completely avoided.
- Setting $ORACLE_BASE (not $ORACLE_HOME) is recommended, since it eases a few prompts in the OUI runInstaller tool.
- following the succesful install, it is recommended to set $ORACLE_HOME, and to set $PATH to include $ORACLE_HOME/bin at the beginning of the $PATH string.
8. By default, RHEL 5 x86_64 Linux is installed with SELinux as "enforcing". This is fine for the 11gR2 installation process. However, to subsequently run "sqlplus", switch SELinux to the "Permissive" mode. See NOTE 454196.1, "./sqlplus: error on libnnz11.so: cannot restore segment prot after reloc" for more details.
9. Log in as Oracle user and start the installation as follows:./runInstaller
- It is best practice not to use any form of "su" to start the runInstaller, in order to avoid potential display-related problems.
- When performing the 18.104.22.168 installation, make sure to use the "runInstaller" version that comes with 22.214.171.124 software.
- When performing any subsequent 11.2.0.x patchset, make sure to use the "runInstaller" version that comes with the patchset.
Groupthink : Understanding Micromanagers and Control Freaks : Toxic Managers : Bureaucracies : Harvard Mafia : Diplomatic Communication : Surviving a Bad Performance Review : Insufficient Retirement Funds as Immanent Problem of Neoliberal Regime : PseudoScience : Who Rules America : Two Party System as Polyarchy : Neoliberalism : The Iron Law of Oligarchy : Libertarian Philosophy
Skeptical Finance : John Kenneth Galbraith : Keynes : George Carlin : Skeptics : Propaganda : SE quotes : Language Design and Programming Quotes : Random IT-related quotes : Oscar Wilde : Talleyrand : Somerset Maugham : War and Peace : Marcus Aurelius : Eric Hoffer : Kurt Vonnegut : Otto Von Bismarck : Winston Churchill : Napoleon Bonaparte : Ambrose Bierce : Oscar Wilde : Bernard Shaw : Mark Twain Quotes
Vol 26, No.1 (January, 2013) Object-Oriented Cult : Vol 25, No.12 (December, 2013) Rational Fools vs. Efficient Crooks: The efficient markets hypothesis : Vol 25, No.08 (August, 2013) Cloud providers as intelligence collection hubs : Vol 23, No.10 (October, 2011) An observation about corporate security departments : Vol 23, No.11 (November, 2011) Softpanorama classification of sysadmin horror stories : Vol 25, No.05 (May, 2013) Corporate bullshit as a communication method : Vol 25, No.10 (October, 2013) Cryptolocker Trojan (Win32/Crilock.A) : Vol 25, No.06 (June, 2013) A Note on the Relationship of Brooks Law and Conway Law
Fifty glorious years (1950-2000): the triumph of the US computer engineering : Donald Knuth : TAoCP and its Influence of Computer Science : Richard Stallman : Linus Torvalds : Larry Wall : John K. Ousterhout : CTSS : Multix OS Unix History : Unix shell history : VI editor : History of pipes concept : Solaris : MS DOS : Programming Languages History : PL/1 : Simula 67 : C : History of GCC development : Scripting Languages : Perl history : OS History : Mail : DNS : SSH : CPU Instruction Sets : SPARC systems 1987-2006 : Norton Commander : Norton Utilities : Norton Ghost : Frontpage history : Malware Defense History : GNU Screen : OSS early history
The Peter Principle : Parkinson Law : 1984 : The Mythical Man-Month : How to Solve It by George Polya : The Art of Computer Programming : The Elements of Programming Style : The Unix Hater’s Handbook : The Jargon file : The True Believer : Programming Pearls : The Good Soldier Svejk : The Power Elite
Most popular humor pages:
Manifest of the Softpanorama IT Slacker Society : Ten Commandments of the IT Slackers Society : Computer Humor Collection : BSD Logo Story : The Cuckoo's Egg : IT Slang : C++ Humor : ARE YOU A BBS ADDICT? : The Perl Purity Test : Object oriented programmers of all nations : Financial Humor : Financial Humor Bulletin, 2008 : Financial Humor Bulletin, 2010 : The Most Comprehensive Collection of Editor-related Humor : Programming Language Humor : Goldman Sachs related humor : Greenspan humor : C Humor : Scripting Humor : Real Programmers Humor : Web Humor : GPL-related Humor : OFM Humor : Politically Incorrect Humor : IDS Humor : "Linux Sucks" Humor : Russian Musical Humor : Best Russian Programmer Humor : Microsoft plans to buy Catholic Church : Richard Stallman Related Humor : Admin Humor : Perl-related Humor : Linus Torvalds Related humor : PseudoScience Related Humor : Networking Humor : Shell Humor : Financial Humor Bulletin, 2011 : Financial Humor Bulletin, 2012 : Financial Humor Bulletin, 2013 : Java Humor : Software Engineering Humor : Sun Solaris Related Humor : Education Humor : IBM Humor : Assembler-related Humor : VIM Humor : Computer Viruses Humor : Bright tomorrow is rescheduled to a day after tomorrow : Classic Computer Humor
The Last but not Least
|You can use PayPal to make a contribution, supporting hosting of this site with different providers to distribute and speed up access. Currently there are two functional mirrors: softpanorama.info (the fastest) and softpanorama.net.|
The statements, views and opinions presented on this web page are those of the author and are not endorsed by, nor do they necessarily reflect, the opinions of the author present and former employers, SDNP or any other organization the author may be associated with. We do not warrant the correctness of the information provided or its fitness for any purpose.
Last modified: February 19, 2014