ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle 10g 在RHEL5 上安装

Oracle 10g 在RHEL5 上安装

原创 Linux操作系统 作者:self_aware 时间:2009-05-19 12:50:47 0 删除 编辑
 
ps:主要内容为kingdomchu这位朋友写的,我做了部分内容添加
 
安装redhat5时,最好使用内存大于1G的机器,要独立分配磁盘给SWAP,空间大小参照如下:
Between 1024 MB and 2048 MB 1.5 times the size of RAM
Between 2049 MB and 8192 MB Equal to the size of RAM
More than 8192 MB 0.75 times the size of RAM
 
oracle 分64位和32位 因此 你的机器,rehat as5,oracle 应同样是64位 或32位
 
 
RHEL5 安装oracle10所应该注意的:
1 .由于orcale10不支持 RHEL5 所以需要修改/etc/redhat_realease 将 Red Hat Enterprise Linux Server release 5 (Tikanga) 改为Red Hat Enterprise Linux Server release 4 (Tikanga)
2 .修改/etc/hosts 文件将127.0.0.1改为你的ip 否则网络检查通不过
3 .依次安装下面的包 libXp-1.0.0-8.i386.rpm openmotif22-2.2.3-18.i386.rpm compat-db-4.2.52-5.1.i386.rpm compat-gcc-34-3.4.6-4.i386.rpm compat-gcc-34-c++-3.4.6-4.i386.rpm compat-libstdc++-33-3.2.3-61.i386.rpm libaio-0.3.106-3.2.i386.rpm
4 .因为中文有乱码所以设置用英文安装 export LC_ALL=en_US
5 .在安装过程中选择高级安装,并将数据库语言选中文 字符集选GBK的。
 
一、安装系统
首先安装Linux系统,根据Oracle官方文档的建议,在机器内存小于1G的情况下,swap分区大小设置参照前面内容。
在系统安装的过程中,一定选择安装所有开发包,建议不要安装SELinux或者安装后在系统中禁止SELinux运行,否则会出现一些莫名其妙的问题。
为防止Oracle安装过程中出现乱码,建议使用英文作为系统语言,进行Oracle的安装工作

二、安装Oracle前的系统准备工作
1.检查需要的软件包
可以使用rpm -qa|grep 软件包关键词命令进行检测,一般情况下会需要手动安装如下的软件包:
From RedHat AS5 Disk 1(32 Bit)
# rpm -Uvh setarch-2*
# rpm -Uvh make-3*
# rpm -Uvh glibc-2*
# rpm -Uvh libaio-0*
From RedHat AS5 Disk 2(32 Bit)
# rpm -Uvh compat-libstdc++-33-3*
# rpm -Uvh compat-gcc-34-3*
# rpm -Uvh compat-gcc-34-c++-3*
# rpm -Uvh gcc-4*
# rpm -Uvh libXp-1*
From RedHat AS5 Disk 3(32 Bit)
# rpm -Uvh openmotif-2*
# rpm -Uvh compat-db-4*
如果使用DVD安装介质的话,会很方便。

2.修改Linux发行版本信息
由于Oracle 10g发行的时候,RedHat Enterprise Linux 5没有发行,所以Oracle 10g并没有对RedHat Enterprise Linux 5确认支持,我们有两种方法可以让Oracle 10g支持RedHat Enterprise Linux 5。
方法一:
我们需要手工修改Linux的发行注记,让Oracle 10g支持RedHat Enterprise Linux 5。
编辑/etc/redhat-release文件
# vi /etc/redhat-release
将其中的内容Red Hat Enterprise Linux Server release 5 (Tikanga)修改为Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
方法二:
还有文章说修改Oracle安装包中install/oraparam.ini文件的内容,也可以让Oracle 10g支持RedHat Enterprise Linux 5,修改方法如下:
# vi install/oraparam.ini
在其中的Certified Versions段落增加redhat-5
#[Certified Versions]
Linux=redhat-3,SuSE-9,redhat-4,redhat-5,UnitedLinux-1.0,asianux-1,asianux-2]
再添加
[Linux-redhat-5.0-optional]
TEMP_SPACE=80
SWAP_SPACE=150
MIN_DISPLAY_COLORS=256
经我测试,发现方法二在安装之前的系统检测过程可以通过,但是在安装过程中的系统支持检测无法通过,不知道是不是我设置的有问题,希望有高手可以给我点提示。

