Adding Oracle RAC to Nodes with Oracle Clusterware Installed

Before beginning this procedure, ensure that your existing nodes have the correct path to the Grid_home and that the Oracle_home environment variables are set correctly.

See Also:

Oracle Clusterware Administration and Deployment Guide for information about adding nodes to a cluster

To add Oracle RAC database instances to nodes that already have Oracle Clusterware installed, you must extend the Oracle RAC home that is on an existing node (node1 in this procedure) of the cluster to the target nodes.

  1. Navigate to the Oracle_home\addnode directory on node1 and run the addnode.bat script using the following syntax, where node2 is the name of the node you are adding:

    addnode.bat "CLUSTER_NEW_NODES={node2}"

    To run this command in silent mode:

    addNode.bat -silent "CLUSTER_NEW_NODES={node2}"

    For the Oracle home directory you use, if an Oracle home user was specified when the Oracle Database software was installed, then OUI requires the password for the Oracle home user. OUI checks the wallet (stored in the OCR) for the user and extracts the password from there. If the user information is not contained in the wallet, then the addnode.bat script generates an error unless you specify the -promptPasswd flag on the command line.

  2. If you store your policy-managed database on Oracle Automatic Storage Management (Oracle ASM), Oracle Managed Files is enabled, and if there is space in a server pool for node2, then crsd adds the Oracle RAC database instance to node2 and no further action is necessary. If Oracle Managed Files is not enabled, then you must manually add undo and redo logs.

    If there is no space in a server pool, then node2 moves into the Free server pool. Use the srvctl modify srvpool command to increase the cardinality of the server pool to accommodate node2, after which time node2 moves out of the Free server pool and into the modified server pool, and crsd adds the Oracle RAC database instance to node2.

  3. If you have an administrator-managed database, then add a new instance on node2 as described in "Adding Administrator-Managed Oracle RAC Database Instances to Target Nodes".

If you have a shared Oracle home that is shared using Oracle Automatic Storage Management Cluster File System (Oracle ACFS), then do the following to extend the Oracle database home to node2:

  1. Start the Oracle ACFS resource on the new node by running the following command as root from the Grid_home\bin directory:

    srvctl start filesystem -d volume_device_name [-n node_name]

    Note:

    Make sure the Oracle ACFS resources, including Oracle ACFS registry resource and Oracle ACFS file system resource where the Oracle home is located, are online on the newly added node.

  2. Run the following command as the user that installed Oracle RAC from the Oracle_home\oui\bin directory on the node you are adding to add the Oracle RAC database home:

    setup.exe -attachHome ORACLE_HOME="ORACLE_HOME" LOCAL_NODE="node2"
    ORACLE_HOME_NAME="home_name" -cfs
  3. Navigate to the Oracle_home\addnode directory on node1 and run the addnode.bat script as the user that installed Oracle RAC using the following syntax:

    addnode.bat -noCopy "CLUSTER_NEW_NODES={node2}"

    Note:

    Use the -noCopy option because the Oracle home on the destination node is already fully populated with software.

If you have a shared Oracle home on a shared file system that is not Oracle ACFS, then you must first create a mount point for the Oracle RAC database home on the target node, mount and attach the Oracle RAC database home, and update the Oracle Inventory, as follows:

  1. Run the srvctl config database -db db_name command on an existing node in the cluster to obtain the mount point information.

  2. Mount the file system that hosts the Oracle RAC database home.

  3. Run the following command as the user that installed Oracle RAC from the Oracle_home\oui\bin directory on the node you are adding to add the Oracle RAC database home:

    setup.exe -attachHome ORACLE_HOME="ORACLE_HOME" "CLUSTER
    _NODES={local_node_name}" LOCAL_NODE="node_name" ORACLE_HOME_NAME="home_name"
  4. Update the Oracle Inventory as the user that installed Oracle RAC, as follows:

    setup.exe -updateNodeList ORACLE_HOME=mount_point_path "CLUSTER_NODES={node_list}"

    In the preceding command, node_list refers to a list of all nodes where the Oracle RAC database home is installed, including the node you are adding.

Note:

Oracle recommends that you back up your voting disk and Oracle Cluster Registry (OCR) files after you complete the node addition process.