当前位置:Gxlcms > 数据库问题 > 在IBM AIX上安装Oracle RAC ,很多人都在找的东东.....

在IBM AIX上安装Oracle RAC ,很多人都在找的东东.....

时间:2021-07-01 10:21:17 帮助过:10人阅读


目的
    此文档向读者提供如何安装一个群集,安装RAC,并在IBM AIX HACMP/ES (CRM) 4.4.x上启动一个群集数据库的手把手指导手册,对于关于任何这些步骤的其它解释或信息,请参考文档结尾列出的参考手册。

 

1. 配置群集硬件
1.1 最小硬件列表/系统要求  
1.1.1 硬件
1.1.2 软件
1.1.3 补丁
1.2 安装磁盘阵列
1.3 安装群集内联和外联的网络硬件  
2. 创建一个群集
2.1 HACMP/ES 软件安装
2.2 配置群集拓扑
2.3 同步群集拓扑
2.4 配置群集资源
2.4.1 在一个节点上创建并行共享的卷组

2.4.2 创建共享的RAW逻辑卷  
2.4.3 在其它节点上导入卷组
2.4.4 添加并行群集资源组  
2.4.5 配置并行群集资源组
2.4.6 创建平行文件系统 (GPFS)
2.5 同步群集资源
2.6 添加节点到群集里  
2.7 基本的群集管理
3. 准备安装RAC
3.1 配置共享磁盘和UNIX预安装任务
3.2.1 配置共享磁盘
3.2.2 UNIX预安装任务
3.2 使用OUI安装RAC
3.3 使用ODCA创建一个RAC数据库
4. 管理RAC实例  
5. 参考手册

1. 配置群集硬件
1.1 最小硬件列表/系统要求

对于一个两节点的群集,下面是推荐的最小硬件列表。检查RAC/IBM AIX 认证矩阵,获取当前支持RAC的最新硬件/软件。

  
1.1.1 硬件
    ●IBM服务器 – 两个可以运行AIX 4.3.3 或5L 64位的IBM服务器
    ●对于IBM或第三方存储产品,群集内联,外联网络,交换机选件,内存,交换分区&CPU的要求,参考操作系统供应商和硬件供应商。
    ●内存,交换分区&CPU要求
    ●每个服务器必须有至少512M内存,至少1G交换分区或两倍于物理内存或更多。

要确定使用的系统内存: $ /usr/sbin/lsattr -E -l sys0 -a realmem
    要确定使用的交换分区: $ /usr/sbin/lsps -a
    ●需要64位的处理器。


1.1.2 软件
    ●当使用IBM AIX 4.3.3时:
    ◆HACMP/ES CRM 4.4.x
    ◆只有裸逻辑卷支持数据库文件
    ◆Oracle服务器企业版 9.0.1 或 9.2.0


    ●当使用IBM AIX 5.1 (5L)时:
    对于驻留在裸逻辑卷的数据库文件:  
    ◆HACMP/ES CRM 4.4.x
    对于驻留在 GPFS上的数据库文件:
    ◆HACMP/ES 4.4.x (不需要HACMP/CRM )
    ◆GPFS 1.5


    ◆IBM补丁PTF12和IBM补丁IY34917或 IBM 补丁 PTF13
    ◆Oracle服务器企业版9.2.0
    ◆Oracle Server Enterprise Edition 9i for AIX 4.3.3 和5L在单独的CD包里,并且包括RAC。


1.1.3 补丁
    IBM群集节点可能需要以下方面的补丁:
    ●IBM AIX操作系统环境补丁
    ●存储固件补丁或微码升级

    补丁注意事项:
    ●确保所有的群集节点有相同的补丁级别
    ●不要在没有资格人员的帮助时,安装任何跟固件相关的补丁 
    ●总是获取最新的补丁信息
    ●仔细阅读所有补丁的README版本说明
    ●对于需要的操作系统补丁列表,检查Note:211537.1 ,并联系IBM公司,获取额外的补丁要求。


    使用以下命令查看当前已安装的补丁:  
    % /usr/sbin/instfix -i

   
验证一个特定补丁的安装:

    % /usr/sbin/instfix -ivk
   
例如:
    % /usr/sbin/instfix -ivk IY30927


1.2 安装磁盘阵列
    在安装IBM AIX操作系统环境和HACMP软件之前,结合HACMP for AIX安装手册和服务器硬件安装手册,初始化安装磁盘箱或阵列。