3.修改系统内核参数
# vi /etc/sysctl.conf
kernel.shmall = 2097152                    // 该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改kernel.shmmax = 2147483648            // 该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G
kernel.shmmni = 4096                       // 这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 。通常不需要更改
kernel.sem = 250 32000 100 128        // 表示设置的信号量
fs.file-max = 65536                            // 表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144        // 默认的接收窗口大小
net.core.rmem_max=262144             // 接收窗口的最大大小
net.core.wmem_default=262144      // 默认的发送窗口大小
net.core.wmem_max=262144           // 发送窗口的最大大小
修改好内核参数后,执行如下命令使新的设置生效
# /sbin/sysctl -p

4.创建Oracle用户、组、安装目录
在这里我只讨论单主机环境,不考虑RAC环境的配置,在以后我会专门写一篇如何配置Oracle RAC环境的文章。
(1) 创建Oracle用户组
# groupadd oinstall
# groupadd dba
(2) 创建Oracle用户
# useradd -m -g oinstall -G dba oracle
(3) 设置Oracle用户口令
# passwd oracle
(4) 创建Oracle安装目录以及数据存放目录
# mkdir -p /DBSoftware/app/oracle
# mkdir -p /DBData/oradata
(5) 修改目录权限
# chown -R oracle:oinstall /DBSoftware/app/oracle/ /DBData/oradata/
# chmod -R 755 /DBSoftware/app/oracle/ /DBData/oradata/

5.添加以下内容到/etc/security/limits.conf
# vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
6.添加以下内容到/etc/pam.d/login
# vi /etc/pam.d/login
session required /lib/security/pam_limits.so
session required pam_limits.so
7.添加以下内容到/etc/profile
# vi /etc/profile
if [ $USER = "oracle" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
fi

8.配置Linux主机
检查/etc/hosts文件中是否有localhost的记录(指向127.0.0.1即可),若没有的话,在后面配置Oracle监听的时候会出现一些问题,导致无法启动监听,在此手工添加此记录即可。
9.配置oracle用户环境变量
# su - oracle
$ vi ~/.bash_profile
增加如下内容:
export ORACLE_BASE=/DBSoftware/app/oracle   // 上面创建的Oracle安装文件夹
export ORACLE_SID=orcl
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBARY_PATH=$ORACLE_HOME/lib
export PATH
umask 022
保存后使用如下命令,使设置生效:
$ source ~/.bash_profile

三、安装Oracle,并进行相关设置
1.解压缩安装文件
Oracle的安装包有这样几种格式:
(1) zip
这种格式最好解压缩,直接使用命令unzip 文件名即可
(2) cpio.gz
这种格式有这样几种解压缩方式
a. # zcat XXXX.cpio.gz | cpio -idmv
b. # gunzip XXXX.cpio.gz解压出XXXX.cpio文件然后再 # cpio -idvm < XXXX.cpio
解压缩完成后,设置oracle帐户可以操作安装文件所在的目录
chown -R oracle:oinstall 安装文件所在目录
2. 用oracle帐户进入安装文件所在目录,执行如下命令即可看到安装界面:
$ ./runInstaller
如果无法看到安装界面,请使用root帐户执行如下命令后再运行安装程序:
# export DISPLAY=:0.0
# xhost +
$ ./runInstaller
出现安装界面后,根据界面提示进行相关的设置,我的建议是在安装过程中不创建数据库,只安装程序,监听和创建数据库等安装完成后再进行相关的操作。

安装过程中,需要使用root权限执行两个脚本。

3. 安装完成后,将/etc/redhat-release文件中的内容修改回Red Hat Enterprise Linux Server release 5 (Tikanga)
4.创建监听以及创建数据库
(1) 创建监听程序
使用Oracle提供的NET CONFIGURATION ASSISTANT创建TNS监听
$ netca
基本上就是一直Next就可以了,当然你也可以在这期间修改TNS的监听端口号
TNS监听创建完成后可以使用如下命令进行检查:
# netstat -atln    检查监听端口是否打开
$ lsnrctl status    检查TNS监听状态
确认监听已经成功启动后,即可执行Database Configure Assistant进行数据库的创建,执行命令如下:
$ dbca
在创建数据库的过程中,建议将数据库的字符集设置为Unicode UTF-8,防止出现乱码。

四、数据库的启动脚本
# vi /etc/rc.d/init.d/oracle
================================ Script. File Start ================================
#!/bin/bash
#
# chkconfig: 35 95 1
# description: init script. to start/stop oracle database 10g, TNS listener, EMS
# match these values to your environment:
export ORACLE_BASE=/DBSoftware/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export PATH=/u01/app/oracle/bin:$ORACLE_HOME/bin:$PATH
export ORACLE_SID=orcl
export ORACLE_USER=oracle
# see how we are called:
case $1 in
    start)
        su - "$ORACLE_USER"<<EOO
        lsnrctl start
        sqlplus /nolog<<EOS
        connect / as sysdba
        startup
    EOS
    emctl start dbconsole
    EOO
    touch /var/lock/subsys/$scriptname
    ;;
    stop)
        su - "$ORACLE_USER"<<EOO
        lsnrctl stop
        sqlplus /nolog<<EOS
        connect / as sysdba
        shutdown immediate
    EOS
    emctl stop dbconsole
    EOO
    rm -f /var/lock/subsys/scriptname
    ;;
