AIX 6.1 Oracle11g 11.2.0.4 RAC 安装心得

在RAC安装过程中涉及多个用户,多种工具,这里列出常见命令提示符:


UNIX
的SHELL提示符,表示root用户的登录


UNIX
的SHELL提示符,表示oracl用户或grid用户的登录

安装RAC是一个比较耗时,并且容易出错的过程。最重要的阶段是安装前的准备,准备工作越充分,安装就会越顺利。在这个阶段对硬件、软件进行一系列的配置,如配置存储、网络、参数、权限等步骤繁多,环环相扣,一样都不能马虎。在项目实施期间,数据库工程师往往是后出场的角色,前面有系统工程师安装好操作系统,安装所需的包,调通网络。存储工程师划分好磁盘柜,安装多路径软件,接下来才能开始安装Oracle数据库。有些必要的包最好在安装前和其他工程师沟通好,按照版本要求安装,以免在安装Oracle数据库时发现缺东少西的十分麻烦。

 

AIX的操作系统无法再虚拟机下安装,没接触过AIX操作系统的同学会感觉陌生。其实和Linux相比安装方法是大同小异,或者说没有差异,只是在前期的配置有些不同,具体细节在下文中会有所体现。                                                                                                                

系统配置

1号机主机名 cjscora01
2号机主机名 cjscora02
1号机IP及虚拟IP 10.157.140.1  10.157.140.3
2号机IP及虚拟IP 10.157.140.2  10.157.140.4
SCAN IP 10.157.140.5

数据库安装配置
  


 


ORACLE_BASE


grid: /oracle/app/grid

oracle:/oracle/app/oracle


ORACLE_HOME 


grid: /oracle/app/11.2.0/grid

oracle: /oracle/app/oracle/11.2.0/db


ORACLE_SERVICE_NAME


eicdb


数据文件路径


+DATA


Oracle管理员帐户口令


oracle


数据库组件


全选


标准数据库功能


全选


初始化参数:

  Memory size


 

160G


数据库参数:

   db_block_size

   character set(字符集)


 

8k

ZHS16GBK


是否使用归档方式运行数据库



如果使用归档方式运行数据库,归档路径位置


+ARCH

安装过程

一、每个节点的硬件要求:

1、内存:至少4GB。此次实施的服务器为IBM780,内存配置为192GB

#/usr/sbin/lsattr –E –l sys0 –a realmem

MemTotal:     201326592 kB

 

2、交换分区:分配24GB

#/usr/sbin/lsps -a

SwapTotal:   25165824 kB

 

注意:所有节点的CPU主频、内存大小应该大致相当,这样当在做节点间切换时,两个节点的处理能力不会有较大差异。本次项目项目采用的服务器为IBM780,内存192GB,32颗CPU,配置比较不错。

二、操作系统要求:

1、系统包要求

AIX 6.1 required packages:
bos.adt.base
bos.adt.lib
bos.adt.libm
bos.perf.libperfstat 6.1.2.1 or later
bos.perf.perfstat
bos.perf.proctools
rsct.basic.rte (For RAC configurations only)
rsct.compat.clients.rte (For RAC configurations only)
xlC.aix61.rte:10.1.0.0 or later
gpfs.base 3.2.1.8 or later (Only for RAC)

 

APARs for AIX 6.1:
IZ41855
IZ51456
IZ52319
IZ97457
IZ89165

 

注意:为了通过SSH在两个节点间建立对等关系,需要在每个节点上安装以下软件。

.bash

.openssl

.openssh

2、tmp分区

[root@db1 /]# df –k

至少1GB

 

3、系统版本

[root@db1 /]# oslevel -s

6100-05-11-1140

 

注意:首选的操作系统版本一定是最稳定的而不一定是最新的。本次操作系统采用了比较保守的6100-05-11-1140

,本次安装系统的IBM工程师经验丰富,推荐我们采用了这个版本。

 

4、系统内核参数

smitty chgsys

Maximum number of processes available to a single user    [16384]

 

注意:该参数的默认值偏小,在高并发的生产环境下,session数和process数都比较高,在图形安装页面时如果只是把process调高而相对应的该参数没有及时调整会报出一个警告。

5、建用户和组,配置环境变量

mkgroup -'A' id='1000' adms='root' oinstall

mkgroup -'A' id='1020' adms='root' asmadmin

mkgroup -'A' id='1021' adms='root' asmdba