1.3安装群集互连和公共网络硬件  
    群集互连和公共网络接口不需要在安装HACMP之前配置,但必须在配置群集之前被配置并可用。
    ●如果还没有被安装,那么先安装主机适配卡HBA到群集节点上,安装过程,参考相关文档。
    ●多于2个节点的群集需要2个群集传输连接器,这些传输连接器是基于以太网的交换机,在你安装了其它硬件之后,你可以安装群集软件和配置互连网络。

2. 创建一个群集
2.1 IBM HACMP/ES软件安装
    HACMP/ES 4.X.X安装和配置过程通过几个主要步骤完成。一般过程为:
    ●安装硬件
    ●安装IBM AIX操作系统软件
    ●安装最新的IBM AIX维护级别和需要的补丁  
    ●在每个节点上安装HACMP/ES 4.X.X
    ●安装HACMP/ES需要的补丁  
    ●配置群集拓扑  
    ●同步群集拓扑
    ●配置群集资源
    ●同步群集资源
    根据HACMP for AIX 4.X.X 安装指南获取安装需要的HACMP包的详细的指导说明。需要的/建议的软件包,包括下面这些:
    ●cluster.adt.es.client.demos
    ●cluster.adt.es.client.include
    ●cluster.adt.es.server.demos
    ●cluster.clvm.rte HACMP for AIX Concurrent
    ●cluster.cspoc.cmds HACMP CSPOC commands
    ●cluster.cspoc.dsh HACMP CSPOC dsh and perl
    ●cluster.cspoc.rte HACMP CSPOC Runtime Commands
    ●cluster.es.client.lib ES Client Libraries
    ●cluster.es.client.rte ES Client Runtime
    ●cluster.es.client.utils ES Client Utilities
    ●cluster.es.clvm.rte ES for AIX Concurrent Access
    ●cluster.es.cspoc.cmds ES CSPOC Commands>
    ●cluster.es.cspoc.dsh ES CSPOC dsh and perl
    ●cluster.es.cspoc.rte ES CSPOC Runtime Commands
    ●cluster.es.hc.rte ES HC Daemon
    ●cluster.es.server.diag ES Server Diags
    ●cluster.es.server.events ES Server Events
    ●cluster.es.server.rte ES Base Server Runtime
    ●cluster.es.server.utils ES Server Utilities
    ●cluster.hc.rte HACMP HC Daemon
    ●cluster.msg.En_US.cspoc HACMP CSPOC Messages - U.S.
    ●cluster.msg.en_US.cspoc HACMP CSPOC Messages - U.S.
    ●cluster.msg.en_US.es.client
    ●cluster.msg.en_US.es.server
    ●cluster.msg.en_US.haview HACMP HAView Messages - U.S.
    ●cluster.vsm.es ES VSM Configuration Utility
    ●cluster.clvm.rte HACMP for AIX Concurrent
    ●cluster.es.client.rte ES Client Runtime
    ●cluster.es.clvm.rte ES for AIX Concurrent Access
    ●cluster.es.hc.rte ES HC Daemon
    ●cluster.es.server.events ES Server Events
    ●cluster.es.server.rte ES Base Server Runtime
    ●cluster.es.server.utils ES Server Utilities
    ●cluster.hc.rte HACMP HC Daemon
    ●cluster.man.en_US.client.data
    ●cluster.man.en_US.cspoc.data
    ●cluster.man.en_US.es.data ES Man Pages - U.S. English
    ●cluster.man.en_US.server.data
    ●rsct.basic.hacmp RS/6000 Cluster Technology
    ●rsct.basic.rte RS/6000 Cluster Technology
    ●rsct.basic.sp RS/6000 Cluster Technology
    ●rsct.clients.hacmp RS/6000 Cluster Technology
    ●rsct.clients.rte RS/6000 Cluster Technology
    ●rsct.clients.sp RS/6000 Cluster Technology
    ●rsct.basic.rte RS/6000 Cluster Technology


    你可以使用clverify命令来验证安装的HACMP软件。
    # /usr/sbin/cluster/diag/clverify
   
在 clverify> 提示符下,输入 software

然后在 clverify.software> 提示符下,输入 lpp

你应该看到类似于如下的信息:

Checking AIX files for HACMP for AIX-specific modifications...
    */etc/inittab not configured for HACMP for AIX.
    If IP Address Takeover is configured, or the Cluster Manager is to be started on boot, then /etc/inittab must contain the proper HACMP for AIX entries.
    Command completed.
    --------- Hit Return To Continue ---------
 
2.2
配置群集拓扑
    使用如下命令:
    # smit hacmp
   
