跳过导航链接
退出打印视图
| 适用于 Oracle 的 Oracle Solaris Cluster 数据服务指南

搜索范围:

- 本文档
- 整个文档库

### 注册和配置 HA for Oracle

#### 用于注册和配置 HA for Oracle 的工具

Oracle Solaris Cluster 提供以下用于注册和配置 HA for Oracle 的工具：

- `clsetup`(1CL) 实用程序。有关更多信息，请参见如何通过使用 `clsetup` 实用程序注册和配置 HA for Oracle。

- Oracle Solaris Cluster Manager。有关更多信息，请参见 Oracle Solaris Cluster Manager 联机帮助。

- Oracle Solaris Cluster 维护命令。有关更多信息，请参见如何使用 Oracle Solaris Cluster 维护命令注册和配置不使用 Oracle ASM 的 HA for Oracle。

`clsetup` 实用程序和 Oracle Solaris Cluster Manager 分别提供用于配置 HA for Oracle 的向导。这些向导可降低由于命令语法错误或疏忽而导致配置错误的可能性。这些向导还可确保创建需要的所有资源并设置资源之间需要的所有依赖性。

#### 设置 HA for Oracle 扩展属性

使用HA for Oracle 扩展属性中的扩展属性创建您的资源。要设置资源的扩展属性，可在用于创建或修改该资源的 `clresource(1CL)` 命令中包括选项 `-p property=value` 。如果您已创建资源，请按照《Oracle Solaris Cluster Data Services Planning and Administration Guide》中的第 2 章 "Administering Data Service Resources"中的过程来配置扩展属性。

您可以动态更新某些扩展属性。不过，其他属性只能在创建或禁用资源时更新。可调的条目指示您何时可以更新每个属性。有关所有 Solaris Cluster 属性的详细信息，请参见《Oracle Solaris Cluster Data Services Planning and Administration Guide》中的附录 A "Standard Properties"。

`SUNW.oracle_server` 扩展属性介绍可为 Oracle 服务器设置的扩展属性。对于 Oracle 服务器，仅需要设置以下扩展属性：

- `ORACLE_HOME`

- `ORACLE_SID`

- `Alert_log_file`

- `Connect_string`

# 如何通过使用 `clsetup` 实用程序注册和配置 HA for Oracle

此过程提供了 Solaris Cluster 维护命令的长格式。此外，大多数命令还有简短格式。除了命令名称的形式以外，简写形式和完整形式的命令是相同的。

注 - `clsetup` 实用程序不支持使用 ZFS 的 HA for Oracle 配置。

###### 开始之前

确保满足以下先决条件：

- 群集的卷管理器配置为在共享存储中提供卷，这些存储可从可能运行的 Oracle 的任何节点进行访问。

- 在 Oracle 将用于其数据库的存储卷中创建原始设备和文件系统。

- Oracle 软件安装为可从可能运行 Oracle 的所有节点或区域进行访问。

- 为 Oracle 配置 UNIX 操作系统的内核变量。

- 为用于可运行 Oracle 的所有节点或区域配置 Oracle 软件。

- 安装数据服务软件包。

确保拥有以下信息：

- 控制数据服务的群集节点或区域的名称。

- 客户端用于访问数据服务的逻辑主机名。通常，此 IP 地址已在安装群集时设置。有关网络资源的详细信息，请参见《Oracle Solaris Cluster Concepts Guide》。

- 您计划配置的资源的 Oracle 应用程序二进制文件路径。

- 数据库类型。

1. 成为任何群集节点的超级用户。
2. 启动 `clsetup` 实用程序。

       # clsetup

   屏幕上将显示 `clsetup` 主菜单。

3. 键入与数据服务选项对应的编号，然后按 Return 键。

   此时会显示数据服务菜单。

4. 键入与 configuringHA for Oracle 选项对应的编号，然后按 Return 键。

   `clsetup` 实用程序会显示执行此任务的先决条件列表。

5. 检验是否满足先决条件，然后按 Return 键。

   `clsetup` 实用程序会显示群集节点的列表。

6. 选择需要运行 Oracle 的节点或区域。
   - 要接受以任意顺序列出的所有节点或区域的默认选择，按 Return 键。
   - 要选择列出的节点或区域的子集，键入以逗号分隔或以空格分隔的编号列表（与节点或区域对应）。然后按 Return 键。

     确保节点或区域以其在资源组（Oracle 资源放入其中）节点列表中显示的顺序列出。列表中的第一个节点或区域是此资源组的主节点或区域。

   - 要以特定顺序选择所有节点或区域，键入以逗号分隔或以空格分隔的已排序编号列表（与节点或区域对应），然后按 Return 键。

     确保节点或区域以其在资源组（Oracle 资源放入其中）节点列表中显示的顺序列出。列表中的第一个节点或区域是此资源组的主节点或区域。

7. 要确认节点或区域选择，键入 `d`，然后按 Return 键。

   `clsetup` 实用程序会显示要配置的 Oracle 组件的类型。

8. 键入要配置的 Oracle 组件的编号，然后按 Return 键。

   `clsetup` 实用程序会列出 Oracle 主目录。

9. 指定您的 Oracle 软件安装的 Oracle 主目录。
   - 如果已列出目录，按如下所述选择目录：
     1. 键入与要选择的目录对应的编号。

        `clsetup` 实用程序会显示群集中配置的 Oracle 系统标识符列表。此实用程序还会提示您指定 Oracle 安装的系统标识符。

   - 如果没有列出该目录，则明确指定该目录。
     1. 键入 `e`，然后按 Return 键。

        `clsetup` 实用程序会提示您输入 Oracle 主目录。

     2. 键入 Oracle 主目录的完整路径，然后按 Return 键。

        `clsetup` 实用程序会显示群集中配置的 Oracle 系统标识符列表。此实用程序还会提示您指定 Oracle 安装的系统标识符。