mkgroup -'A' id='1022' adms='root' asmoper

mkgroup -'A' id='1031' adms='root' dba

mkgroup -'A' id='1032' adms='root' oper

 

mkuser id='1001' pgrp='oinstall' groups='dba,asmdba,asmadmin,oper'
home='/home/oracle' oracle

mkuser id='1002' pgrp='oinstall'
groups='asmadmin,asmdba,asmoper,oper,dba' home='/home/grid' grid

passwd grid

passwd oracle

 

分别用grid和oracle用户登陆一次,修改密码。

 

给grid、oracle用户授权

检查权限

# /usr/bin/lsuser -a capabilities grid

/usr/bin/lsuser -a capabilities oracle

授权命令如下:

/usr/bin/chuser
capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE grid

/usr/bin/chuser capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE
oracle

 

6、Grid用户环境变量设置如下:

节点1

umask 022

TMP=/tmp; export TMP

TMPDIR=$TMP; export TMPDIR

ORACLE_SID=+ASM1; export ORACLE_SID

ORACLE_BASE=/oracle/app/grid; export ORACLE_BASE

ORACLE_HOME=/oracle/app/11.2.0/grid; export
ORACLE_HOME

PATH=$ORACLE_HOME/bin:$PATH; export PATH

 

节点2

umask 022

TMP=/tmp; export TMP

TMPDIR=$TMP; export TMPDIR

ORACLE_SID=+ASM2; export ORACLE_SID

ORACLE_BASE=/oracle/app/grid; export ORACLE_BASE

ORACLE_HOME=/oracle/grid; export ORACLE_HOME

PATH=$ORACLE_HOME/bin:$PATH; export PATH

 

7、Oracle用户环境变量设置如下:

节点1

umask 022

TMP=/tmp; export TMP

TMPDIR=$TMP; export TMPDIR

ORACLE_BASE=/oracle/app/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/11.2.0/db; export
ORACLE_HOME

ORACLE_SID= oradb1; export ORACLE_SID

ORACLE_TERM=xterm; export ORACLE_TERM

PATH=/usr/sbin:$PATH; export PATH

PATH=$ORACLE_HOME/bin:$PATH; export PATH

 

节点2

umask 022

TMP=/tmp; export TMP

TMPDIR=$TMP; export TMPDIR

ORACLE_BASE=/oracle/app/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/11.2.0/db; export
ORACLE_HOME

ORACLE_SID= oradb2; export ORACLE_SID

ORACLE_TERM=xterm; export ORACLE_TERM

PATH=/usr/sbin:$PATH; export PATH

PATH=$ORACLE_HOME/bin:$PATH; export PATH

 

8、设置shell限制

vi /etc/security/limits.conf

文件中加入

default:

       fsize = -1

       core = 2097151

       cpu = -1

       data = -1

       rss = -1

       stack = -1

       nofiles = -1

       stack_hard = -1

 

grid :

       core = -1

oracle :

       core = -1

 

注意:针对grid用户和oracle用户,需要分别设置它们在SHELL中对资源的使用情况,如对CPU、内存、数据段等。为了保证数据库能够运行,需要这些资源的限制取消,也就是-1,或者设置为Oracle推荐的值。

9、检查Core File Creation是否启用

用如下命令检查是否enable

lsattr -El sys0 -a fullcore

fullcore false Enable full CORE dump True

 

1. Set the ulimit setting for core dumps to unlimited:

# ulimit -c unlimited

2. Set the ulimit setting for core files to unlimited:

# ulimit -f unlimited

10、创建相应目录

# mkdir -p /oracle/app/oracle/11.2.0/db

# mkdir -p /oracle/app/grid/

# mkdir -p /oracle/grid

# mkdir -p /oracle/app/oraInventory

# chown -R oracle:oinstall /oracle/app/oracle

# chown -R grid:oinstall /oracle/grid

# chown -R grid:oinstall /oracle/app/grid

# chown -R grid:oinstall /oracle/app/oraInventory

# chmod -R 775 /oracle/

 

11、删除ntp服务,使用oracle时间同步器

# stopsrc -s xntpd

# mv /etc/ntp.conf /etc/ntp.conf.org

注意:RAC集群在运行的过程中要求各节点的时钟进行同步。常用的同步方法有两种,一种是利用操作系统提供的NTP服务;另一种是用Oracle提供的集群时间同步软件。此次项目采用第二种方式。为了避免冲突,将/etc/ntp.conf文件改名,使其失效。