注意:下面只是一个通用的HACMP配置的例子,参看HACMP安装和规划文档获取特定例子,此配置不包括 IP takeover network的例子, smit 快速路径正被用于导航到 smit hacmp 配置菜单,每一个配置屏幕都从 smit hacmp 获取,所有的配置从一个节点进行,然后同步到参与群集的其它节点。  

2.2.1添加群集定义:

Smit HACMP -> Cluster Configuration -> Cluster Topology -> Configure Cluster -> Add a Cluster Definintion
    快速路径:
    # smit cm_config_cluster.add     

Add a Cluster Definition

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

**NOTE: Cluster Manager MUST BE RESTARTED in order for changes to be acknowledged.**

* Cluster ID                                    [0]

* Cluster Name                                  [cluster1]

 

“Cluster ID” 和“Cluster Name”可以是任意的,“Cluster ID”必须是0-9999之间的有效数字,“Cluster Name”可以是任何最多32个字母的字符串。

2.2.2配置节点:

Smit HACMP -> Cluster Configuration -> Cluster Topology -> Configure Nodes -> Add Cluster Nodes
    快速路径:
    # smit cm_config_nodes.add

Add Cluster Nodes

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

*Node Names                                   [node1 node2]

 

“Node Names”应该是节点的主机名,它们必须是字母数字,且不多于32个字符。所有参与的节点必须在此输入,并用空格隔开 。

2.2.3添加网络适配器

此例在每个节点上使用2个以太网卡,并用一个RS232串口作为心跳连接:  

节点名称

IP地址

IP标签

类型

node1

192.168.0.1

node1srvc

service

192.168.1.1

node1stby

standby

/dev/tty0

serial

心跳

node2

192.168.0.2

node2srvc

service

192.168.1.2

node2stby

standby

/dev/tty0

 

serial

 

配置网络适配器:

Smit HACMP -> Cluster Configuration -> Cluster Topology -> Configure Nodes -> Add an Adapter
    快速路径:
    # smit cm_confg_adapters.add

Add an Adapter

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

* Adapter IP Label                            [node1srvc]

* Network Type                                [ether]             +

* Network Name                                [ipa]               +

* Network Attribute                           public              +

* Adapter Function                            service             +

Adapter Identifier                          []

Adapter Hardware Address                    []

Node Name                                   [node1]             +

 

注意“Adapter IP Label” 必须匹配“/etc/hosts”文件,否则适配卡不能映射到有效的IP地址,群集不能被同步,“Network Name”是网络配置的任意名称,在此配置里的适配卡必须有相同的 “Network Name”,此名称被用于在适配卡失败时,决定哪些适配卡被使用。

Add an Adapter

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

* Adapter IP Label                            [node1stby]

* Network Type                                [ether]             +

* Network Name                                [ipa]               +

* Network Attribute                           public              +

* Adapter Function                            standby             +

Adapter Identifier                          []

Adapter Hardware Address                    []

Node Name                                   [node1]             +

 

Add an Adapter

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

* Adapter IP Label                            [node2srvc]

* Network Type                                [ether]             +

* Network Name                                [ipa]               +

* Network Attribute                           public              +

* Adapter Function                            service             +

Adapter Identifier                          []

Adapter Hardware Address                    []

Node Name                                   [node2]             +

Add an Adapter

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

* Adapter IP Label                            [node2stby]

* Network Type                                [ether]             +

* Network Name                                [ipa]               +

* Network Attribute                           public              +

* Adapter Function                            standby             +

Adapter Identifier                          []

Adapter Hardware Address                    []

Node Name                                   [node2]             +

下面是串口配置:

Add an Adapter

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

* Adapter IP Label                            [node1_tty]

* Network Type                                [rs232]             +

* Network Name                                [serial]            +

* Network Attribute                           serial              +

* Adapter Function                            service             +

Adapter Identifier                          [/dev/tty0]

Adapter Hardware Address                    []

Node Name                                   [node1]             +

 

 

 

Add an Adapter

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

* Adapter IP Label                             [node2_tty]

* Network Type                                 [rs232]            +

* Network Name                                 [serial]           +

* Network Attribute                            serial             +

* Adapter Function                             service            +

Adapter Identifier                           [/dev/tty0]

Adapter Hardware Address                     []

Node Name                                    [node2]            +


因为这跟以太网卡不同,所以 “Network Name”也不同。


使用“smit mktty” 配置RS232适配器:
# smit mktty

Add a TTY