10. 指定您要配置的 Oracle 数据库的 Oracle SID。
    - 如果已列出 SID，按如下所述选择 SID：
      1. 键入与要选择的 SID 对应的编号。

         `clsetup` 实用程序会显示该实用程序将创建的 Solaris Cluster 资源的属性。

    - 如果没有列出该 SID，则明确指定该 SID。
      1. 键入 `e`，然后按 Return 键。

         `clsetup` 实用程序会提示您输入 SID。

      2. 键入 SID，然后按 Return 键。

         `clsetup` 实用程序会显示该实用程序将创建的 Solaris Cluster 资源的属性。

    `clsetup` 实用程序会显示该实用程序将创建的 Solaris Cluster 资源的属性。

11. 如果任何 Oracle Solaris Cluster 资源属性需要其他名称，则按如下方式更改各名称。
    1. 键入与您要更改的名称对应的编号，然后按 Return 键。

       `clsetup` 实用程序会显示一个屏幕，您可在此处指定新名称。

    2. 在“新值”提示下键入新名称，然后按 Return 键。

    `clsetup` 实用程序会返回到该实用程序将创建的 Oracle Solaris Cluster 资源的属性列表。

12. 要确认 Oracle Solaris Cluster 资源属性选择，键入 `d`，然后按 Return 键。

    `clsetup` 实用程序会显示现有存储资源的列表。如果没有可用存储资源，`clsetup` 实用程序会显示用于存储数据的共享存储类型列表。

13. 键入与要用于存储数据的共享存储类型对应的编号，然后按 Return 键。

    `clsetup` 实用程序会显示群集中配置的文件系统挂载点。

14. 按如下所示选择文件系统挂载点。
    - 要选择以任意顺序列出的所有文件系统挂载点的默认选择，键入 `a`。然后按 Return 键。
    - 要选择列出的文件``系统挂载点的子集，键入以逗号分隔或以空格分隔的编号列表（与文件系统挂载点对应）。然后按 Return 键。

    `clsetup` 实用程序会显示群集中配置的全局磁盘集和设备组。

15. 按如下所述选择设备组。
    - 要接受以任意顺序列出的所有设备组的默认选择，键入 `a`，然后按 Return 键。
    - 要选择列出的设备组的子集，键入以逗号分隔或以空格分隔的编号列表（与设备组对应），然后按 Return 键。

    `clsetup` 实用程序会返回到高可用性存储资源列表。

16. 键入以逗号分隔或以空格分隔的编号列表（与数据服务所需的存储资源对应），然后按 Return 键。
17. 要确认 Oracle Solaris Cluster 存储资源选择，键入 `d`，然后按 Return 键。

    `clsetup` 实用程序会显示群集中所有现有的逻辑主机名资源。如果没有可用的逻辑主机名资源，`clsetup` 实用程序会提示输入让资源具有高可用性的逻辑主机名。

18. 指定逻辑主机名，然后按 Return 键。

    `clsetup` 实用程序会返回到可用的逻辑主机名资源列表。

19. 键入以逗号分隔或以空格分隔的编号列表（与数据服务所需的逻辑主机名资源对应），然后按 Return 键。
20. 要确认 Oracle Solaris Cluster 逻辑主机名资源选择，键入 `d`，然后按 Return 键。

    `clsetup` 实用程序会显示该实用程序将创建的 Solaris Cluster 对象的名称。

21. 如果任何 Solaris Cluster 对象需要其他名称，则按如下方式更改各名称。
    - 键入与您要更改的名称对应的编号，然后按 Return 键。

      `clsetup` 实用程序会显示一个屏幕，您可在此处指定新名称。

    - 在“新值”提示下键入新名称，然后按 Return 键。

      `clsetup` 实用程序会返回到该实用程序将创建的 Oracle Solaris Cluster 对象的名称列表。

22. 要确认 Oracle Solaris Cluster 对象名称选择，键入 `d`，然后按 Return 键。
23. 要创建配置，键入 `c`，然后按 Return 键。

    `clsetup` 实用程序会显示进度消息，指示该实用程序正在运行命令以创建该配置。配置完成时，`clsetup` 实用程序会显示该实用程序为创建配置而运行的命令。

24. 按 Return 键继续。
25. （可选的）键入 `q` 并反复按 Return 键，直到退出 `clsetup` 实用程序。

    如果希望，可保持运行 `clsetup` 实用程序的同时执行所需的其他任务，然后再次使用该实用程序。

# 如何使用 Oracle Solaris Cluster 维护命令注册和配置不使用 Oracle ASM 的 HA for Oracle

此过程提供了 Oracle Solaris Cluster 维护命令的长格式。此外，大多数命令还有简短格式。除了命令名称的形式以外，简写形式和完整形式的命令是相同的。

###### 开始之前

确保满足以下先决条件：

- 群集的卷管理器配置为在共享存储中提供卷，这些存储可从可能运行的 Oracle 的任何节点进行访问。

- 在 Oracle 将用于其数据库的存储卷中创建原始设备和文件系统。

- Oracle 软件安装为可从可能运行 Oracle 的所有节点或区域进行访问。

- 为 Oracle 配置 UNIX 操作系统的内核变量。

- 为用于可运行 Oracle 的所有节点或区域配置 Oracle 软件。

- 安装数据服务软件包。

确保拥有以下信息：

- 控制数据服务的群集节点或区域的名称。

- 客户端用于访问数据服务的逻辑主机名。通常，此 IP 地址已在安装群集时设置。有关网络资源的详细信息，请参见《Oracle Solaris Cluster Concepts Guide》。

- 您计划配置的资源的 Oracle 应用程序二进制文件路径。

- 数据库类型。

