Oracle 10g RAC For Redhat AS 4安装指南.docx
《Oracle 10g RAC For Redhat AS 4安装指南.docx》由会员分享,可在线阅读,更多相关《Oracle 10g RAC For Redhat AS 4安装指南.docx(17页珍藏版)》请在冰豆网上搜索。
Oracle10gRACForRedhatAS4安装指南
Oracle10gRACForRedhatAS4(x86-64)安装指南
目录
概述1
第1部分:
安装RedhatAS42
第2部分:
为OracleRAC安装Redhat相关配置2
常用系统服务配置、启用2
网络配置2
内核参数配置2
安装相关程序包3
创建Oracle组和用户帐户4
配置Hangcheck计时器5
配置/etc/hosts5
为用户等效性配置SSH5
第3部分:
准备共享磁盘,创建、配置自动存储管理ASM6
在原始设备上创建OracleCRS文件7
配置存储OracleCRS文件的数据分区与原始设备的映射7
为每个节点上的数据库原始设备设置所有权和权限7
为每个节点上的数据库原始设备创建有意义的符号连接7
安装配置ASMLib7
获取ASMlib程序包8
安装该程序包8
配置ASMLib8
为ASM配置磁盘9
第4部分:
安装OracleRAC软件及创建RAC数据库10
检查集群中各节点的用户等效性10
安装OracleCRS10
设置CRS相关环境变量10
运行runInstaller开始安装10
CRS安装结束后验证11
安装Oracle数据库软件11
配置集群监听11
设置环境变量11
运行runInstaller安装Oracle软件11
创建OracleRAC数据库(DBCA—OracleASM)12
结论13
附录:
OracleRAC集群软件、数据库日常管理命令14
概述
该指南主要针对RedhatAS(x86-64)平台下Oracle10gRAC软件安装,涉及的Oracle软件主要有ASM(自动存储管理)工具,Oraclecluster软件CRS(集群就绪服务),Oracle企业版数据库。
Oracle10gRAC在其它Linux系列平台下安装配置类似。
第1部分:
安装RedhatAS4
参看官方RedhatAS4安装手册,正常情况由Linux系统工程师完成,但需要注意,
主机硬件如支持64位架构,则RedhatAS4必须安装x86-64位内核,尽量完整安装软件包,打上当前最新补丁-“Update4”。
配置支持中文,系统操作时不能出现?
类型乱码。
如出现字符不能正常显示,折中可以更改/etc/sysconfig/i18n文件中LANG的值为"en_US.UTF-8",然后重新登陆系统,此时乱码消除,但无法显示中文。
第2部分:
为OracleRAC安装Redhat相关配置
Redhat针对OracleRAC安装需注意以下几方面配置:
常用系统服务配置、启用
Redhat缺省会安装vncserver,建议在服务器端启用vncserver服务,用来作为客户端仿真终端图形化安装Oracle软件方式。
启用ftp、ssh等服务。
网络配置
需要为集群中每台服务器提供三个IP地址:
一个用于专用网络,一个用于公共网络,一个用于虚拟IP地址。
使用操作系统的网络配置工具来分配专用的和公共的网络地址,每台服务器专用、公共网络ip对应的网络适配器端口号要一致,如:
专用网络都统一使用eth1。
不要使用操作系统的网络配置工具来分配虚拟IP地址;这项工作将会在OracleRAC软件安装期间由Oracle虚拟IP配置助手(VIPCA)来完成。
内核参数配置
可参看Oracle单机版安装内核参数配置建议,无其它特殊要求:
以root用户身份登录并在每个主机上配置Linux内核参数。
cat>>/etc/sysctl.conf>>EOF
kernel.shmall=2097152
kernel.shmmax=2147483648
kernel.shmmni=4096
kernel.sem=25032000100128
fs.file-max=65536
net.ipv4.ip_local_port_range=102465000
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
EOF
/sbin/sysctl–p
为oracle用户设置Shell限制
Oracle建议对每个Linux帐户可以使用的进程数量和打开文件的数量设置限制。
要进行这些更改,以root用户身份剪切和粘贴下列命令。
cat>>/etc/security/limits.conf>>EOF
oraclesoftnproc2047
oraclehardnproc16384
oraclesoftnofile1024
oraclehardnofile65536
EOF
安装相关程序包
●通用的程序包需有(或更高版本):
make-3.80-5
gcc-3.4.3-9.EL4
compat-db-4.1.25-9
●针对RedhatAS4(x86-64)特殊的程序包(需额外去Redhat官方网站下载安装):
程序包名为rhn-packages.tar,包括glibc-2.3.4-2.25.i686.rpm,glibc-devel-2.3.4-2.25.i386.rpm,该两个rpm都是x86-32位平台所有,RedhatAS4(x86-64)缺省没有,但需要额外安装,如未安装这两个rpm,在安装OracleCRS到第二个节点执行root.sh进行vipca配置虚拟ip时会报类似如下错误:
OracleCRSstackinstalledandrunningunderinit(1M)
Runningvipca(silent)forconfiguringnodeapps
PRKH-1010:
UnabletocommunicatewithCRSservices.
[PRKH-1000:
UnabletoloadtheSRVMHASsharedlibrary
[PRKN-1008:
Unabletoloadthesharedlibrary"srvmhas10"
oradependentlibrary,from
LD_LIBRARY_PATH="/home/oracle/product/10.2.0/eas_crs/jdk/jre/lib/i386/client:
/home/oracle/product/10.2.0/eas_crs/jdk/jre/lib/i386:
/home/oracle/product/10.2.0/eas_crs/jdk/jre/../lib/i386:
/home/oracle/product/10.2.0/eas_crs/lib32:
/home/oracle/product/10.2.0/eas_crs/srvm/lib32:
/home/oracle/product/10.2.0/eas_crs/lib:
/home/oracle/product/10.2.0/eas_crs/srvm/lib:
/home/oracle/product/10.2.0/eas_crs/lib"
[java.lang.UnsatisfiedLinkError:
/home/oracle/product/10.2.0/eas_crs/lib32/libsrvmhas10.so:
libclntsh.so.10.1:
cannotopensharedobjectfile:
Nosuchfileordirectory]]]
将libaio-0[1].3.105-2.x86_64.rpm拷贝到集群节点,改名为libaio-0.3.105-2.x86_64.rpm,进行安装,如未安装该程序包,Oracle升级10.2.0.3.时:
"$sqlplus"sysassysdba"
SQL*Plus:
Release10.2.0.3.0
Copyright(c)1982,2005,Oracle.AllRightsReserved.
Enterpassword:
oracle+ASM1:
errorwhileloadingsharedlibraries:
libaio.so.1:
cannotopen
sharedobjectfile:
Nosuchfileordirectory
ERROR:
ORA-12547:
TNS:
lostcontact
创建Oracle组和用户帐户
与单机操作基本相同,但需注意在集群中Oracle用户及oinstall、dba组的ID号在集群中所有节点必须相同。
#/usr/sbin/groupaddoinstall
#/usr/sbin/groupadddba
#/usr/sbin/useradd-m-goinstall-Gdbaoracle
#idoracle
uid=501(oracle)gid=501(oinstall)groups=501(oinstall),502(dba)
用户ID和组ID在所有集群节点上必须相同。
使用从idoracle命令得到的信息,在其余集群主机上创建Oracle组和用户帐户:
/usr/sbin/groupadd-g501oinstall
/usr/sbin/groupadd-g502dba
/usr/sbin/useradd-m-u501-goinstall-Gdbaoracle
配置Hangcheck计时器
所有RHEL版本:
modprobehangcheck-timerhangcheck_tick=30hangcheck_margin=180
cat>>/etc/rc.d/rc.local>>EOF
modprobehangcheck-timerhangcheck_tick=30hangcheck_margin=180
EOF
配置/etc/hosts
127.0.0.1localhost.localdomainlocalhost
192.168.0.1easracdb1-priv.lhhs.orgeasracdb1-priv#eas1private
192.168.0.2easracdb2-priv.lhhs.orgeasracdb2-priv#eas2private
192.68.0.8easracdb1-public.lhhs.orgeasracdb1-public#eas1public
192.68.0.9easracdb2-public.lhhs.orgeasracdb2-public#eas2public
192.68.0.6easracdb1-vip.lhhs.orgeasracdb1-vip#eas1virtual
192.68.0.7easracdb2-vip.lhhs.orgeasracdb2-vip#eas2virtual
需特别注意服务器的主机名必须与公网ip对应的节点名一致。
Redhat下服务器主机名修改:
#vi/etc/sysconfig/network,修改HOSTNAME一行为"HOSTNAME=主机名",然后运行命令#hostname主机名,重启服务器后生效。
为用户等效性配置SSH
在安装OracleRAC10g期间,OUI需要把文件复制到集群中的其他主机上并在其上执行程序。
为了允许OUI完成此任务,必须配置SSH以启用用户等效性。
用SSH建立用户等效性就提供了一种在集群中其他主机上复制文件和执行程序时不需要口令提示的安全方式。
在集群中每个节点生成SSH的公共密钥和专用密钥
$cd$HOME
$mkdir.ssh
$chmod700.ssh
$cd.ssh
$ssh-keygen-trsa
$ssh-keygen-tdsa
将本节点自己的密钥输出到密钥文件:
$cat*.pub>authorized_keys.nodeX(X为节点标志号)
使用ftp方式将各节点的密钥文件互相传送,保证每个节点都有所有节点的密钥文件authorized_keys.nodeX
将所有节点的密钥文件合并输出到本机SSH密钥文件
$cd$HOME/.ssh
$cat*.node*>authorized_keys
$chmod600authorized_keys
在集群中所有节点进行SSH测试
$sshdate
Exmple:
$ssheasracdb1-priv.lhhs.orgdate
$ssheasracdb1-privdate
hostnameX对应/etc/hosts中配置的公网、专用所有节点名,虚拟节点除外,测试过程中会提示是否增加节点名到known_hosts文件,直接回车确定。
需保证sshdate针对所有节点名都不需要输入密钥就能返回日期。
如果公共密钥和专用密钥设置了密码为空,则以下设置后即完成了等效性配置,但如果密码设置了非空值,则需要在后续Oracle软件安装时增加额外的建立用户等效性步骤:
$exec/usr/bin/ssh-agent$shell
$/usr/bin/ssh-add
第3部分:
准备共享磁盘,创建、配置自动存储管理ASM
共有三种用于RAC的共享磁盘方法:
1.Oracle集群文件系统(OCFS)
2.自动存储管理器(ASM)
3.原始设备
这里主要介绍使用原始设备来存储OracleCRS管理文件vote.crs、ocr.crs,自动存储管理器(ASM)来存储Oracle数据文件、控制文件、日志文件。
在原始设备上创建OracleCRS文件
配置存储OracleCRS文件的数据分区与原始设备的映射
编辑/etc/sysconfig/rawdevices
/dev/raw/raw2/dev/sdb2
/dev/raw/raw3/dev/sdb3
为每个节点上的数据库原始设备设置所有权和权限
chownoracle:
oinstall/dev/raw/raw[2-3]
chmod660/dev/raw/raw[2-3]
注意:
RHEL4对原始设备的实施方法与以前的版本不同。
每次启动原始设备服务时,都会重新创建/dev/raw/raw*设备文件,删除任何现有的非默认所有权或权限。
当原始设备与Oracle搭配使用时,有几种方法可以解决这个问题。
最简单的方法是将oracle帐户添加到disk组(例如:
usermod–Gdba,diskoracle)。
或者,您可以创建一个启动脚本,在系统启动时更改原始设备的所有权和权限。
为每个节点上的数据库原始设备创建有意义的符号连接
ln-s/dev/raw/raw2/home/oracle/oracrs/ocr.crs
ln-s/dev/raw/raw3/home/oracle/oracrs/vote.crs
安装配置ASMLib
在Linux平台上,ASM可以使用原始设备或通过ASMLib接口管理的设备。
出于易于使用和性能方面的原因,Oracle建议使用通过ASMLib接口管理的设备而非原始设备。
可以从OTN免费获得ASMLib。
获取ASMlib程序包
以root用户身份登录并运行以下命令来确定您正在使用的内核:
#uname–ra
2.6.9-42
1、使用此信息在OTN上查找相应的ASMLib程序包:
2、Web浏览器指向
3、选择适用Linux版本的链接。
4、下载适用于Linux版本的oracleasmlib和oracleasm-support程序包。
5、下载与内核相对应的oracleasm程序包。
安装该程序包
#rpm-Uvh\
oracleasm-2.4.9-e-smp-1.0.0-1.i686.rpm\
oracleasmlib-1.0.0-1.i386.rpm\
oracleasm-support-1.0.0-1.i386.rpm
Preparing...###########################################[100%]
1:
oracleasm-support###########################################[33%]
2:
oracleasm-2.6.9-e-smp###########################################[66%]
Linkingmoduleoracleasm.ointothemodulepath[OK]
3:
oracleasmlib###########################################[100%]
注:
这里oracleasm-2.6.9程序包一定需严格对应内核完整版本号下载安装。
配置ASMLib
使用ASMLib之前,必须运行配置脚本来准备驱动程序。
以root用户身份在每个集群主机上运行以下命令并回应提示。
#/etc/init.d/oracleasmconfigure
ConfiguringtheOracleASMlibrarydriver.
这将配置OracleASM库驱动程序的启动时属性。
以下问题将确定在启动时是否加载驱动程序以及它将拥有的权限。
当前值将显示在方括号(“[]”)中。
按而不键入回应将保留该当前值。
按Ctrl-C将终止。
Defaultusertoownthedriverinterface[]:
oracle
Defaultgrouptoownthedriverinterface[]:
dba
StartOracleASMlibrarydriveronboot(y/n)[n]:
y
FixpermissionsofOracleASMdisksonboot(y/n)[y]:
y
WritingOracleASMlibrarydriverconfiguration[OK]
Creating/dev/oracleasmmountpoint[OK]
Loadingmodule"oracleasm"[OK]
MountingASMlibdriverfilesystem[OK]
ScanningsystemforASMdisks[OK]
现在,如下所示启用ASMLib驱动程序。
#/etc/init.d/oracleasmenable
WritingOracleASMlibrarydriverconfiguration[OK]
ScanningsystemforASMdisks[OK]
为ASM配置磁盘
接下来告诉ASMLib驱动程序要使用哪些磁盘。
请注意,这些磁盘可以是不包含任何内容(甚至不包含分区)的空磁盘。
可以是已经做好的磁盘分区,如果磁盘阵列已经做过RAID5或RAID1+0等,则可以在磁盘设备上划分分区作为ASM管理的磁盘。
通过以root用户身份运行以下命令来标记由ASMLib使用的磁盘。
仅从一个集群主机上执行此操作。
#/etc/init.d/oracleasmcreatediskeasracdisk_b1/dev/sdb
Markingdisk"/dev/sdb"asanASMdisk[OK]
#/etc/init.d/oracleasmcreatediskeasracdisk_c1/dev/sdc
Markingdisk"/dev/sdc"asanASMdisk[OK]
列出标记为由ASMLib使用的所有磁盘。
#/etc/init.d/oracleasmlistdisks
easracdisk_b1
easracdisk_c1.
在所有其他集群主机上,以root用户身份运行以下命令,扫描所配置的ASMLib磁盘
/etc/init.d/oracleasmscandisks
到这里已准备就绪,可以开始安装OracleCRS、安装Oracle数据库软件并创建OracleRAC数据库。
第4部分:
安装OracleRAC软件及创建RAC数据库
检查集群中各节点的用户等效性
参看第2部分中为用户等效性配置SSH,确定等效性建立才能进行后续安装。
安装OracleCRS
在安装OracleRAC10g数据库软件之前,必须先安装CRS。
CRS需要在集群的所有主机中共享两个文件:
OracleClusterRegistry(100MB)和CRSVotingDisk(20MB)。
这些文件可能存储在原始设备或集群文件系统上,前面已经描述了如何在原始设备上创建OracleCRS文件。
设置CRS相关环境变量
exportORACLE_BASE=/home/oracle
exportORACLE_HOME=$ORACLE_BASE/product/10.2.0/eascrs
运行runInstaller开始安装
按照安装向导一步步来做,其中需要注意关键几个地方:
ClusterConfiguration—输入集群名eascrs,这时安装向导会从系统hostname中获取节点名,自动生成需要配置的publicnodename与privatenodename,这个名字与实际/etc/hosts中配置的公共节点、专用节点名可能不一致,需参照进行编辑修改,但需注意,前面也提到过,pubilcnodename与系统hostname,及/etc/hosts中公共节点名必须一致,否则会提示获取公共节点名错误,无法进行下一步安装。
OracleClusterRegistry—在clusterSpecifyOCRLocation中输入/home/oracle/oracrs/ocr.crs
VotingDisk—输入votingdisk名/home/oracle/