12、网络参数调整

检查参数

 /usr/sbin/no -a | fgrep
ephemeral

tcp_ephemeral_low = 32768

tcp_ephemeral_high = 65535

udp_ephemeral_low = 32768

udp_ephemeral_high = 65535

 

修改参数如下

/usr/sbin/no -p -o tcp_ephemeral_low=9000 -o
tcp_ephemeral_high=65500

/usr/sbin/no -p -o udp_ephemeral_low=9000 -o
udp_ephemeral_high=65500

 

13、其他参数调整

检查系统知否运行在compatibility mode

lsattr -E -l sys0 -a pre520tune

 

如果返回 pre520tune enable Pre-520 tuning compatibility mode True

则系统运行在compatibility mode

 

修改参数方法如下:

# no -o parameter_name=value

 

在/etc/rc.net文件中添加

if [ -f /usr/sbin/no ] ; then

/usr/sbin/no -o udp_sendspace=65536

/usr/sbin/no -o udp_recvspace=655360

/usr/sbin/no -o tcp_sendspace=65536

/usr/sbin/no -o tcp_recvspace=65536

/usr/sbin/no -o rfc1323=1

/usr/sbin/no -o sb_max=4194304

/usr/sbin/no -o ipqmaxlen=512

fi

 

如果上述命令的执行结果为:

pre520tune disable Pre-520 tuning compatibility mode True,系统未运行在compatibility mode

修改参数方法如下:

 

/usr/sbin/no -r -o ipqmaxlen=512

/usr/sbin/no -p -o rfc1323=1

/usr/sbin/no -p -o sb_max=4194304

/usr/sbin/no -p -o tcp_recvspace=65536

/usr/sbin/no -p -o tcp_sendspace=65536

/usr/sbin/no -p -o udp_recvspace=655360

/usr/sbin/no -p -o udp_sendspace=65536

 

三、配置节点间互信关系

1、修改/etc/hosts加入下面内容:

vi /etc/hosts

127.0.0.1              
loopback localhost      # loopback
(lo0) name/address

10.157.140.1      cjscora01

10.157.140.3      cjscora01-vip

192.168.150.1     cjscora01-priv

10.157.140.2      cjscora02

10.157.140.4      cjscora02-vip

192.168.150.2     cjscora02-priv

10.157.140.5      cjscora-scan

 

2、配置用户等效性

这部分操作是传统的做法,在oracle11g R2版本后我们可以省去这部分手工操作,在图形化安装集群软件的过程中配置,只需点点鼠标就可完成所有的工作。

配置grid用户等效性

在节点一执行下命令:

$ mkdir ~/.ssh

$ chmod 700 ~/.ssh

 

$ /usr/bin/ssh-keygen -t rsa

$ /usr/bin/ssh-keygen -t dsa

 

$ touch ~/.ssh/authorized_keys

 

$ ssh cjscora01 cat /home/grid/.ssh/id_rsa.pub >>
authorized_keys

$ ssh cjscora01 cat /home/grid/.ssh/id_dsa.pub >>
authorized_keys

$ ssh cjscora02 cat /home/grid/.ssh/id_rsa.pub >>
authorized_keys

$ ssh cjscora02 cat /home/grid/.ssh/id_dsa.pub >>
authorized_keys

 

$chmod 600 ~/.ssh/authorized_keys

 

$ exec /usr/bin/ssh-agent $SHELL

$ /usr/bin/ssh-add

 

$ scp authorized_keys cjscora02:/home/grid/.ssh     --将grid密钥拷贝到节点二

 

$ ssh cjscora01 date

$ ssh cjscora02 date

$ ssh cjscora01-priv date

$ ssh cjscora02-priv date

 

 配置oracle用户等效性

在节点一执行下面命令创建oracle密钥:

$
mkdir ~/.ssh

$
chmod 700 ~/.ssh

 

$
/usr/bin/ssh-keygen -t rsa

$
/usr/bin/ssh-keygen -t dsa

 

$
touch ~/.ssh/authorized_keys

 

$
ssh cjscora01 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys

$
ssh cjscora01 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys

$
ssh cjscora02 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys

$
ssh cjscora02 cat /home/oracle/.ssh/id_dsa.pub >> authorized_keys

 

$chmod
600 ~/.ssh/authorized_keys

 

$
exec /usr/bin/ssh-agent $SHELL