Type or select values in entry fields.Press Enter AFTER making all desired changes.  

[TOP]                                         [Entry Fields]

TTY type                                       tty

TTY interface                                  rs232

Description                                    Asynchronous

Terminal Parent adapter                        sa0

* PORT number                                    [0]             +

Enable LOGIN                                   disable         +

BAUD rate                                      [9600]          +

PARITY                                         [none]          +

BITS per character                             [8]             +

Number of STOP BITS                            [1]             +

TIME before advancing to next port setting     [0]             +#

TERMINAL type                                  [dumb]

FLOW CONTROL to be used                        [xon]           +

[MORE...31]

 

确保“Enable LOGIN”被设置为默认的“disable”,“PORT number” 是在 /dev/tt# 里使用的“#” ,因此,如果你定义为“0” ,那么将是“/dev/tty0”设备。

2.3 同步群集拓扑
    群集拓扑在配置之后,需要被同步,同步执行拓扑的完整性检查,然后被推送到群集配置里的每个节点,配置同步,需要是root用户,有几个方法可以做到:

其中一个方法就是在每个节点的根目录创建一个.rhosts 文件。

一个.rhosts的例子文件:

node1 root

node2 root

确保/.rhosts文件的权限为600。

# chmod 600 /.rhosts

使用远程命令rcp等来测试配置是否正确:
从节点1:
# rcp /etc/group node2:/tmp
从节点2:
# rcp /etc/group node1:/tmp

 

同步群集拓扑:

Smit HACMP -> Cluster Configuration -> Cluster Topology -> Synchronize Cluster Topology
    快速路径:
    # smit configchk.dialog

Synchronize Cluster Topology

Type or select values in entry fields.Press Enter AFTER making all desired changes.

                                       [Entry Fields]

Ignore Cluster Verification Errors?          [No]             +

* Emulate or Actual?                           [Actual]         +

 

注意:只有本地节点的默认配置文件保留你的更改,用于拓扑仿真,当你运行仿真之后,要还原到原始配置,运行SMIT命令,“Restore System Default Configuration from Active Configuration”,我们推荐你在运行仿真之前,做一个快照。 只是为了防止在仿真过程中发生不能控制的群集事件,如果在此节点上激活了群集管理器,同步群集拓扑将引起在同步成功完成之后,群集管理器的任何更改将立即生效。


2.4 配置群集资源
    在一个RAC配置里,只需要一个资源组。此资源组是一个用于共享卷组的并行资源组,下面是为共享卷组添加一个并行资源组的过程:

首先需要一个在节点间共享的卷组,相同群集数据库的两个实例并行访问相同的外部磁盘,这是真正的并行访问,与VSD环境里的共享不一样。因为几个实例同时访问相同的文件和数据,locks必须被管理,这些locks在CLVM层,由HACMP管理。
    1) 检查目标磁盘是否物理连接到群集的节点,并可以被节点所看到。在两个节点上输入lspv命令。  
    注意:hdisk号码可以不一样,依赖于其它节点的磁盘配置,使用lspv的第二个输出字段(Pvid),确保从两个主机处理相同的物理磁盘。尽管hdisk号码不连续可能不是问题,但IBM建议使用“鬼”盘来确保在节点间匹配hdisk号码。

2.4.1 在一个节点上创建要共享的并行卷组
# smit vg
选择 Add a Volume Group

Add a Volume Group

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

VOLUME GROUP name                                      [oracle_vg]

Physical partition SIZE in megabytes                   32       +

* PHYSICAL VOLUME names                                  [hdisk5] +

Activate volume group AUTOMATICALLY at system restart? no       +

Volume Group MAJOR NUMBER                              [57]     +

Create VG Concurrent Capable?                          yes      +