*)
echo "Usage: $0 {start|stop}"
;;
esac
================================ Script. File End ================================
授权 :chown root.root /etc/rc.d/init.d/oracle
修改文件属性:chmod 755 /etc/rc.d/init.d/oracle
以后启动/关闭Oracle可以使用如下命令操作:
# service oracle start     // 启动监听、数据库以及em
# service oracle stop      // 关闭监听、数据库以及em
当然你也可以把Oracle作为系统服务,随系统启动等等

 

 [安装过程需要用到的命令总结版]
*************************************************************************
cat /etc/issue
uname -r
grep "model name" /proc/cpuinfo
grep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfo
free
df-k /tmp
df -k
df-h

rpm -q gcc make binutils openmotif search compat-db compat-gcc compat-gcc-c++ compat-libstdc++

mount -t auto /dev/cdrom /mnt
copy

 

/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/useradd -m -g oinstall -G dba oracle
id oracle
passwd oracle

mkdir -p /u01/app/oracle
mkdir -p /u02/oradata
chown -R oracle:oinstall /u01/app/oracle /u02/oradata
chmod -R 755 /u01/app/oracle /u02/oradata

vi /etc/sysctl.conf
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmnni = 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.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
/sbin/sysctl -p

vi /u01/app/oracle/.bash_profile
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=oracle1
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:/sbin
source .bash_profile

mount -t auto /dev/cdrom /mnt
cd /opt/database (where runInstaller is!)
./runInstaller

advanced-->enterprised Edition -->install database soft only-->Install-->/u01/app/oracle/product/10.2.0/db_1/root.sh-->

copy   The following J2EE Applications have been deployed and are accessible at the URLs listed below.

iSQL*Plus URL:
http://localhost.localdomain:5560/isqlplus

iSQL*Plus DBA URL:
http://localhost.localdomain:5560/isqlplus/dba

 

--->dbca --> xiugai neicun,yuyan zhichi
--->netca

-->lsnrctl stop -->lsnrctl start
-->emctl stop dbconsole-->emctl start dbconsole
-->http://192.168.1.2:1158/em
user:   sys
pwd:    oracle 
con as: sysdba

-->isqlplusctl stop
-->isqlplusctl start

http://192.168.1.2:5560/isqlplus
user:   system
pwd:    oracle 
sid:    oracle1

sqlplus --> / as sysdba-->  startup-->  exit
sqlplus --> / as sysdba-->  shutdown immediate -->exit

***************************************************************************

uninstall oracle db:

su - oracle --> dbca -->del database

cd $ORACLE_HOME/bin-->emctl stop dbconsole -->lsnrctl stop
 -->isqlplusctl stop -->searchctl stop
cd $ORACLE_HOME/oui/bin -->./runInstaller -->Deinstall Products


 

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/17176894/viewspace-600417/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 深爱妈妈
请登录后发表评论 登录
全部评论

注册时间:2009-04-27

  • 博文量
    8
  • 访问量
    9702