软件环境
数据库:
p13390677_112040_AIX64-5L_1of7.zip
p13390677_112040_AIX64-5L_2of7.zip
集群软件:
p13390677_112040_AIX64-5L_3of7.zip
这三个包
操作 系统:
AIX 7.1,Oracle 11gR2
1.3 网络规划
1.31 ip地址规划
1.32 DNS服务器
使用/etc/hosts 来解析 scan
1.4 安装目录规划
gridbase 目录:/opt/app/grid #grid 用户的 ORACLE_BASE
grid asm 安装目录:/opt/app/11.2/grid #grid 用户的 ORACLE_HOME,也即是安装时的
software location
Oracle base 目录:/opt/app/oracle #oracle 用户的 ORACLE_BASE
2 安装准备
2.1 系统硬件环境检查
2.11 Oracle11gR2 RAC 最低安装要求:
内存:
安装 grid infrastructure最少需要 1.5GB 的内存,
安装 grid infrastructure和 RAC 最少需要 2.5GB 的内存
swap :最少需要 4GB,有的资料介绍最少 1.5G,不过安装环境检查时显示需要16G。
temp :推荐 10G,可以将安装文件上传至/tmp 目录下,8GB 合适
安装目录:grid infrastructure+ASM+Clusterware 最少需要 12GB
操作系统:
AIX 7.1, 64-bitkernel
2.12 验证方法:
2.121 确认内存大小
#lsattr -El sys0 -a realmem
2.122 确认 SWAP 空间,最少 4G。 。
lsps -a
若不够 4G,需要增加 PPS 数。本系统一个 PPS 为 128M,所以增加 20 个,使 swap 达到 4G。
PPS 大小可以通过lsvg rootvg 查看。
#chps -s 32 hd6
lsps -a
2.123 确认/tmp 大于 1.5GB 和/oracle 目录空间于 大于 15GB
oracle 安装目录在 50GB左右,grid infrastructure+ASM 安装在/u01/app/grid目录下,其中 Oracle11g 安装在/u01/app/oracle/目录下.
chfs 文件系统扩展 修改文件系统的文件系统大小
chfs -a size=10G /tmp
chfs -a size=10G /usr
2.124 确认系统结构
getconf HARDWARE_BITMODE
64
2.125 确认系统 CPU 个数和主频:
lsdev -C | grep proc
lsattr -El proc0
2.2 安装操作系统软件包
2.21 安装 FILESETS
AIX 7 71 .1 需要安装如下软件包:
The following operatingsystem filesetsare required for X AIX 7.1:
bos.adt.base
bos.adt.lib
bos.adt.libm
bos.perf.libperfstat
bos.perf.perfstat
bos.perf.proctools
xlC.aix61.rte:10.1.0.0 or later
xlC.rte.10.1.0.0 or later
gpfs.base 3.3.0.11 or later
以上 filesets 安装与否可以用命令 lslpp -l 进行检查确认。默认安装都是全的,不需要手工进行添加。其中 gpfs.base 不需要安装。验证如下:
修改主机名:
暂时生效(重启后失效)# hostname NEW_HOSTNAME和#uname -S NEW_HOSTNAME
永久生效smit hostname或直接用命令chdev -l inet0 -a hostname=NEW_HOSTNAME
chdev -l inet0 -a hostname=anfsasm0
修改主机IP
smit tcpip
命令修改IP地址
chdev -l en1 -a netaddr=172.16.8.31 -a netmask=255.255.0.0 -a state=up
chdev -l en1 -a netaddr=172.16.8.32 -a netmask=255.255.0.0 -a state=up
2.23 修改/etc/hosts 文件
修改每个节点上的/etc/hosts 文件。
127.0.0.1 loopback localhost # loopback (lo0) name/address
rac节点
anfsasm01
anfsasm02
192.168.123.31
192.168.123.41
172.16.8.31
192.168.123.32
192.168.123.42
172.16.8.32
192.168.123.38
编辑/etc/hosts
192.168.123.31 anfsasm01
192.168.123.32 anfsasm02
172.16.8.31 anfsasm01-priv
172.16.8.32 anfsasm02-priv
192.168.123.41 anfsasm01-vip
192.168.123.42 anfsasm02-vip
192.168.123.38 rac-scan
1).操作系统版本及内核
bootinfo -K
uname -s
oslevel -s
2).系统软件包检查
a).必须软件包
#lslpp -l bos.adt.base bos.adt.lib bos.adt.libm bos.perf.libperfstat
bos.perf.perfstat bos.perf.proctools xlC.rte
注:xlC.rte 11.1.0.2 or later
b).JAVA、C++、Xwindows、ssh
lslpp -l | grep -i ssh
lslpp -l | grep -i java
lslpp -l | grep -i C++
lslpp -l | grep -i x11|grep -i dt
注:X11需要包含以下包:
X11.Dt.ToolTalk
X11.Dt.bitmaps
X11.Dt.helpmin
X11.Dt.helprun
X11.Dt.lib
X11.Dt.rte
X11.Dt.ToolTalk
X11.Dt.bitmaps
X11.Dt.helpmin
X11.Dt.rte
系统补丁包检查
a).ARPAs
IZ87216
IZ87564
IZ89165
IZ97035
instfix -i -k “IZ87216 IZ87564 IZ89165 IZ97035”
注:安装补丁包的时候参考下面的命令
emgr -e IZ89302.101121.epkg.Z
内核参数检查
ncargs>=256
lsattr -El sys0 -a ncargs
注:修改方式
chdev -l sys0 -a ncargs=‘256’
maxuproc>=16384
lsattr -E -l sys0 -a maxuproc
注:修改方式
chdev -l sys0 -a maxuproc=16384
aio_maxreqs>=65536
ioo -o aio_maxreqs
aio_maxreqs = 131072
注:修改方式
#ioo -p -o aio_maxreqs=65536
确认 /etc/security/limits文件包含:
fsize = -1
core = -1
cpu = -1
data = -1
rss = -1
stack = -1
nofiles = -1
more /etc/security/limits
注:修改方式
vi /etc/security/limits
网络参数与端口
网络参数
Network Preparation
PARAMETER RECOMMENDED VALUE
ipqmaxlen 512
rfc1323 1
sb_max 41943040
tcp_recvspace 1048576
tcp_sendspace 1048576
udp_recvspace 20971520
udp_sendspace 2097152
注意:
udp_recvspace:应该是udp_sendspace的10倍,但是必须小于sb_max
udp_sendspace:这个值至少应该是4K+(db_block_size*db_multiblock_read_count)的大小
查看所有的:
no –a | more
分项查看:
no -a | fgrep ipqmaxlen
no -a | fgrep rfc1323
no -a | fgrep sb_max
no -a | fgrep tcp_recvspace
no -a | fgrep tcp_sendspace
no -a | fgrep udp_recvspace
no -a | fgrep udp_sendspace
若有值不满足,进行修改:
no -r -o ipqmaxlen=512
no -p -o rfc1323=1
no -p -o sb_max=41943040
no -p -o tcp_recvspace=1048576
no -p -o tcp_sendspace=1048576
no -p -o udp_recvspace=20971520
no -p -o udp_sendspace=2097152
也可以在/etc/rc.net文件里面加入如下内容
if [ -f /usr/sbin/no ] ; then
/usr/sbin/no -o udp_sendspace=2097152
/usr/sbin/no -o udp_recvspace=20971520
/usr/sbin/no -o tcp_sendspace=1048576
/usr/sbin/no -o tcp_recvspace=1048576
/usr/sbin/no -o rfc1323=1
/usr/sbin/no -o sb_max=41943040
/usr/sbin/no -o ipqmaxlen=512
fi
端口范围
no -a | grep ephemeral
tcp_ephemeral_high = 65500
tcp_ephemeral_low = 9000
udp_ephemeral_high = 65500
udp_ephemeral_low = 9000
调整方式:
#no -p -o tcp_ephemeral_low=9000 -o tcp_ephemeral_high=65500
#no -p -o udp_ephemeral_low=9000 -o udp_ephemeral_high=65500
虚拟内存优化
检查:
vmo -L minperm%
vmo -L maxperm%
vmo -L maxclient%
vmo -L lru_file_repage //此参数已经不是可优化参数
vmo -L strict_maxclient
vmo -L strict_maxperm
调整:
vmo -p -o minperm%=3
vmo -p -o maxperm%=90
vmo -p -o maxclient%=90
vmo -p -o lru_file_repage=0
vmo -p -o strict_maxclient=1
vmo -p -o strict_maxperm=0
smitty iocp
选择更改/显示I / O完成端口的特征。
将系统重新启动时的配置状态更改为已定义Available。
运行lsdev命令确认IOCP状态设置为Available:
$ lsdev | grep iocp
iocp0 Available I/O Completion Ports
重新启动系统以使更改永久
内存和paging space
检查内存(至少2.5G):
lsattr -E -l sys0 -a realmem
检查交换空间
lsps -a
注:内存小于16G建议设置成内存大小,内存大于16G则设置成16G
chps -s 10 hd6 (lsvg rootvg查看PP SIZE大小,扩展10个PP)
文件系统空间检查
df -g
临时文件系统至少1G;
安装软件文件系统至少50G
重启
如果在check过程中对以上参数进行过修改,建议进行重启之后再进行后续操作
shutdown -Fr
时间同步配置
1).确认时区和NTP状态
echo $TZ
确认时区是否和原生产系统一致
lssrc -s xntpd
查看NTP服务的状态
stopsrc -s xntpd
关闭NTP服务
.使用ctssd服务配置方式
##使用ctssd服务进行时间同步
mv /etc/ntp.conf /etc/ntp.conf.bak 重命名NTP的配置文件,防止ctss安装成observer状态
在Grid Infrastructure软件安装以后,用grid用户查看时间同步服务是否处于活动状态:
su - grid
$ crsctl stat resource ora.ctssd -t -init
使用NTP配置方式
为了保证NTP不往回同步时间需要编辑以下内容:
vi /etc/rc.tcpip
start /usr/sbin/xntpd “$src_running” “-x”
##启动xntpd服务:
startsrc -s xntpd -a “-x”
1.4.创建系统组、用户
====================
1).存在性检查
a).检查
id oracle
id grid
more /etc/passwd
more /etc/group
//如果用户已经存在,需要确认这些参数。最好是删除重建用户和组,保证正确性
b).删除用户方案
rmuser -p oracle
rmuser -p grid
rm -rf /home/oracle
rm -rf /home/grid
注:跳过步骤c)到创建用户
c).保留用户方案
lsuser -a capabilities grid
lsuser -a capabilities oracle
chuser -a capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE grid|oracle
grep oinstall /etc/group
more /etc/oraInst.loc
注:查看是否有用户,组,是否安装过Oracle的产品,如果检查通过则跳过创建用户步骤。
====================
2).创建系统组、用户
a).创建系统组
mkgroup -‘A’ id=‘1000’ adms=‘root’ oinstall
mkgroup -‘A’ id=‘1200’ adms=‘root’ dba
b).创建用户
mkuser id=‘1100’ pgrp=‘oinstall’ groups=‘staff’ home=’/home/grid’ fsize=-1 cpu=-1 data=-1 rss=-1 stack=-1 stack_hard=-1 capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE grid
mkuser id=‘1101’ pgrp=‘oinstall’ groups=‘dba’ home=’/home/oracle’ fsize=-1 cpu=-1 data=-1 rss=-1 stack=-1 stack_hard=-1 capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE oracle
c).检查用户
id oracle
id grid
lsuser -a capabilities grid
lsuser -a capabilities oracle
d).修改用户密码
passwd grid
passwd oracle
su - grid
su - oracle
注:建议登录一次图形界面
gridbase 目录:/opt/app/grid #grid 用户的 ORACLE_BASE
grid asm 安装目录:/opt/app/11.2/grid #grid 用户的 ORACLE_HOME,也即是安装时的
software location
Oracle base 目录:/opt/app/oracle #oracle 用户的 ORACLE_BASE
mkdir -p /opt/app/grid
mkdir -p /opt/app/11.2.0/grid
mkdir -p /opt/app/oracle
chown -R grid:oinstall /opt/app
chown oracle:oinstall /opt/app/oracle
chmod -R 775 /opt/app
创建oraInventory:
mkdir -p /opt/app/oraInventory
chown -R grid:oinstall /opt/app/oraInventory
chmod -R 775 /opt/app/oraInventory
grid、oracle用户环境变量
grid用户环境变量
su - grid
$ vi /home/grid/.profile
–加入以下内容:
export ORACLE_BASE=/opt/app/grid
export ORACLE_HOME=/opt/app/11.2.0/grid
export ORACLE_SID=+ASM1
export PATH=PATH
umask 022
export ORACLE_BASE=/opt/app/grid
export ORACLE_HOME=/opt/app/11.2.0/grid
export ORACLE_SID=+ASM2
export PATH=PATH
umask 022
oracle用户环境变量:
vi /home/oracle/.profile
export ORACLE_BASE=/opt/app/oracle
export ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=racdb1
export PATH=PATH
export ORACLE_BASE=/opt/app/oracle
export ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=racdb2
export PATH=PATH
##NFS服务器配置##********************
################AIX7.1 NFS服务器配置################
首先确认nfs服务正常运行。(Aix 下nfs所需服务:portmap, nfsd, biod, rpc.lockd, rpc.statd, rpc.mountd)
lssrc -s portmap # 查看portmap服务情况
lssrc -g nfs # 查看NFS服务情况
mknfs -N # 启动nfs服务
startsrc -g nfs # 启动nfs服务
smit mknfs # 启动nfs服务
rmnfs # 关闭nfs
smit rmnfs # 停止nfs服务
配置/etc/exports 文件
bash-5.0# vi /etc/exports
/opt/shared -rw,root=dbserver1:dbserver2,access=dbserver1:dbserver2
/sharednfs -rw,root=anfsasm01:anfsasm02,access=anfsasm01:anfsasm02
导出exports到 xtab,rpc.mountd 会读取/etc/xtab文件
exportfs -a
经过以上步骤,至客户端执行 showmount -e 192.168.123.199可显示出来
showmount -e localhost
showmount -e 192.168.123.199
AIX7.1系统NFS目录mount方法
服务端和客户端配置/etc/hosts
服务端/etc/hosts
192.168.123.199 nfsserver
192.168.123.31 anfsasm01
192.168.123.32 anfsasm02
客户端/etc/hosts
192.168.123.31 anfsasm01
192.168.123.32 anfsasm02
172.16.8.31 anfsasm01-priv
172.16.8.32 anfsasm02-priv
192.168.123.41 anfsasm01-vip
192.168.123.42 anfsasm02-vip
192.168.123.38 rac-scan
#nfs-server
192.168.123.199 nfsserver
AIX 开机自动挂载NFS共享
重新设置网络参数
nfso -p -o nfs_use_reserved_ports=1
AIX 开机自动挂载NFS共享
重新设置网络参数
nfso -p -o nfs_use_reserved_ports=1
提示信息显示写入了nextboot file
查看/etc/tunables/nextboot 新增加我们刚刚设置的参数
smit nfs 配置
【 Network File System (NFS)】–【Add a File System for Mounting】
Pathname of mount point 【/opt/app/sharednfs】
Pathname of remote directory 【/sharednfs】
Host where remote directory resides 【nfsserver】
Security method [sys]
Mount now, add entry to /etc/filesystems or both? 【both】
/etc/filesystems entry will mount the directory 【yes】
直接修改filesystems文件也可以
vi /etc/filesystems
/opt/app/sharednfs:
dev = /sharednfs
vfs = nfs
nodename = nfsserver
mount = true
options = cio,rw,bg,hard,nointr,rsize=32768,wsize=32768,proto=tcp,noac,vers=3,timeo=600
account = false
mkdir -p /opt/app/data1
cd /opt/app/data1
dd if=/dev/zero of=/opt/app/sharednfs/asmdisk1 bs=1k count=1000000
dd if=/dev/zero of=/opt/app/sharednfs/asmdisk2 bs=1k count=1000000
dd if=/dev/zero of=/opt/app/sharednfs/asmdisk3 bs=1k count=1000000
dd if=/dev/zero of=/opt/app/sharednfs/asmdisk4 bs=1k count=6000000
dd if=/dev/zero of=/opt/app/sharednfs/asmdisk5 bs=1k count=12000000
修改文件用户属组和权限
cd /opt/app/
chown -R grid:oinstall sharednfs
cd /opt/app/sharednfs
chown grid:oinstall asmdisk*
chmod 660 asmdisk*
GI安装
grud用户
$ xhost + 192.168.88.8
xhost + 192.168.88.9
export DISPLAY=192.168.88.8:0.0
##two node running in root :
sh rootpre.sh
./runInstaller
关键部分
安装选择存储方式为Oracle ASM磁盘。完成后单击“Next”继续。
Disk Discovery Path “/opt/app/sharednfs/asmdisk*”
aix7.1执行root.sh脚本ohasd failed to start
然后查询节点一和节点二/etc/inittab内容,果然存在该信息:
[root@node1 bin]# grep install /etc/inittab
install_assist:2:wait:/usr/sbin/install_assist </dev/console >/dev/console 2>&1
install_assist是系统的安装助手,是交互式工具,即假如没有响应,则会一直等待,那么在该行后面的命令将不会被执行,也就是说rc2.d(默认运行级别为2)下的服务将不会被启动,这也就是无法启动ohasd服务的真凶。
问题解决
将/etc/inittab里面的install_assist的一行注释掉或清理掉,重启系统,然后重新执行root.sh,数据库顺利安装。
[root@node1 bin]# grep install /etc/inittab
#install_assist:2:wait:/usr/sbin/install_assist </dev/console >/dev/console 2>&1
asmca 创建asm磁盘组
Oracle用户
database软件安装
##two node running in root :
sh rootpre.sh
$ xhost + 192.168.88.8
export DISPLAY=192.168.88.8:0.0
./runInstaller
dbca创建数据库
常用命令
bash-5.0$ crsctl stat res -t
NAME TARGET STATE SERVER STATE_DETAILS
Local Resources
ora.DATA.dg
ONLINE ONLINE anfsasm01
ONLINE ONLINE anfsasm02
ora.FRA.dg
ONLINE ONLINE anfsasm01
ONLINE ONLINE anfsasm02
ora.LISTENER.lsnr
ONLINE ONLINE anfsasm01
ONLINE ONLINE anfsasm02
ora.OCR.dg
ONLINE ONLINE anfsasm01
ONLINE ONLINE anfsasm02
ora.asm
ONLINE ONLINE anfsasm01 Started
ONLINE ONLINE anfsasm02 Started
ora.gsd
OFFLINE OFFLINE anfsasm01
OFFLINE OFFLINE anfsasm02
ora.net1.network
ONLINE ONLINE anfsasm01
ONLINE ONLINE anfsasm02
ora.ons
ONLINE ONLINE anfsasm01
ONLINE ONLINE anfsasm02
ora.registry.acfs
ONLINE ONLINE anfsasm01
ONLINE ONLINE anfsasm02
Cluster Resources
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE anfsasm01
ora.anfsasm01.vip
1 ONLINE ONLINE anfsasm01
ora.anfsasm02.vip
1 ONLINE ONLINE anfsasm02
ora.cvu
1 ONLINE ONLINE anfsasm01
ora.oc4j
1 ONLINE ONLINE anfsasm01
ora.racdb.db
1 ONLINE ONLINE anfsasm01 Open
2 ONLINE ONLINE anfsasm02 Open
ora.scan1.vip
1 ONLINE ONLINE anfsasm01
bash-5.0$ crs_stat -t -v
Name Type R/RA F/FT Target State Host
ora.DATA.dg ora…up.type 0/5 0/ ONLINE ONLINE anfsasm01
ora.FRA.dg ora…up.type 0/5 0/ ONLINE ONLINE anfsasm01
ora…ER.lsnr ora…er.type 0/5 0/ ONLINE ONLINE anfsasm01
ora…N1.lsnr ora…er.type 0/5 0/0 ONLINE ONLINE anfsasm01
ora.OCR.dg ora…up.type 0/5 0/ ONLINE ONLINE anfsasm01
ora…SM1.asm application 0/5 0/0 ONLINE ONLINE anfsasm01
ora…01.lsnr application 0/5 0/0 ONLINE ONLINE anfsasm01
ora…m01.gsd application 0/5 0/0 OFFLINE OFFLINE
ora…m01.ons application 0/3 0/0 ONLINE ONLINE anfsasm01
ora…m01.vip ora…t1.type 0/0 0/0 ONLINE ONLINE anfsasm01
ora…SM2.asm application 0/5 0/0 ONLINE ONLINE anfsasm02
ora…02.lsnr application 0/5 0/0 ONLINE ONLINE anfsasm02
ora…m02.gsd application 0/5 0/0 OFFLINE OFFLINE
ora…m02.ons application 0/3 0/0 ONLINE ONLINE anfsasm02
ora…m02.vip ora…t1.type 0/0 0/0 ONLINE ONLINE anfsasm02
ora.asm ora.asm.type 0/5 0/ ONLINE ONLINE anfsasm01
ora.cvu ora.cvu.type 0/5 0/0 ONLINE ONLINE anfsasm01
ora.gsd ora.gsd.type 0/5 0/ OFFLINE OFFLINE
ora…network ora…rk.type 0/5 0/ ONLINE ONLINE anfsasm01
ora.oc4j ora.oc4j.type 0/1 0/2 ONLINE ONLINE anfsasm01
ora.ons ora.ons.type 0/3 0/ ONLINE ONLINE anfsasm01
ora.racdb.db ora…se.type 0/2 0/1 ONLINE ONLINE anfsasm01
ora…ry.acfs ora…fs.type 0/5 0/ ONLINE ONLINE anfsasm01
ora.scan1.vip ora…ip.type 0/0 0/0 ONLINE ONLINE anfsasm01
bash-5.0$ ocrcheck
Status of Oracle Cluster Registry is as follows :
Version : 3
Total space (kbytes) : 262120
Used space (kbytes) : 3108
Available space (kbytes) : 259012
ID : 854228530
Device/File Name : +OCR
Device/File integrity check succeeded
Device/File not configured Device/File not configured Device/File not configured Device/File not configured Cluster registry integrity check succeeded Logical corruption check bypassed due to non-privileged user
复制
bash-5.0$ su root
root’s Password:
bash
bash-5.0$ crsctl query css votedisk
STATE File Universal Id File Name Disk group
- ONLINE 13ce304b254f4f4fbf50a7a572d0fc82 (/opt/app/sharednfs/asmdisk1) [OCR]
- ONLINE 3f461b1b45b24ffebf43a1457790bb78 (/opt/app/sharednfs/asmdisk2) [OCR]
- ONLINE 9fba280aea3a4f08bf4bcc3714d2e3a7 (/opt/app/sharednfs/asmdisk3) [OCR]
Located 3 voting disk(s).