Auto-varyon in Concurrent Mode?                        no       +


   “PHYSICAL VOLUME names”必须是在节点间共享的物理磁盘,我们不要在系统启动时,自动激活卷组,因为由HACMP来激活。并且“Auto-varyon in Concurrent Mode?” 应该被设置为“no” ,因为由HACMP 以并行模式加载它。你必须选择 “major number”,确保卷组在所有节点有相同的“major number”(注意:在选择此号码之前,你必须确保它在所有节点都是空闲的)。检查所有定义的major number,输入:
    % ls ?al /dev/*
    crw-rw---- 1 root system 57, 0 Aug 02 13:39 /dev/oracle_vg
    oracle_vg
卷组的major number是57。

确保57在所有其它节点上可用,并且没有被其它设备使用。
在此卷组上,创建你需要的所有逻辑卷和文件系统。


2.4.2 如果没有使用GPFS那么创建共享的裸逻辑卷:
mklv -y‘db_name_cntrl1_110m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5
mklv -y‘db_name_cntrl2_110m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5
mklv -y‘db_name_system_400m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 13 hdisk5
mklv -y‘db_name_users_120m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5
mklv -y‘db_name_drsys_90m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 3 hdisk5
mklv -y‘db_name_tools_12m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 1 hdisk5
mklv -y‘db_name_temp_100m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5
mklv -y‘db_name_undotbs1_312m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 10 hdisk5
mklv -y‘db_name_undotbs2_312m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 10 hdisk5
mklv -y‘db_name_log11_120m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5
mklv -y‘db_name_log12_120m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5
mklv -y‘db_name_log21_120m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5
mklv -y‘db_name_log22_120m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5
mklv -y‘db_name_indx_70m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 3 hdisk5
mklv -y‘db_name_cwmlite_100m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5
mklv -y‘db_name_example_160m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 5 hdisk5
mklv -y‘db_name_oemrepo_20m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 1 hdisk5
mklv -y‘db_name_spfile_5m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 1 hdisk5
mklv -y‘db_name_srvmconf_100m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5

用你实际的数据库名来替换“db_name” ,当卷组创建时使用32兆字节的分区时,那么第7个字段是构成文件的分区数量,因此例如:如果“db_name_cntrl1_110m”需要110兆字节,那么我们需要4个分区。
裸分区被创建在“/dev”目录里,它被作为字符设备使用,

   “mklv -y‘db_name_cntrl1_110m‘ -w‘n‘ -s‘n‘ -r‘n‘ usupport_vg 4 hdisk5” 创建2个文件:
    /dev/db_name_cntrl1_110m
    /dev/rdb_name_cntrl1_110m
  
更改字符设备的权限,使得软件属主拥有它们,这里为oracle用户:  
   # chown oracle:dba /dev/rdb_name*


2.4.3 在其它节点上导入(import)卷组
    使用importvg在所有其它节点上导入oracle_vg 卷组。
    在第一个机器上,输入:
    % varyoffvg oracle_vg
   
在其它节点上导入卷组,使用smit vg,并选择Import a Volume Group 。

Import a Volume Group

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

VOLUME GROUP name                           [oracle_vg]  

* PHYSICAL VOLUME name                        [hdisk5]          +

Volume Group MAJOR NUMBER                   [57]              +#

Make this VG Concurrent Capable?            no                +

Make default varyon of VG Concurrent?       no                +

 

物理卷名称(hdisk)在每个节点上可能不同,使用lspv检查磁盘的PVID,并确保选择跟在第一个节点上创建卷组的磁盘的PVID相同的磁盘,并且保证使用相同的major number,此数字必须在所有节点上没被定义,“Make default varyon of VG Concurrent?”选项应该被设置为“no”;因为卷组创建为并行方式,因此 “Make this VG Concurrent Capable?”可以保留为“no”。在原始创建卷组的节点varyoff卷组后,在命令行下导入卷组:

% importvg -V -y h disk#
% chvg -an
% varyoffvg


在每个节点导入卷组之后,确保更改字符设备的属主,这里为oracle:
# chown oracle:dba /dev/rdb_name*

2.4.4 添加一个并行群集资源组

此例中共享的资源为 oracle_vg,创建管理此资源的并行资源组:

Smit HACMP -> Cluster Configuration -> Cluster Resources -> Define Resource Groups -> Add a Resource Group
    快速路径:
    # smit cm_add_grp

Add a Resource Group

Type or select values in entry fields.Press Enter AFTER making all desired changes.

[Entry Fields]

* Resource Group Name                         [shared_vg]

* Node Relationship                           concurrent          +

* Participating Node Names                    [node1 node2]       +

“Resource Group Name”是任意字符,用于在配置卷组时选择,因为我们正在配置一个共享资源,“Node Relationship”为“concurrent”意味一组节点将并行共享此资源,“Participating Node Names”是以空格分隔的将共享此资源的节点列表。


2.4.5 配置并行群集资源组  
    当资源组被添加之后,可以被配置:

Smit HACMP -> Cluster Configuration -> Cluster Resources -> Change/Show Resources for a Resource Group
    快速路径:
    # smit cm_cfg_res.select    

Configure Resources for a Resource Group

Type or select values in entry fields.Press Enter AFTER making all desired changes.

                                              [Entry

人气教程排行