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

搜索范围:

- 本文档
- 整个文档库

### 为共享文件系统创建特定于节点的文件和目录

在共享文件系统上安装 Oracle 软件后，所有群集节点都可访问 `ORACLE_HOME` 环境变量指定的目录中的所有文件。但是，某些 Oracle 文件和目录必须维护特定于节点的信息。

如果在共享文件系统上安装 Oracle 软件，则必须为需要维护特定于节点的信息的文件和目录创建本地副本。为了确保所有群集节点都可以访问这些文件和目录，请使用指向节点上本地文件系统中某个文件或目录的符号链接。此类文件系统不属于共享文件系统。

要使用符号链接来实现此目的，必须在本地文件系统上分配一个区域。Oracle 应用程序必须能够访问此区域中的文件，才能创建指向此区域中文件的符号链接。由于符号链接驻留在共享文件系统上，所以所有节点对链接的所有引用都相同。因此，所有节点针对本地文件系统上的区域都必须具有相同的名称空间。

管理员将在全局群集投票节点上创建文件系统，即使当区域群集使用文件系统时也是如此。管理员将使用 `zonecfg` 命令将特定于节点的文件系统配置到区域群集节点中。

本节包含以下过程：

- 如何为共享文件系统创建特定于节点的目录

- 如何为共享文件系统创建特定于节点的文件

# 如何为共享文件系统创建特定于节点的目录

对要维护特定于节点的信息的每个目录执行此过程。为维护特定于节点的信息，以下目录通常是必需的：

- `$ORACLE_HOME``/rdbms/audit`

- `$ORACLE_HOME``/rdbms/log`

- `$ORACLE_HOME``/network/agent`

- `$ORACLE_HOME``/network/log`

- `$ORACLE_HOME``/network/trace`

- `$ORACLE_HOME``/srvm/log`

- `$ORACLE_HOME``/apache`

有关维护特定于节点的信息可能必需的其他目录的信息，请参见 Oracle 文档。

1. 在每个群集节点上创建用于维护特定于节点的信息的本地目录。

   确保所创建的本地目录结构与包含特定于节点的信息的全局目录结构相匹配。例如，全局目录 `/global/oracle/network/agent` 中包含的特定于节点信息可能需要存储在本地的 `/local` 目录下。在这种情况下，可创建名为 `/local/oracle/network/agent` 的目录。

       # mkdir -p local-dir

   `-p`

     指定先创建所有不存在的父目录。

   local-dir

     指定要创建的目录的完整路径名。

2. 在每个群集节点上，为用于维护特定于节点的信息的全局目录创建本地副本。

   确保在步骤 1 中创建的本地目录中包含特定于节点的信息的本地副本。

       # cp -pr global-dir local-dir-parent

   `-p`

     指定保留所有者、组、权限模式、修改时间、访问时间和访问控制列表。

   `-r`

     指定复制目录及其所有文件，包括所有子目录及其文件。

   global-dir

     指定要复制的全局目录的完整路径。此目录位于 `ORACLE_HOME` 环境变量所指定目录下的共享文件系统上。

   local-dir-parent

     指定本地节点上要包含本地副本的目录。此目录是步骤 1 中所创建目录的父目录。

3. 使用指向全局目录的本地副本的符号链接替换步骤 2 中复制的全局目录。
   1. 从任何群集节点上，删除步骤 2 中复制的全局目录。

          # rm -r global-dir

      `-r`

        指定删除目录及其所有文件，包括所有子目录及其文件。

      global-dir

        指定要删除的全局目录的文件名称和完整路径。此目录是在步骤 2 中复制的全局目录。

   2. 从任何群集节点上，创建从目录的本地副本指向在步骤 a 中删除的全局目录的符号链接。

          # ln -s local-dir global-dir

      `-s`

        指定该链接为符号链接。

      local-dir

        指定在步骤 1 中创建的本地目录是链接的源。

      global-dir

        指定在步骤 a 中删除的全局目录是链接的目标。

示例 4-1 创建特定于节点的目录

本示例显示了在双节点群集上创建特定于节点的目录所需的操作序列。按如下所示配置此群集：

- `ORACLE_HOME` 环境变量指定 `/global/oracle` 目录。

- 每个节点上的本地文件系统都位于 `/local` 目录下。

在每个节点上执行以下操作：

1. 要在本地文件系统上创建所需的目录，请运行以下命令：

       # mkdir -p /local/oracle/network/agent

       # mkdir -p /local/oracle/network/log

       # mkdir -p /local/oracle/network/trace

       # mkdir -p /local/oracle/srvm/log

       # mkdir -p /local/oracle/apache

