Chinaunix首页 | 论坛 | 博客
  • 博客访问: 509484
  • 博文数量: 213
  • 博客积分: 7027
  • 博客等级: 少将
  • 技术积分: 1974
  • 用 户 组: 普通用户
  • 注册时间: 2007-07-24 08:51
文章分类

全部博文(213)

文章存档

2007年(213)

我的朋友

分类: Oracle

2007-09-20 23:56:58

Oracle Database 10g (10.1.0.2) Installation On RedHat Advanced Server 4.0

In this article I'll describe the installation of Oracle Database 10g (10.1.0.2) on RedHat Advanced Server 4.0.The article is based on a server installation with a minimum of 2G swap, secure Linux disabled and the following package groups installed:
  • X Window System
  • GNOME Desktop Environment
  • Editors
  • Graphical Internet
  • Text-based Internet
  • Server Configuration Tools
  • Development Tools
  • Administration Tools
  • System Tools
Alternative installations may require additional packages to be loaded in addition to the ones listed below.

Download Software

Download the following software:

Unpack Files

First unzip the files:
gunzip ship.db.cpio.gz
Next unpack the contents of the files:
cpio -idmv < ship.db.cpio
You should now have a single directory (Disk1) containing installation files.

Hosts File

The /etc/hosts file must contain a fully qualified name for the server:
    

Set Kernel Parameters

Add the following lines to the /etc/sysctl.conf file:
kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096# semaphores: semmsl, semmns, semopm, semmnikernel.sem = 250 32000 100 128fs.file-max = 65536net.ipv4.ip_local_port_range = 1024 65000
Run the following command to change the current kernel parameters:
/sbin/sysctl -p
Add the following lines to the /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
Note by Kent Anderson: In the event that pam_limits.so cannot set privilidged limit settings see .

Disable secure linux by editing the /etc/selinux/config file, making sure the SELINUX flag is set as follows:
SELINUX=disabled
Alternatively, this alteration can be done using the GUI tool (Applications > System Settings > Security Level). Click on the SELinux tab and disable the feature.

Setup

Install the following packages:
# From RedHat AS4 Disk 2cd /media/cdrom/RedHat/RPMSrpm -Uvh setarch-1.6-1.i386.rpmrpm -Uvh compat-libstdc++-33-3.2.3-47.3.i386.rpm# From RedHat AS4 Disk 3cd /media/cdrom/RedHat/RPMSrpm -Uvh openmotif-2.2.3-6.RHEL4.2.i386.rpmrpm -Uvh compat-db-4.1.25-9.i386.rpm# From RedHat AS4 Disk 4cd /media/cdrom/RedHat/RPMSrpm -Uvh compat-gcc-32-3.2.3-47.3.i386.rpmrpm -Uvh compat-gcc-32-c++-3.2.3-47.3.i386.rpm
Create the new groups and users:
groupadd oinstallgroupadd dbagroupadd operuseradd -g oinstall -G dba oraclepasswd oracle
Create the directories in which the Oracle software will be installed:
mkdir -p /u01/app/oracle/product/10.1.0/db_1chown -R oracle.oinstall /u01
Login as root and issue the following command:
xhost +
Edit the /etc/redhat-release file replacing the current release information (Red Hat Enterprise Linux AS release 4 (Nahant)) with the following:
redhat-3
Login as the oracle user and add the following lines at the end of the .bash_profile file:
# Oracle SettingsTMP=/tmp; export TMPTMPDIR=$TMP; export TMPDIRORACLE_BASE=/u01/app/oracle; export ORACLE_BASEORACLE_HOME=$ORACLE_BASE/product/10.1.0/db_1; export ORACLE_HOMEORACLE_SID=TSH1; export ORACLE_SIDORACLE_TERM=xterm; export ORACLE_TERMPATH=/usr/sbin:$PATH; export PATHPATH=$ORACLE_HOME/bin:$PATH; export PATHLD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATHCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH#LD_ASSUME_KERNEL=2.4.1; export LD_ASSUME_KERNELif [ $USER = "oracle" ]; then  if [ $SHELL = "/bin/ksh" ]; then    ulimit -p 16384    ulimit -n 65536  else    ulimit -u 16384 -n 65536  fifi

Installation

Log into the oracle user. If you are using X emulation then set the DISPLAY environmental variable:
DISPLAY=:0.0; export DISPLAY
Start the Oracle Universal Installer (OUI) by issuing the following command in the Disk1 directory:
./runInstaller
During the installation enter the appropriate ORACLE_HOME and name then continue with a "software only" installation.

Post Installation

Create a new instance using the DBCA. If you get the "ORA-27125: unable to create shared memory segment" error when using the DBCA issue the followingcommands as the oracle user then try again:
cd $ORACLE_HOME/binmv oracle oracle.bincat >oracle <<"EOF"#!/bin/bash export DISABLE_HUGETLBFS=1exec $ORACLE_HOME/bin/oracle.bin $@EOF chmod +x oracle
I didn't encounter the previous issue myself, so hopefully you won't either.

Edit the /etc/redhat-release file restoring the original release information:
Red Hat Enterprise Linux AS release 4 (Nahant)
Finally edit the /etc/oratab file setting the restart flag for each instance to 'Y':
TSH1:/u01/app/oracle/product/10.1.0/db_1:Y
Create a file called /etc/init.d/dbora containing the following:
#!/bin/sh# description: Oracle auto start-stop script.# chkconfig: - 20 80## Set ORA_HOME to be equivalent to the $ORACLE_HOME# from which you wish to execute dbstart and dbshut;## Set ORA_OWNER to the user id of the owner of the # Oracle database in ORA_HOME.ORA_HOME=/u01/app/oracle/product/10.1.0/db_1ORA_OWNER=oracleif [ ! -f $ORA_HOME/bin/dbstart ]then    echo "Oracle startup: cannot start"    exitficase "$1" in    'start')        # Start the Oracle databases:        # The following command assumes that the oracle login         # will not prompt the user for any values        su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"        su - $ORA_OWNER -c $ORA_HOME/bin/dbstart        ;;    'stop')        # Stop the Oracle databases:        # The following command assumes that the oracle login         # will not prompt the user for any values        su - $ORA_OWNER -c $ORA_HOME/bin/dbshut        su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"        ;;esac
Use chmod to set the privileges to 750:
chmod 750 /etc/init.d/dbora
Link the file into the appropriate run-level script directories:
ln -s /etc/init.d/dbora /etc/rc0.d/K10dboraln -s /etc/init.d/dbora /etc/rc3.d/S99dbora
Associate the dbora service with the appropriate run levels:
chkconfig --level 345 dbora on
The relevant instances should now startup/shutdown automatically at system startup/shutdown.

For more information see:
Hope this helps. Regards Tim...

阅读(750) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~