1. 在群集成员上成为超级用户或担任可提供 `solaris.cluster.modify` 和 `solaris.cluster.admin` RBAC 授权的角色。
2. 注册数据服务的资源类型。

   对于 HA for Oracle，可注册两种资源类型（`SUNW.oracle_server` 和 `SUNW.oracle_listener`），如下所示。

       # clresourcetype register SUNW.oracle_server
       # clresourcetype register SUNW.oracle_listener

3. 创建故障转移资源组以容纳网络和应用程序资源。

   如果您使用 Solaris ZFS 则不需要此步骤，因为在配置高可用性本地 ZFS 时已创建资源组。本过程中其他步骤创建的资源将添加到此资源组。

   或者，您可以选择节点或区域集，以供在其上使用 `-n` 选项运行数据服务，如下所示。

       # clresourcegroup create [-n node-zone-list] resource-group

   `-n` node-zone-list

     指定可控制此资源组的、以逗号分隔的已排序区域列表。列表中各条目的格式为 `node:zone`。在此格式中，node 指定节点的名称或 ID，而 zone 指定非全局 Solaris 区域的名称。要指定全局区域，或指定不含非全局区域的节点，则仅指定 node 即可。

     此列表中的顺序会确定故障转移期间将节点或区域视为主节点的顺序。此列表是可选的。如果您忽略此列表，则各群集节点的全局区域可控制该资源组。

   resource-group

     指定资源组的名称。您可以随意指定此名称，但该名称对群集内的资源组必须唯一。

4. 检验您所使用的所有网络资源是否均已添加到您的名称服务数据库。

   应在 Oracle Solaris Cluster 安装过程中执行此验证。

   注 - 确保所有网络资源均在服务器和客户端的 `/etc/inet/hosts` 文件中显示，以避免由于查找名称服务而导致任何故障。

5. 将逻辑主机名资源添加到故障转移资源组。

       # clreslogicalhostname create -g resource-group [-h logicalhostname] \
       logicalhotname-rs

   logicalhostname

     指定逻辑主机名。此逻辑主机名必须出现在您的名称服务数据库中。如果 logicalhostname 和 logicalhostname-rs 完全相同，则 logicalhostname 是可选的。

   logicalhostname-rs

     指定分配给您要创建的逻辑主机名资源的名称。

6. 在群集中注册 `SUNW.HAStoragePlus` 资源类型。

       # clresourcetype register SUNW.HAStoragePlus

7. 将 `SUNW.HAStoragePlus` 类型的资源添加到故障转移资源组。

   | 注意 - 非全局区域不支持来自 Oracle Solaris Cluster 设备组的原始设备。

   注 - 如果要在非全局区域中支持 `SUNW.HAStoragePlus` 资源类型，则该资源类型必须为版本 4。

   注 - 如果对 Oracle 文件使用 Solaris ZFS，请忽略此步骤。`SUNW.HAStoragePlus` 资源在配置高可用性本地 ZFS 时已创建。有关更多信息，请参见如何准备节点。

       # clresource create -g resource-group -t SUNW.HAStoragePlus \
       -p GlobalDevicePaths=device-path \
       -p FilesystemMountPoints=mount-point-list \
       -p AffinityOn=TRUE hastp-rs

   必须设置 `GlobalDevicePaths` 扩展属性或 `FilesystemMountPoints` 扩展属性：

   - 如果数据库位于原始设备中，将 `GlobalDevicePaths` 扩展属性设置为全局设备路径。

   - 如果数据库位于群集文件系统中，指定群集文件系统和本地文件系统的挂载点。

   注 - `AffinityOn` 必须设置为 `TRUE`，而本地文件系统必须驻留在全局磁盘组中才能进行故障转移。

   资源在启用状态下创建。

8. 使群集节点或区域中处于受管理状态的故障转移资源组联机。

       # clresourcegroup online -M resource-group

   `-M`

     将要联机的资源组置于受管理状态。

9. 在故障转移资源组中创建 Oracle 应用程序资源。

   - Oracle 服务器资源：

         # clresource create  -g resourcegroup \
         -t SUNW.oracle_server \
         -p Connect_string=user/passwd \
         -p ORACLE_SID=instance \
         -p ORACLE_HOME=Oracle-home \
         -p Alert_log_file=path-to-log \
         -p Restart_type=entity-to-restart \
         [-p Dataguard_role=role] \
         [-p Standby_mode=mode] \-p resource_dependencies=storageplus-resource \
          resource

   - Oracle 侦听器资源：

         # clresource create -g resource-group \
         -t SUNW.oracle_listener \
         -p LISTENER_NAME=listener \
         -p ORACLE_HOME=Oracle-home \
         -p resource_dependencies=storageplus-resource resource

   `-g` resource-group

     指定要在其中放入资源的资源组名称。

   `-t` `SUNW.oracle_server/listener`

     指定要添加的资源类型。

   `-p` `Alert_log_file``=`path-to-log

     设置服务器消息日志在 `$ORACLE_HOME` 下的路径。

   `-p` `Connect_string``=`user/passwd

     指定故障监视器用于连接数据库的用户和密码。这些设置必须与您在如何设置 Oracle 数据库权限中设置的权限一致。如果您使用 Solaris 授权，键入斜杠 (`/`) 而非用户名和密码。

   `-p` `ORACLE_SID``=` instance

     设置 Oracle 系统标识符。

   `-p` `LISTENER_NAME``=` listener

     设置 Oracle 侦听器实例的名称。此名称必须与 `listener.ora` 中对应的条目匹配。

   `-p` `ORACLE_HOME``=` Oracle-home

     设置 Oracle 主目录的路径。

   `-p` `Restart_type=` entity-to-restart

     指定在重新启动对故障的响应时，服务器故障监视器重新启动的实体。按如下所述设置 entity-to-restart：

     - 要指定仅重新启动此资源，将 entity-to-restart 设置为 `RESOURCE_RESTART`。默认情况下，仅重新启动此资源。

     - 要指定重新启动包含此资源的资源组中的所有资源，将 entity-to-restart 设置为 `RESOURCE_GROUP_RESTART`。

       如果将 entity-to-restart 设置为 `RESOURCE_GROUP_RESTART`，该资源组中的所有其他资源（例如 Apache 或 DNS）都将重新启动，即使这些资源没有发生故障。因此，仅在该资源组中包括您需要在重新启动 Oracle 服务器资源时重新启动的资源。

   `-p` `Dataguard_role=` role

     指定数据库实例的角色。按如下所示更改 role：

     - 要为尚未配置备用实例的主数据库实例创建资源，将 role 更改为 `NONE`。此值为默认值。

     - 要为已配置备用数据库实例的主数据库实例创建资源，将 role 更改为 `PRIMARY`。

     - 要为备用数据库实例创建资源，将 role 更改为 `STANDBY`。

   `-p` `Standby_mode=` mode

     指定备用数据库实例的模式。如果您将 `Dataguard_role` 更改为 `NONE` 或 `PRIMARY`，则 `Standby_mode` 的值将被忽略。

     - 要指定逻辑备用数据库，将 mode 更改为 `LOGICAL`。此值为默认值。

     - 要指定物理备用数据库，将 mode 更改为 `PHYSICAL`。

   resource

     指定要创建的资源的名称。

   注 - 或者，您可以设置属于该 Oracle 数据服务的附加扩展属性以覆盖其默认值。有关扩展属性的列表，请参见设置 HA for Oracle 扩展属性。

   资源在启用状态下创建。