$
/usr/bin/ssh-add

 

$
scp authorized_keys cjscora02:/home/oracle/.ssh      --将oracle密钥拷贝到节点二

 

$
ssh cjscora01 date

$
ssh cjscora02 date

$ ssh cjscora01-priv date

$ ssh cjscora02-priv date

 

四、配置ASM磁盘         

--须通过下面的步骤确认磁盘可用且一致,两节点都执行

1、检查磁盘数量

/usr/sbin/lspv
| grep -i none

 

hdisk4          none                                None                                

hdisk5          none                                None                               

hdisk6          none                                None                               

hdisk7          none                                None                                

……

hdisk315        none                                None

 

2、给磁盘分配pv id

外部存储设备中的同一块硬盘在不同节点上的名称可能会不同。同一个硬盘在节点一中的名称可能是hdisk4,在节点二中的名称可能是hdisk5.虽然ASM实例能正确识别这样的硬盘,但对于管理员来说可能会产生歧义。不管怎样,这块硬盘有一个不变的属性是PVID,无论在节点一还是节点二下都是一样的。通过下面的命令可以产生硬盘的PVID

chdev
-l hdisk4  -a pv=yes 

chdev
-l hdisk5  -a pv=yes 

chdev
-l hdisk6  -a pv=yes 

chdev
-l hdisk7  -a pv=yes 

……

chdev
-l hdisk100 -a pv=yes

 

3、检查pv id是否在两个节点间一一对应

cjscora01#lspv

hdisk4          00f76fa9f361157b                    None                                

hdisk5          00f76fa9f36116a5                    None                               

hdisk6          00f76fa9f36117d0                    None                               

hdisk7          00f76fa9f3611901                    None                                

……

hdisk315         00f76fb4f3612dce                    None 

 

cjscora02# lspv

hdisk4          00f76fa9f361157b                    None                               

hdisk5          00f76fa9f36116a5                    None                                

hdisk6          00f76fa9f36117d0                    None                               

hdisk7          00f76fa9f3611901                    None                               

……

Hdisk315        00f76fb4f3612dce                    None 

 

4、修改磁盘权限

本项目使用ASM,需要指定ASM磁盘中所要包含的磁盘,并保证grid用户有对这些磁盘的写权限

#
chown grid:asmadmin /dev/rhdiskn       --修改磁盘属组命令示例

       

chown
grid:asmadmin /dev/rhdisk4        

chown
grid:asmadmin /dev/rhdisk5        

chown
grid:asmadmin /dev/rhdisk6        

chown
grid:asmadmin /dev/rhdisk7        

……

chown
grid:asmadmin /dev/rhdisk315 

 

#
chmod 660 /dev/rhdiskn                 
--修改磁盘权限命令示例

 

chmod
660 /dev/rhdisk4

chmod
660 /dev/rhdisk5

chmod
660 /dev/rhdisk6

chmod
660 /dev/rhdisk7

……

chmod
660 /dev/rhdisk315

 

5、检查磁盘属性

有些型号的存储设别具有reserve_lock或者reserve_policy属性,这两个属性的存在会阻止多个节点对存储设备进行并行读写,所以在安装集群软件之前应该对其属性进行修改。

lsattr
-E -l hdisk4  |grep reserve_

lsattr
-E -l hdisk5  |grep reserve_

lsattr
-E -l hdisk6  |grep reserve_

lsattr
-E -l hdisk7  |grep reserve_

……

lsattr
-E -l hdisk315 |grep reserve_

 

6、设置磁盘属性为reserve_lock=no或reserve_policy=no_reserve

chdev
-l hdiskn -a [ reserve_lock=no | reserve_policy=no_reserve ]

 

chdev
-l hdisk4 –a reserve_policy=no_reserve

chdev
-l hdisk5 –a reserve_policy=no_reserve

chdev
-l hdisk6 –a reserve_policy=no_reserve

chdev
-l hdisk7 –a reserve_policy=no_reserve

……

chdev
-l hdisk100–a reserve_policy=no_reserve

 

7、清除磁盘pvid

通过PVID可以在不同节点中对比、确认同一块硬盘,但是在安装集群软件之前应该在每个节点上将PVID清除掉,否则在安装过程中可能会出现错误。

chdev
-l hdisk4  -a pv=clear 

时间: 2024-09-20 05:35:52

AIX 6.1 Oracle11g 11.2.0.4 RAC 安装心得的相关文章