2. 要为用于维护特定于节点的信息的全局目录创建本地副本，请运行以下命令：

       # cp -pr $ORACLE_HOME/network/agent /local/oracle/network/.

       # cp -pr $ORACLE_HOME/network/log /local/oracle/network/.

       # cp -pr $ORACLE_HOME/network/trace /local/oracle/network/.

       # cp -pr $ORACLE_HOME/srvm/log /local/oracle/srvm/.

       # cp -pr $ORACLE_HOME/apache /local/oracle/.

仅在一个节点上执行以下操作：

1. 要删除全局目录，请运行以下命令：

       # rm -r $ORACLE_HOME/network/agent

       # rm -r $ORACLE_HOME/network/log

       # rm -r $ORACLE_HOME/network/trace

       # rm -r $ORACLE_HOME/srvm/log

       # rm -r $ORACLE_HOME/apache

2. 要创建从本地目录指向其相应全局目录的符号链接，请运行以下命令：

       # ln -s /local/oracle/network/agent $ORACLE_HOME/network/agent

       # ln -s /local/oracle/network/log $ORACLE_HOME/network/log

       # ln -s /local/oracle/network/trace $ORACLE_HOME/network/trace

       # ln -s /local/oracle/srvm/log $ORACLE_HOME/srvm/log

       # ln -s /local/oracle/apache $ORACLE_HOME/apache

# 如何为共享文件系统创建特定于节点的文件

对要维护特定于节点的信息的每个文件执行此过程。为维护特定于节点的信息，以下文件通常是必需的：

- `$ORACLE_HOME``/network/admin/snmp_ro.ora`

- `$ORACLE_HOME``/network/admin/snmp_rw.ora`

有关维护特定于节点的信息可能必需的其他文件的信息，请参见 Oracle 文档。

1. 在每个群集节点上创建本地目录，以包含用于维护特定于节点的信息的文件。

       # mkdir -p local-dir

   `-p`

     指定先创建所有不存在的父目录。

   local-dir

     指定要创建的目录的完整路径名。

2. 在每个群集节点上，为用于维护特定于节点的信息的全局文件创建本地副本。

       # cp -p global-file local-dir

   `-p`

     指定保留所有者、组、权限模式、修改时间、访问时间和访问控制列表。

   global-file

     指定要复制的全局文件的文件名称和完整路径。此文件安装在 `ORACLE_HOME` 环境变量所指定的目录下的共享文件系统上。

   local-dir

     指定要包含文件的本地副本的目录。此目录是您在步骤 1 中所创建的目录。

3. 使用指向文件的本地副本的符号链接替换步骤 2 中复制的全局文件。
   1. 从任何群集节点上，删除步骤 2 中复制的全局文件。

          # rm global-file

      global-file

        指定要删除的全局文件的文件名称和完整路径。此文件是在步骤 2 中复制的全局文件。

   2. 从任何群集节点上，创建从文件的本地副本指向在步骤 a 中删除的全局文件的符号链接。

          # ln -s local-file global-file

      `-s`

        指定该链接为符号链接。

      local-file

        指定在步骤 2 中复制的文件为链接的源。

      global-file

        指定在步骤 a 中删除的文件的全局版本为链接的目标。

示例 4-2 创建特定于节点的文件

本示例显示了在双节点群集中创建特定于节点的文件所需的操作序列。按如下所示配置此群集：

- `ORACLE_HOME` 环境变量指定 `/global/oracle` 目录。

- 每个节点上的本地文件系统都位于 `/local` 目录下。

在每个节点上执行以下操作：

1. 要创建将包含用于维护特定于节点的信息的文件的本地目录，请运行以下命令：

       # mkdir -p /local/oracle/network/admin

2. 要为用于维护特定于节点的信息的全局文件创建本地副本，请运行以下命令：

       # cp -p $ORACLE_HOME/network/admin/snmp_ro.ora \
         /local/oracle/network/admin/.

       # cp -p $ORACLE_HOME/network/admin/snmp_rw.ora \
         /local/oracle/network/admin/.

仅在一个节点上执行以下操作：

1. 要删除全局文件，请运行以下命令：

       # rm $ORACLE_HOME/network/admin/snmp_ro.ora

       # rm $ORACLE_HOME/network/admin/snmp_rw.ora

2. 要创建从文件的本地副本指向其相应全局文件的符号链接，请运行以下命令：

       # ln -s /local/oracle/network/admin/snmp_ro.ora \
         $ORACLE_HOME/network/admin/snmp_rw.ora

       # ln -s /local/oracle/network/admin/snmp_rw.ora \
         $ORACLE_HOME/network/admin/snmp_rw.ora

###### 接下来的操作

请转至检验 Oracle RAC 的安装。

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