示例 1 注册 HA for Oracle 以在全局区域中运行

以下示例显示如何在双节点群集中注册 HA for Oracle。

    Cluster Information
    Node names: phys-schost-1, phys-schost-2
    Logical Hostname: schost-1
    Resource group: resource-group-1 (failover resource group)
    HAStoragePlus Resource: hastp-rs
    Oracle Resources: oracle-server-1, oracle-listener-1
    Oracle Instances: ora-lsnr (listener), ora-srvr (server)

    (Create the failover resource group to contain all of the resources.)
    # clresourcegroup create resource-group-1

    (Add the logical hostname resource to the resource group.)
    # clreslogicalhostname create -g resource-group-1 schost-1

    (Register the SUNW.HAStoragePlus resource type.)
    # clresourcetype register SUNW.HAStoragePlus

    (Add a resource of type SUNW.HAStoragePlus to the resource group.)
    # clresource create -g resource-group-1 -t SUNW.HAStoragePlus \
    -p FileSystemMountPoints=/global/oracle,/global/ora-data/logs,local/ora-data \
    -p AffinityOn=TRUE hastp-rs
    (Bring the resource group online in a managed state
    # clresourcegroup online -M resource-group-1

    (Register the Oracle resource types.)
    # clresourcetype register SUNW.oracle_server
    # clresourcetype register SUNW.oracle_listener

    (Add the Oracle application resources to the resource group.)
    # clresource create -g resource-group-1 \
    -t SUNW.oracle_server -p ORACLE_HOME=/global/oracle \
    -p Alert_log_file=/global/oracle/message-log \
    -p ORACLE_SID=ora-srvr -p Connect_string=scott/tiger \
    -p Dataguard_role=STANDBY -p Standby_mode=PHYSICAL oracle-server-1

    # clresource create -g resource-group-1 \
    -t SUNW.oracle_listener -p ORACLE_HOME=/global/oracle \
    -p LISTENER_NAME=ora-lsnr oracle-listener-1

示例 2 注册 HA for Oracle 以在非全局区域中运行

以下示例显示如何在双节点群集中注册 HA for Oracle。

    Cluster Information
    Node names: phys-schost-1, phys-schost-2
    Non-global zone names: sc1zone1, sc2zone1
    Logical Hostname: schost-1
    Resource group: resource-group-1 (failover resource group)
    HAStoragePlus Resource: hastp-rs
    Oracle Resources: oracle-server-1, oracle-listener-1
    Oracle Instances: ora-lsnr (listener), ora-srvr (server)

    (Create the failover resource group to contain all of the resources.)
    # clresourcegroup create phys-schost-1:sc1zone1,phys-schost-2:sc2zone1 \
    resource-group-1

    (Add the logical hostname resource to the resource group.)
    # clreslogicalhostname create -g resource-group-1 schost-1

    (Register the SUNW.HAStoragePlus resource type.)
    # clresourcetype register SUNW.HAStoragePlus

    (Add a resource of type SUNW.HAStoragePlus to the resource group.)
    # clresource create -g resource-group-1 -t SUNW.HAStoragePlus \
    -p FileSystemMountPoints=/global/oracle,/global/ora-data/logs,local/ora-data \
    -p AffinityOn=TRUE hastp-rs

    (Bring the resource group online in a managed state
    # clresourcegroup online -M resource-group-1

    (Register the Oracle resource types.)
    # clresourcetype register SUNW.oracle_server
    # clresourcetype register SUNW.oracle_listener

    (Add the Oracle application resources to the resource group.)
    # clresource create -g resource-group-1 \
    -t SUNW.oracle_server -p ORACLE_HOME=/global/oracle \
    -p Alert_log_file=/global/oracle/message-log \
    -p ORACLE_SID=ora-srvr -p Connect_string=scott/tiger \
    -p Dataguard_role=STANDBY -p Standby_mode=PHYSICAL oracle-server-1

    # clresource create -g resource-group-1 \
    -t SUNW.oracle_listener -p ORACLE_HOME=/global/oracle \
    -p LISTENER_NAME=ora-lsnr oracle-listener-1

示例 3 注册 HA for Oracle 以在区域群集中运行

以下示例显示如何在区域群集中注册 HA for Oracle。

    Cluster Information
    Node names: phys-schost-1, phys-schost-2
    zone cluster names: zonecluster1, zonecluster2
    Logical Hostname: zchost-1
    Resource group: resource-group-1 (failover resource group)
    HAStoragePlus Resource: hastp-rs
    Oracle Resources: oracle-server-1, oracle-listener-1
    Oracle Instances: ora-lsnr (listener), ora-srvr (server)

    (Create the failover resource group to contain all of the resources.)
    # clresourcegroup create -Z zonecluster1 resource-group-1

    (Add the logical hostname resource to the resource group.)
    # clreslogicalhostname create -Z zonecluster1 -g resource-group-1 zchost-1

    (Register the SUNW.HAStoragePlus resource type.)
    # clresourcetype register -Z zonecluster1 SUNW.HAStoragePlus

    (Add a resource of type SUNW.HAStoragePlus to the resource group.)
    # clresource create -Z zonecluster1 -g resource-group-1 -t SUNW.HAStoragePlus \
    -p FileSystemMountPoints=/global/oracle,/global/ora-data/logs,local/ora-data \
    -p AffinityOn=TRUE hastp-rs

    (Bring the resource group online in a managed state
    # clresourcegroup online -Z zonecluster1 -M resource-group-1

    (Register the Oracle resource types.)
    # clresourcetype register -Z zonecluster1 SUNW.oracle_server
    # clresourcetype register -Z zonecluster1 SUNW.oracle_listener

    (Add the Oracle application resources to the resource group.)
    # clresource create -Z zonecluster1 -g resource-group-1 \
    -t SUNW.oracle_server -p ORACLE_HOME=/global/oracle \
    -p Alert_log_file=/global/oracle/message-log \
    -p ORACLE_SID=ora-srvr -p Connect_string=scott/tiger \
    -p Dataguard_role=STANDBY -p Standby_mode=PHYSICAL oracle-server-1

    # clresource create -Z zonecluster1 -g resource-group-1 \
    -t SUNW.oracle_listener -p ORACLE_HOME=/global/oracle \
    -p LISTENER_NAME=ora-lsnr oracle-listener-1

# 如何使用 Oracle Solaris Cluster 维护命令注册和配置使用单一实例 Oracle ASM 的 HA for Oracle

注 - Oracle 11g 发行版 2 不支持单一实例 Oracle ASM。

本过程说明使用 Oracle Solaris Cluster 维护命令注册和配置单一实例 Oracle ASM 的步骤。Oracle ASM 的 `Oracle_Home` 仅位于本地文件系统上。

注 - 可在不同的资源组中配置 Oracle ASM 磁盘组和 Oracle 数据库。如果在不同的资源组中配置 Oracle ASM 磁盘组和 Oracle 数据库，应将 Oracle ASM 磁盘组资源组和 Oracle 数据库资源组之间设置为正向强关联 (+++)。

1. 在群集成员上成为超级用户或担任可提供 `solaris.cluster.modify` 和 `solaris.cluster.admin` RBAC 授权的角色。
2. 注册数据服务的 Oracle ASM 资源类型。
   1. 注册可伸缩的 ASM 实例代理资源类型。

          # clresourcetype register SUNW.scalable_asm_instance_proxy

   2. 注册 ASM 磁盘组资源类型。
      - 仅限于 Oracle 10g 和 11g 发行版 1，使用 `SUNW.asm_diskgroup` 资源类型。

            # clresourcetype register SUNW.asm_diskgroup

      - 仅限于 Oracle 11g 发行版 2，使用 `SUNW.scalable_asm_diskgroup_proxy` 资源类型。

            # clresourcetype register SUNW.scalable_asm_diskgroup_proxy

3. 为 Oracle ASM 实例创建可伸缩资源组 asm-inst-rg。

       # clresourcegroup create -S asm-inst-rg

   `-S` asm-inst-rg

     指定 Oracle ASM 实例的可伸缩资源组的名称。

4. 将逻辑主机名资源添加到 `asm-dg-rg` 资源组。

       # clreslogicalhostname create -g asm-dg-rg [-h logicalhostname] \
       logicalhostname-rs

   `-h` logicalhostname

     指定逻辑主机名。此逻辑主机名必须出现在您的名称服务数据库中。如果 logicalhostname 和 logicalhostname-rs 完全相同，则 logicalhostname 是可选的。

   logicalhostname-rs

     指定分配给您要创建的逻辑主机名资源的名称。

5. 将 `SUNW.scalable_asm_instance` 类型的资源添加到 asm-inst-rg 资源组。

       # clresource create -g asm-inst-rg \
       -t SUNW.scalable_asm_instance \
       -p ORACLE_HOME=oracle-home \
       -d asm-inst-rs

   `-g` asm-inst-rg

     指定 Oracle ASM 实例的资源组的名称。

   `-p` `ORACLE_HOME``=` oracle-home

     设置 Oracle ASM 主目录的路径。

     注 - 只能使用本地文件系统作为 Oracle ASM 主目录。

   `-d` asm-inst-rs

     指定要创建的 Oracle ASM 实例资源的名称。

6. 使群集节点中处于受管理状态的可伸缩资源组联机。

       # clresourcegroup online -eM asm-inst-rg

7. 创建 Oracle ASM 资源组 asm-dg–rg。

       # clresourcegroup create asm-dg-rg

8. 通过资源组 asm-dg-rg 在 Oracle ASM 磁盘组中设置正向强关联。

       # clresourcegroup set -p rg_affinities=++asm-inst-rg asm-dg-rg

9. 将 `SUNW.asm_diskgroup` 类型的资源添加到 `asm-dg-rg` 资源组。
   - 仅限于 Oracle 10g 和 11g 发行版 1，使用 `SUNW.asm_diskgroup` 资源类型。

         # clresource create -g asm-dg-rg -t SUNW.asm_diskgroup \
         -p asm_diskgroups=dg[,dg…] \
         -p resource_dependencies_offline_restart=asm-inst-rs,asm-stor-rs \
         -d asm-dg-rs

     `-t` `SUNW.asm_diskgroup`

       指定要添加的资源类型。

     `-p` `asm_diskgroups``=`dg

       指定 ASM 磁盘组。

     asm-stor-rs

       指定 Oracle ASM 存储资源的名称。

     `-d` asm-dg-rs

       指定要创建的资源的名称。

   - 仅限于 Oracle 11g 发行版 2，使用 `SUNW.scalable_asm_diskgroup_proxy` 资源类型。

         # clresource create -g asm-dg-rg -t SUNW.scalable_asm_diskgroup_proxy \
         -p asm_diskgroups=dg[,dg…] \
         -p resource_dependencies_offline_restart=asm-inst-rs,asm-stor-rs \
         -d asm-dg-rs

10. 使处于受管理状态的 Oracle ASM 磁盘资源组联机。

        # clresource online -eM asm-dg-rg

11. 通过发出状态命令来检验 Oracle ASM 安装。

        # clresource status +

12. 注册 HA for Oracle 数据服务的资源类型。

    对于 HA for Oracle，可注册资源类型（`SUNW.oracle_server` 和 `SUNW.o a le_listener`）如下所示。

        # clresourcetype register SUNW.oracle_server
        # clresourcetype register SUNW.oracle_listener

13. 在故障转移资源组中创建 Oracle 应用程序资源。

    - Oracle 服务器资源：

          # clresource create -g asm-dg-rg \
          -t SUNW.oracle_server \
          -p Connect_string=user/passwd \
          -p ORACLE_SID=instance \
          -p ORACLE_HOME=Oracle-home \
          -p Alert_log_file=path-to-log \
          -p Restart_type=entity-to-restart \
          -p Resource_dependencies_offline_restart=asm-dg-rs \
          -d  ora-db-rs

    - Oracle 侦听器资源：

          # clresource create -g asm-dg-rg \
          -t SUNW.oracle_listener \
          -p LISTENER_NAME=listener \
          -p ORACLE_HOME=Oracle-home \
          -p resource_dependencies_offline_restart=asm-dg-rs logicalhostname-rs \
          -d ora-lsr-rs

    `-g` asm-dg-rg

      指定要在其中放入资源的 Oracle ASM 磁盘资源组名称。

    `-t` `SUNW.oracle_server/listener`

      指定要添加的资源类型。

    `-p` `Alert_log_file``=`path-to-log

      设置服务器消息日志在 `$ORACLE_HOME` 下的路径。

    `-p` `Connect_string``=`user/passwd

      指定故障监视器用于连接数据库的用户和密码。这些设置必须与您在如何设置 Oracle 数据库权限中设置的权限一致。如果您使用 Solaris 授权，键入斜杠 (`/`) 而非用户名和密码。

    `-p` `ORACLE_SID``=` instance

      设置 Oracle 系统标识符。

    `-p` `LISTENER_NAME``=` listener

      设置 Oracle 侦听器实例的名称。此名称必须与 `listener.ora` 中对应的条目匹配。

    `-p` `ORACLE_HOME``=` Oracle-home

      设置 Oracle 主目录的路径。

    注 - 或者，您可以设置属于该 Oracle 数据服务的附加扩展属性以覆盖其默认值。有关扩展属性的列表，请参见设置 HA for Oracle 扩展属性。

14. 使 Oracle 服务器资源联机。

        # clresource enable ora-db-rs

15. 使 Oracle 侦听器资源联机。

        # clresource enable ora-lsr-rs

# 如何使用 Oracle Solaris Cluster 维护命令注册和配置使用群集 Oracle ASM 实例的 HA for Oracle

本过程说明使用 Oracle Solaris Cluster 维护命令注册和配置使用群集 Oracle ASM 实例的 HA for Oracle 的步骤。

注 - 执行本过程中的步骤之前，应先安装 Oracle Clusterware 软件。

1. 在群集成员上成为超级用户或担任可提供 `solaris.cluster.modify` 和 `solaris.cluster.admin` RBAC 授权的角色。

   注 - 您也可以使用 `clsetup` 实用程序执行本过程中的步骤 1 至 6。

2. 注册 Oracle RAC 框架和 Oracle Clusterware 框架的资源类型。

       # clresourcetype register SUNW.rac_framework
       # clresourcetype register SUNW.crs_framework

3. 创建可伸缩的资源组 `rac-fmwk-rg`。

       # clresourcegroup create -S rac-fmwk-rg

4. 将 `SUNW.rac_framework` 类型的资源添加到 rac-fmwk-rg 资源组。

       # clresource create -g rac-fmwk-rg -t SUNW.rac_framework rac-fmwk-rs

5. 将 `SUNW.crs_framework` 类型的资源添加到 rac-fmwk-rg 资源组。

       # clresource create -g rac-fmwk-rg -t SUNW.crs_framework \
       -p resource_dependencies=rac-fmwk-rs \
       -d crs-fmwk-rs

6. 创建用于 Oracle 数据库的故障转移资源组 ora-db-rg。

       # clresourcegroup create ora-db-rg

7. SPARC：如果使用 SPARC，则执行以下步骤。否则，请转至步骤 8。

   注 - 只有在执行 Oracle ASM 软件安装之前已安装 `ORCLudlm` 软件包的情况下，才能执行此步骤。

   1. 注册 Oracle UDLM 的资源类型。

          # clresourcetype register SUNW.rac_udlm

   2. 将 `SUNW.rac_udlm` 类型的资源添加到 rac-fmwk-rg 资源组。

          # clresource create -g rac-fmwk-rg -t SUNW.rac_udlm \
          -p resource_dependencies=rac-fmwk-rs rac-udlm-rs

8. 为您所使用文件系统注册相应的资源类型，并创建资源组。

   注 - 您应该确定 `Oracle_Home` 要使用的文件系统，并在执行此步骤之前设置文件系统。有关如何设置文件系统的信息，请参见准备节点和磁盘。

   如果使用 QFS 共享文件系统，则执行以下步骤以注册 QFS 共享文件系统资源类型并创建资源组。否则，应使用 `SUNW.HAStoragePlus` 资源类型。

   - 如果使用 QFS 共享文件系统，则执行以下步骤以注册 QFS 共享文件系统资源类型并创建资源组。否则，应使用 `SUNW.HAStoragePlus` 资源类型。
     1. 注册 QFS 共享文件系统的资源类型。

            # clresourcetype register SUNW.qfs

     2. 创建资源组 qfs-rg。

            # clresourcegroup create qfs-rg

     3. 将 `SUNW.qfs` 类型的资源添加到 qfs-rg 资源组。

            # clresource create -g qfs-rg -t SUNW.qfs -p QFSFileSystem=qfs-mp qfs-rs

        `-g` qfs-rg

          指定资源组的名称。

        `-t` `SUNW.qfs`

          指定要添加的资源类型。

        `-p` `QFSFileSystem``=` qfs-mp

          指定 QFS 共享文件系统挂载点。

        qfs-rs

          指定要创建的 QFS 共享文件系统资源的名称。

     4. 使群集节点中处于受管理状态的 qfs-rg 资源组联机。

            # clresourcegroup online -eM qfs-rg

     5. 注册 `SUNW.ScalMountPoint` 的资源类型。

            # clresourcetype register SUNW.ScalMountPoint

     6. 创建可伸缩的资源组 scal-mp-rg。

            # clresourcegroup create -S scal-mp-rg

     7. 将 `SUNW.ScalMountPoint` 类型的资源添加到 scal-mp-rg 资源组。

            # clresource create -g scal-mp-rg -t SUNW.ScalMountPoint \
            -p mountpointdir=mount-point \
            -p filesystemtype=s-qfs \
            -p targetfilesystem=qfs-name \
            -p resource_dependencies=qfs-rs \
            -d scal-mp-rs

        `-g` scal-mp-rg

          指定可伸缩资源组的名称。

        `-t` `SUNW.ScalMountPoint`

          指定要添加的资源类型。

        `-p` `mountpointdir``=` mount-point

          指定文件系统挂载的目录。

        `-p` `filesystemtype``=`s-qfs

          指定您使用的文件系统类型。

        `-p` `targetfilesystem``=`qfs-name

          指定此挂载点上挂载的文件系统名称。

        `-d` scal-mp-rs

          指定要创建的可伸缩挂载点资源的名称。

     8. 使群集节点中处于受管理状态的 scal-mp-rg 资源组联机。

            # clresourcegroup online -eM scal-mp-rg

   - 如果使用的文件系统并非 QFS 共享文件系统，则执行以下步骤以注册 `SUNW.HAStoragePlus` 资源类型并创建资源组。
     1. 注册 `SUNW.HAStoragePlus` 资源类型。

            # clresourcetype register SUNW.HAStoragePlus

     2. 将 `SUNW.HAStorgePlus` 类型的资源添加到 ora-db-rg 资源组。

            # clresource create -g ora-db-rg -t SUNW.HAStoragePlus \
            -p filesystemmountpoints=mount-point-list -d hastp-rs

     3. 使群集节点中处于受管理状态的 ora-db-rg 资源组联机。

            # clresourcegroup online -eM ora-db-rg

9. 注册数据服务的 Oracle ASM 资源类型。
   1. 注册可伸缩的 ASM 实例代理资源类型。

          # clresourcetype register SUNW.scalable_asm_instance_proxy

   2. 注册 ASM 磁盘组资源类型。
      - 仅限于 Oracle 10g 和 11g 发行版 1，使用 `SUNW.asm_diskgroup` 资源类型。

            # clresourcetype register SUNW.asm_diskgroup

      - 仅限于 Oracle 11g 发行版 2，使用 `SUNW.scalable_asm_diskgroup_proxy` 资源类型。

            # clresourcetype register SUNW.scalable_asm_diskgroup_proxy

10. 创建资源组 asm-inst-rg 和 asm-dg-rg。

        # clresourcegroup create -S asm-inst-rg asm-dg-rg

11. 通过 asm-inst-rg 在 rac-fmwk-rg 中设置正向强关联。

        # clresourcegroup set -p rg_affinities=++rac-fmwk-rg asm-inst-rg

12. 通过 asm-dg-rg 在 asm-inst-rg 中设置正向强关联。

        # clresourcegroup set -p rg_affinities=++asm-inst-rg asm-dg-rg

13. 将 `SUNW.crs_framework` 类型的资源添加到 rac-fmwk-rg 资源组。

        # clresource create -g rac-fmwk-rg -t SUNW.crs_framework \
        -p resource_dependencies=rac-fmwk-rs \
        -d crs-fmwk-rs

14. 将 `SUNW.scalable_asm_instance_proxy` 类型的资源添加到 asm-inst-rg 资源组。

        # clresource create -g asm-inst-rg -t SUNW.asm_instance_proxy \
        -p ORACLE_HOME=oracle-home \
        -p crs_home=crs-home \
        -p "oracle_sid{node1}"=instance \
        -p "oracle_sid{node2}"=instance \
        -p resource_dependencies_offline_restart=crs-fmwk-rs,qfs-mp-rs \
        -d asm-inst-rs

    `-g` asm-inst-rg

      指定要在其中放入资源的资源组名称。

    `-t` `SUNW.asm_inst_proxy`

      指定要添加的资源类型。

    `-p` `ORACLE_SID``=` instance

      设置 Oracle 系统标识符。

    `-p` `ORACLE_HOME``=` Oracle-home

      设置 Oracle 主目录的路径。

    `-d` asm-inst-rs

      指定要创建的资源的名称。

15. 将 ASM 磁盘组资源添加到 asm-dg-rg 资源组。
    - 仅限于 Oracle 10g 和 11g 发行版 1，使用 `SUNW.asm_diskgroup` 资源类型。

          # clresource create -g asm-dg-rg -t SUNW.asm_diskgroup \
          -p asm_diskgroups=dg[,dg…] \
          -p resource_dependencies_offline_restart=asm-inst-rs,asm-stor-rs \
          -d asm-dg-rs

      `-t` `SUNW.asm_diskgroup`

        指定要添加的资源类型。

      `-p` `asm_diskgroups``=`dg

        指定 ASM 磁盘组。

      asm-stor-rs

        指定 Oracle ASM 存储资源的名称。

      `-d` asm-dg-rs

        指定要创建的资源的名称。

    - 仅限于 Oracle 11g 发行版 2，使用 `SUNW.scalable_asm_diskgroup_proxy` 资源类型。

          # clresource create -g asm-dg-rg -t SUNW.scalable_asm_diskgroup_proxy \
          -p asm_diskgroups=dg[,dg…] \
          -p resource_dependencies_offline_restart=asm-inst-rs,asm-stor-rs \
          -d asm-dg-rs

16. 使群集节点中处于受管理状态的 asm-inst-rg 资源组联机。

        # clresourcegroup online -eM asm-inst-rg

17. 使群集节点中处于受管理状态的 asm-dg-rg 资源组联机。

        # clresourcegroup online -eM asm-dg-rg

18. 通过发出状态命令来检验 Oracle ASM 安装。

        # clresource status +

19. 注册 HA for Oracle 数据服务的资源类型。

    对于 HA for Oracle，可注册两种资源类型（`SUNW.oracle_server` 和 `SUNW.oracle_listener`），如下所示。

        # clresourcetype register SUNW.oracle_server
        # clresourcetype register SUNW.oracle_listener

20. 将逻辑主机名资源添加到 Oracle 数据库的故障转移资源组。

        # clreslogicalhostname create -g ora-db-rg [-h logicalhostname] \
        logicalhostname-rs

    logicalhostname

      指定逻辑主机名。此逻辑主机名必须出现在您的名称服务数据库中。如果 logicalhostname 和 logicalhostname-rs 完全相同，则 logicalhostname 是可选的。

    logicalhostname-rs

      指定分配给您要创建的逻辑主机名资源的名称。

21. 使群集节点中处于受管理状态的故障转移资源组联机。

        # clresourcegroup online -eM ora-db-rg

22. 在故障转移资源组中创建 Oracle 应用程序资源。

    - Oracle 服务器资源：

          # clresource create -g ora-db-rg \
          -t SUNW.oracle_server \
          -p Connect_string=user/passwd \
          -p ORACLE_SID=instance \
          -p ORACLE_HOME=Oracle-home \
          -p Alert_log_file=path-to-log \
          -p Resource_dependencies_offline_restart=asm-dg-rs \
          -d ora-db-rs

    - Oracle 侦听器资源：

          # clresource create -g ora-db-rg \
          -t SUNW.oracle_listener \
          -p ORACLE_HOME=Oracle-home \
          -p listener_name=listener \
          -p resource_dependencies_offline_restart=asm-dg-rs,logicalhostname-rs \
          -d ora-ls-rs

    `-g` ora-db-rg

      指定要在其中放入资源的资源组名称。

    `-t` `SUNW.oracle_server/listener`

      指定要添加的资源类型。

    `-p` `Alert_log_file``=`path-to-log

      设置服务器消息日志在 `$ORACLE_HOME` 下的路径。

    `-p` `Connect_string``=`user/passwd

      指定故障监视器用于连接数据库的用户和密码。这些设置必须与您在如何设置 Oracle 数据库权限中设置的权限一致。如果您使用 Solaris 授权，键入斜杠 (`/`) 而非用户名和密码。

    `-p` `ORACLE_SID``=` instance

      设置 Oracle 系统标识符。

    `-p` `ORACLE_HOME``=` Oracle-home

      设置 Oracle 主目录的路径。

    `-p` `listener_name``=` listener

      设置 Oracle 侦听器实例的名称。此名称必须与 `listener.ora` 中对应的条目匹配。

    `-d` ora-ls-rs

      指定要创建的资源的名称。

    注 - 或者，您可以设置属于该 Oracle 数据服务的附加扩展属性以覆盖其默认值。有关扩展属性的列表，请参见设置 HA for Oracle 扩展属性。

23. 使 Oracle 服务器资源联机。

        # clresource enable ora-db-rs

24. 使 Oracle 侦听器资源联机。

        # clresource enable ora-ls-rs

##### 群集文件系统

注 - 您也可以在群集文件系统中安装 Oracle ASM 的 `Oracle_Home`。如果使用群集文件系统，应创建资源 `SUNW.HAStoragePlus` 和 `SUNW.s a able_asm_instance`，并设置这两个资源之间相应的依赖性。

如下所示提供创建 `SUNW.HAStoragePlus` 资源和 `SUNW.scalable_asm_instance` 资源的样例命令：

    # clresource create -g asm-inst-rg -t SUNW.HAStoragePlus \
    -p FilesystemMountPoints=cluster-file-system \
    hastp-rs

    # clresource create -g asm-inst-rg -t SUNW.scalable_asm_instance \
    -p ORACLE_HOME=oracle-home \
    -p "oracle_sid{node1}"=instance \
    -p "oracle_sid{node2}"=instance \
    -p resource_dependencies_restart=hastp-rs \
    -p resource_dependencies_offline_restart=crs-fmwk-rs \
    asm-inst-rs

#### 从此处可转至何处

注册和配置 Solaris Cluster HA for Oracle 后，转至检验 HA for Oracle 安装。

版权所有 © 2000, 2010, Oracle 和/或其附属公司。 保留所有权利。 法律声明 |