Oracle 11.2.0.4 RAC Database for Windows 2012安装DB时收到[INS-35423]错误

    这是同事遇到的问题,在这里做个标记,希望对大家有所帮助. 一.问题描述. 操作系统:Microsoft Windows x64 (64-bit) 2012数据库版本:Oracle11g 11.2.0.4 经查询,11.2.0.4在windows2012上通过了验证.Grid安装成功,crs_stat -t 查看相关资源都是online,状态正常安装DB软件时,第4步,选择安装集群数据库时出现报错: [INS-35423] 安装程序检测到 Oracle Clusterware 未在本地节点

Oracle11g 11.2.0.3升级失败后如何回退

升级环境: 1. 11.2.0.1 to RAC 11.2.0.2RAC 2.RAC 11.2.0.1 to RAC 11.2.0.3 3.RAC 11.2.0.2 to RAC 11.2.0.3 以上DB软件均是通过out-of-place upgrade方法升级. 如果在升级完成后,发现升级过程有问题,需要回退,我们可以选择两种回退办法: 1. 通过闪回的办法还原到11.2.0.1 /11.2.0.3的数据库 2. 执行catdwgrd.sql 降级数据字典数据库 以下我们介绍通过闪回数据库

oracle数据库11.2.0.4 RAC CRS diskgroup auto dismount问题

这几天出差到甘肃,某客户的集群有点小问题.其中节点的crs检测发现有点异常,不过怪异的是业务却没有受到任何影响.如下是我检测的结果: [grid@tysy1 bin]$ ocrcheck PROT-602: Failed to retrieve data from the cluster registry PROC-26: Error while accessing the physical storage   [grid@tysy1 bin]$ crsctl query css votedis

oracle 11.2.0.4 RAC CRS diskgroup auto dismount问题

这几天出差到甘肃,某客户的集群有点小问题.其中节点的crs检测发现有点异常,不过怪异的是业务却没有受到任何影响.如下是我检测的结果: [grid@tysy1 bin]$ ocrcheck PROT-602: Failed to retrieve data from the cluster registry PROC-26: Error while accessing the physical storage   [grid@tysy1 bin]$ crsctl query css votedis

ORACLE 11.2.0.4静默安装

今天一个朋友叫安装ORACLE数据库不提供桌面,哎没办法只有静默了. 下面记录一下静默的流程,很久没有手动建库了,上次还是考OCM的时候 1.安装数据库软件 oracle.install.responseFileVersion=oracle/install/rspfmt_dbinstall_response_schema_v11_2_0 oracle.install.option=INSTALL_DB_SWONLY   ORACLE_HOSTNAME=localhost  UNIX_GROUP_

oracle 11.2.0.4 rac for rhel 6.8 installation

                                                                                      >               >>            >>       >>                                                                >><<  >><<        

oracle 9i/10g/11g(11.2.0.3)安装包和PATCH下载地址汇总

今天上PUB看见一位热心人汇总了这么个地址列表,转发来空间: 把下面的地址复制到讯雷里就可以下载. ---------------------------------------------------------------------------------------------------ORACLE 9i Oracle9i Database Release 2 Enterprise/Standard/Personal Edition for Windows NT/2000/XPhttp

Oracle Database RAC 11.2.0.3 for AIX6.1TL7安装记录(3)

        下面是再一次安装Oracle 11.2.0.3 RAC Database for  AIX6.1 TL7遇到问题的记录,之前还有两篇记录文章: <Oracle Database RAC 11.2.0.3 for AIX6.1TL7安装记录(1)>:http://space.itpub.net/23135684/viewspace-733990 <Oracle Database RAC 11.2.0.3 for AIX6.1TL7安装记录(2)>:http://spa

Oracle Database RAC 11.2.0.3 for AIX6.1TL7安装记录(4)

    该方案是利用AIX LVM和IBM HACMP软件创建并行的LV镜像作为OCR.Votedisk的第3张盘,实践证明这种方案是不可行的!服务器一旦断电,可能导致LV镜像磁盘与其它两个磁盘的数据不同步,Clusterware无法正常的启动.原因在于在系统层面利用LVM做的软数据镜像的块大小为512KB,而OCR和Votedisk磁盘的块大小为1MB(默认AU=1M),且OCR和Votedisk磁盘使用的都是字符设备,不走缓存,所以在某一时间点,Oracle自身维护的两个磁盘和利用操作系统L