前言
本文档基于AIX5.3安装两个节点的oracle(10.2.0.1)RAC
RAC规划
主机的硬件和软件配置
主机名:db01/ db02 OS版本:AIX 5300-05 HA软件:HACMP 5.2
共享VG:datavg(位于共享存储)
网卡: En8 作为公网接口,En9 作为私网接口 Oracle版本: 10.2.0.1.0
IP地址规划
IP地址 10.201.2.102 172.16.100.1 10.201.2.104 10.201.2.103 172.16.100.2 10.201.2.105 域名 db01 db01_priv db01_vip db02 db02_priv db02_vip 说明 第一个节点的public ip 第一个节点的private ip 第一个节点的virtual ip 第二个节点的public ip 第二个节点的private ip 第二个节点的virtual ip NTP服务
在两个节点上配置指向同一个NTP Server的NTP Client或者两个节点互相做NTP Server和NTP Client.
选择存储类型
使用raw device 存储数据
安装RAC前的准备工作
安装需要的AIX补丁
安装fix 包所需补丁(到IBM 网站上下载补丁):
本文档所使用的版本 AIX 5305,HACMP 5.2 只需要打一个hamcp 的补丁 IY60759 即可。
安装oracle、hacmp 支持包
# smitty installp 需要安装以下操作系统包: Bos.adt bos.cifs_fs Bos.clvm bos.compat bos.data Bos.perf rsct.basic rsct.compat.basic rsct.compat.clients rsct.core
rsct.exp.cimrm 2.4.2.0
(以下包在AIX Toolbox for Linux Applications 盘上,安装SSH 的前提包) openssl-0.9.7g openssl-devel-0.9.7g openssl-doc-0.9.7g (以下包在扩展盘上) openssh.base openssh.license openssh.man.en_US xlC.aix50.rte:8.*.*.* xlC.rte:8.*.*.*
配置AIX 修改hosts文件
# more /etc/hosts
127.0.0.1 loopback localhost # loopback (lo0) name/address 10.201.2.102 db01
172.16.100.1 db01_priv 10.201.2.104 db01_vip 10.201.2.103 db02 172.16.100.2 db02_priv 10.201.2.105 db02_vip 需要注意的是 ? ? ? ? ?
私有 IP 地址(必需与公网分离,两个节点可互相访问可以ping 通,必须在/etc/hosts 里有) 虚拟 IP 地址(同公网IP 地址是一个网段的,如果有DNS 就注册在DNS 中,如果没有DNS 就写在/etc/hosts 文件里)
公网 IP 地址(主机真正的IP 地址,主机管理员预先分配,如果有DNS 就注册在DNS 中,如果没 有DNS 就写在/etc/hosts 文件里),并且保证写入每个客户系统中的hosts 文件。
在各个节点的网卡配置必须相同,比如第一个节点公共 IP 是用en0,那么其他节点也得用en0 主机名称不允许出现大写字母,要求是小写字母和数字
?
调整swap
默认的 swap 为512M 修改pagesize,建议swap为物理内存大小:
Smitty->system storage management->logical volume manager->paging size->change/show characteristics of a paging size
调整AIX的相关系统参数
# smitty chgsys
Maximum number of PROCESSES allowed per user [4096] HIGH water mark for pending write I/Os per file [33] LOW water mark for pending write I/Os per file [24] Stack Execution Disable (SED) Mode off
调整AIX网络参数
修改文件/etc/rc.net,将如下几行加到文件的尾部: #chmod 755 /etc/rc.net #vi /etc/rc.net
if [ -f /usr/sbin/no ] ; then
/usr/sbin/no -o extendednetstats=0 >>/dev/null 2>&1 /usr/sbin/no -p -o udp_sendspace=65536 /usr/sbin/no -p -o udp_recvspace=655360 /usr/sbin/no -p -o tcp_sendspace=65536 /usr/sbin/no -p -o tcp_recvspace=65536 /usr/sbin/no -p -o rfc1323=1 /usr/sbin/no -p -o sb_max=1310720 /usr/sbin/no -r -o ipqmaxlen=512
Fi
#chmod 554 /etc/rc.net
设置异步I/O
# smitty chgaio [Entry Fields]
MINIMUM number of servers [30] # MAXIMUM number of servers [60] # maximum number of REQUESTS [4096] # server PRIORITY [39] #
STATE to be configured at system restart available + ORACLE 10G RAC 参考手册 7
State of fast path enable + # mkdev –l aio0 使异步I/O 可用
Oracle相关配置
创建oracle账号和组
创建oinstall、dba、hagsuser 组
建议使用 smitty 添加组(设置三个组的id,如2.2.2 的步骤所示) 或者如下命令
# mkgroup -'A' id='203' oinstall # mkgroup -'A' id='204'dba # mkgroup -'A' id='205'hagsuser
创建oracle 用户
1、使用 smit 来创建用户
Smit -> Security & Users -> Users -> Add a User 或者快速路径 # smitty mkuser Add a User
Type or select values in entry fields. Press Enter AFTER making all desired changes. * User NAME [oracle] User ID [440]
Primary GROUP [oinstall] Group SET [dba,hagsuser]
Soft FILE size [-1] Soft CPU time [-1] Soft DATA segment [-1] Soft STACK size [-1]
PS:保证两台主机的组号要一致! # more /etc/group oinstall203: dba204: hagsuser205: # id oracle
uid=440(oracle) gid=203(oinstall) groups=204(dba),205(hagsuser)
创建LV
创建lv的工作由系统管理员完成,我们只要列出每个lv的大小和名称就可以了. 创建datavg: # hostname db01
ORACLE 10G RAC 参考手册 10
#
# smitty mkvg
",Add a Big Volume Group
Type or select values in entry fields. Press Enter AFTER making all desired changes. [Entry Fields]
VOLUME GROUP name [datavg] +
Physical partition SIZE in megabytes 512 * PHYSICAL VOLUME names [hdisk2,hdisk3] + Force the creation of a volume group yes + Activate volume group AUTOMATICALLY no + at system restart?
Volume Group MAJOR NUMBER [60]
Create VG Concurrent Capable? enhanced concurrent +
PS:确认所有卷组必须以 concurrent 模式被激活,两个节点可以同时对磁盘进行操作. # varyonvg datavg
创建 oracle 使用的并行卷
使用下面命令。或者将如下命令便写成一个脚本然后执行。后面的partition size 的个数请参 考自己系统的情况。
mklv -y'rac_crs1024m' -w'n' -s'n' -r'n' datavg 2 hdisk2 mklv -y'rac_vote1024m' -w'n' -s'n' -r'n' datavg 2 hdisk2 mklv -y'rac_system_1024m' -w'n' -s'n' -r'n' datavg 4 hdisk2 mklv -y'rac_pwdfile_100m' -w'n' -s'n' -r'n' datavg 1 hdisk2