64位RHEL6.2上安装Oracle 10g r2

最近给某电信公司做了个项目,把原Oracle库迁移到EnterpriseDB之PPAS上,拿回oracle的dump文件忙乎了一圈,把安装迁移过程写一下。

先列出总结后的安装过程,再列出安装过程中遇到的问题:
安装过程:
1
硬件:
ThinkPad笔记本:
 Edge E135
软件:
Linux:
uname -a
Linux host1 2.6.32-220.el6.x86_64 #1 SMP Wed Nov9 9 08:03:13 EST 2011 x86_64 x64 x86_64 GNU/Linux
/etc/RedHat-release
Red Hat Enterprise Linux Server release 6.2 (Santiago)
ORACLE:
oracle 10g R2 Linux X86_64

2
修改核心参数配置
编辑文件/etc/sysctl.conf,在最后一行内容后添加:
vm.hugetlb_shm_group = 503
#上面这个值刚开始设置为0,后来改为dba组的id
kernel.shmmni = 4096
kernel.shmall = 4294967296
kernel.shmmax = 68719476736
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

参数的计算方法和填写原则请参见oracle官方安装文档《oracle 10g install for Linux.txt》
shmmax计算方法为:kernel:shmmax=1024*1024*RAM(M)/2
注:一般情况下可以设置最大共享内存为物理内存的一半,如果物理内存是 2G,则可以设置最大共享内存为 1073741824,如上;如物理内存是 1G,则可以设置最大共享内存为 512 * 1024 * 1024 = 536870912; 如果是8G,可以设置最大共享内存为 8 * 512 * 1024 * 1024 =4294967296;以此类推。)
--Oracle Life
--shmmax内核参数定义单个共享内存段的最大值,如果该参数设置小于Oracle SGA设置,那么SGA就会被分配多个共享内存段。这在繁忙的系统中可能成为性能负担,带来系统问题。

3
修改后运行
#sysctl -p
 
4
编辑文件/etc/security/limits.conf,在文件最后加入:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
配置完毕,需用root重新登录,使配置生效。

5
编辑/etc/pam.d/login文件,如果该文件中没有如下内容,需要添加
session    required    pam_limits.so

6
groupadd oinstall
groupadd dba
useradd -g oinstall -g dba -m oracle

7
rpm包
rpm -q binutils compat-db compat-libstdc++-296 control-center gcc gcc-c++ glibc glibc-common libstdc++ libstdc++-devel make pdksh sysstat setarch gnome-libs xscreensaver
按上面的检查结果在操作系统安装光盘里找相关rpm包并打上

有下面4个包没找到
pdksh
setarch
gnome-libs
xscreensaver

7.1
其中pdksh、setarch这两个包是在下面的网站上找到的并下载的
http://pkgs.org/CentOS-5-rhel-5/centos-rhel-updates-x86_64/pdksh-5.2.14-37.el5_8.1.x86_64.rpm/download/
pdksh-5.2.14-37.el5_8.1.x86_64.rpm
setarch-2.0-1.1.x86_64.rpm

7.2
xscreensaver :没找到,使用gnome-screensaver代替

7.3
gnome-libs包括libgnome, libgnomeui, libgnomesupport, libart_lgpl, libgtk-xmhtml, libgnorbagtk 和 libzvt.,
在OS安装盘里找到了libgnome, libgnomeui,libart_lgpl等打上,没找到的没有装。

7.4
其中的libXp包需要依赖32位的,这个包还依赖其他32位的包,通通装上

8
# Oracle Environment
修改/oracle/home/.bash_profile,在后面追加下面内容
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/opt/ora10g
export ORACLE_HOME=/opt/ora10g/product/10.2/db_1
export ORACLE_SID=ora10_sid
export ORACLE_TERM=xterm
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export ORA_NLS33=$ORACLE_HOME/nls/data
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib:/lib64:/usr/lib64:/usr/local/lib64
export CLATHPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
umask 022
if [ $USER = "oracle" ]; then
  if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
fi

因为Redhat 5、6 不支持Oracle 10.2.0.1,所以要修改一些参数

相关推荐