In this article, you learned how to install Oracle Grid Infrastructure, which serves as the foundation for Oracle RAC. In this blog, we review the Oracle Database 12c Release 2 (18.104.22.168) RAC installation process. Installing the Oracle RAC database software is the next logical step after installing Oracle Grid Infrastructure, and creating an Oracle 12.2 release database is your last step in the process.
As we’ve already completed most of the required groundwork for the database installation as part of the preparation for the installation of Oracle Grid Infrastructure in the previous blog, our work is simple in this article. Installing the Oracle RAC software is quite similar to performing a single-instance Oracle Database software installation. Internally, the Oracle Universal Installer (OUI) installs the binaries on a single node, and it uses the underlying file-transfer mechanisms to propagate the files to other nodes, relinking them with the respective operating system binaries.
If you’ve previously worked with Oracle 11g Release 2, you might have noticed that Oracle has started delivering patch sets in the form of full-blown software instead of mere updates. In other words, they’re full releases. This facilitates out-of-place database upgrades and also avoids you having to install Oracle base release binaries and then upgrade to the latest patch set. If you’re planning to upgrade your databases that are running on previous releases, you’d be installing Oracle 12c RAC binaries into a different Oracle home. Installing Oracle 12c RAC binaries into pre-existing Oracle homes is not recommended, although it’s possible to do so.
Before you perform the Oracle 12c Release 1 RAC installation, make sure you have an operational Oracle Grid Infrastructure stack with the same or higher version.
Oracle RAC One Node is a single-instance Oracle RAC database that runs on a single machine preconfigured with Oracle Grid Infrastructure, which provides a kind of active/passive functionality. With RAC One Node, a single-instance RAC database runs on a single node in a cluster at any point in time.
Oracle RAC One Node
Oracle RAC One Node is a single-instance Oracle RAC database running on a single node preconfigured with Oracle Grid Infrastructure. By utilizing the clustering technology, the Oracle RAC One Node database allows on-demand migration of database instances to other servers, conversion to Oracle RAC without any downtime, and rolling patches for single-instance databases. Oracle RAC One Node also provides high availability for single-instance databases. Oracle provides the OMOTION utility to migrate Oracle RAC One Node database instances to other servers in the cluster online without any downtime.
Oracle internally uses transaction shutdown to migrate single instances online without impacting the current transactions, but Oracle ensures that two servers do not provide the same services at the same time. This is really a great feature because it allows large organizations to consolidate smaller single-instance databases in one place and at the same time allows them to standardize the deployment of Oracle databases within the organization with the option to increase the scalability of single-instance databases by upgrading them to Oracle RAC databases without any downtime.
Although not required, you can use the Cluster Verification Utility (cluvfy) for the pre–database installation check. You can run the Cluster Verification Utility in preinstallation mode to verify the basic node reachability and integrity of Oracle Clusterware. This also checks the basic kernel parameters and required operating system libraries. At the end, the utility checks the status of the Oracle Clusterware daemons and the network infrastructure issues. To confirm the install readiness on the hardware, run cluvfy (as the user grid) as shown here:
[oracle@racl grid_l]$ ./runcluvfy.sh stage -pre dbinst racl,rac2 -osdba dba Verifying Physical Memory ...PASSED Verifying Group Membership: oinstall(Primary) ...PASSED CVU operation performed: Verifying Group Membership: dba ...PASSED Verifying Run Level ...PASSED Date: CVU home: User: stage -pre dbinst Apr 25, 2017 6:04:58 PM /u01/app/12.2.0.l/grid_l/ oracle [oraclesracl grid 1]$
That is it! Now you are ready to start the installation of RAC after deciding the storage location for the datafiles. If you are currently using raw or block devices as your storage, you should plan on migrating to one of the supported shared storage options, such as ASM, CFS, or NFS, since Oracle 12c no longer supports raw devices, even during upgrades.
There’s no need to install and configure the ASM using Oracle database binaries before the database install because ASM is installed and configured with Oracle Grid Infrastructure. Because we’ll be using Oracle ASM to build this Oracle RAC database, you’ll need to create Oracle ASM disk groups to store the Oracle data and backups. This can be accomplished using the ASMCA utility running out of the Grid Infrastructure home.
Before the installation, you can adjust the environment settings for your favorite shell and start the Installer with the tracing option turned on (as discussed in detail in the previous article). Tracing will help you get the current stage of the Installer and debug the installation in case of a failure and/or hang.
In the following sections, we first describe the installation of the Oracle RAC software. Following this, we show how to use the Oracle Database Configuration Assistant (DBCA) to create an Oracle RAC database.
Installing Oracle Real Application Clusters
As with the Oracle Grid Infrastructure installation, you use the Oracle Universal Installer (OUI) to install the Oracle RAC binaries. OUI will install the Oracle RAC binaries on the first node and then copy them onto the other servers in the cluster.
You can run the cluvfy utility for the pre–database configuration checks, as shown here. You must run the utility as the user oracle.
[oracle@racl grid_l]$ ./runcluvfy.sh stage -pre dbcfg -n racl,rac2 -d orcl Verifying Physical Memory ...PASSED Verifying User Existence: oracle ...PASSED Verifying Group Existence: dba ...PASSED Verifying CRS Integrity ...PASSED Verifying DNS/NIS name service 'rac-scan ... Verifying ASM Integrity ... Verifying Node Connectivity ...PASSED CVU operation performed: Date: stage -pre dbcfg CVU home: Apr 25, 2017 6:08:53 PM User: /u01/app/12.2.0.l/grid_l/ oracle [oracle@racl grid 1] $
It’s not mandatory to run the cluvfy utility to check the prerequisites because the Oracle Universal Installer will run cluvfy internally to verify all prerequisites before installing Oracle RAC 12c Release 2.
As mentioned earlier, the Oracle RAC installation is as simple and straightforward as a single-instance environment once you satisfy the prerequisites. You can install the binaries from the installation media (CD-ROM or DVD) or from the staging area if you’ve extracted the software to disk.
Run through the following steps in an X client on only the first node in the cluster:
- Begin by invoking the Oracle Universal Installer (OUI), as shown here:
$ cd /u01/stage/12c/database $ ./runInstaller
The OUI will display the Configure Security Updates screen, shown in Figure 1, which allows you to specify your e-mail address registered with Oracle My Support and the password so that Oracle can notify you whenever a new security update is available.
FIGURE 1. The Configure Security Updates screen
Note that this requires the database servers to be connected to the Internet, and most datacenters don’t expose their database servers to the public network for security reasons. Uncheck the box labeled “I wish to receive security updates via My Oracle Support” on this screen. Click Next.
- The OUI will present the Select Installation Option screen, shown in Figure 2, where you specify the required installation and configuration option for the current install. This screen provides the following three installation options:
FIGURE 2. The Select Installation Option screen
- Create and configure a database This option is the default installation option, which installs Oracle RAC binaries and creates a database based on a preconfigured template. This option is useful especially for beginners because Oracle provides separate templates for different types of workloads, such as for OLTP and decision support systems.
- Install database software only This option installs only the Oracle RAC software on all the servers in the cluster. Database administrators mostly use this option, which allows them more flexibility while creating the database using the Database Configuration Assistant once Oracle RAC binaries are installed.
- Upgrade an existing database This option upgrades the existing Oracle RAC database in the cluster.
Because we’re going to create a database later with the Oracle Database Configuration Assistant (DBCA), select the second option (Install database software only) and click Next.
- In the Select Database Installation Option screen, shown in Figure 3, you can choose from among the following three options:
FIGURE 3. The Select Database Installation Option screen
- Single instance database installation This option allows you to install single-instance database software on the local node only.
- Oracle Real Application Clusters database installation This option allows you to select and install Oracle Real Application Clusters binaries on the selected nodes in the cluster.
- Oracle RAC One Node database installation This option installs Oracle RAC One Node database binaries on the selected node.
On this screen, select the option “Oracle Real Application Clusters database installation” and then click Next.
- After selecting the grid installation option, you will be taken to the Select List of Nodes screen, shown in Figure 4, where you select the list of nodes on which you want to install the RAC binaries. The local node is preselected for you. In our case, the local node is
rac1. We’ll select the additional node named
rac2. Click Next.
FIGURE 4. The Select List of Nodes screen
- OUI will now show you the Select Database Edition screen, shown in Figure 5, where you can choose between the Enterprise and Standard Edition of the Oracle RAC database. Select the option on this screen carefully based on the purchased licenses. We’ll choose the Enterprise Edition in this case. Click Next.
FIGURE 5. The Select Database Edition screen
- In the Specify Installation Location screen, shown in Figure 6, you specify the storage location for
ORACLE_HOME. The storage location for
ORACLE_HOMEwill always be unique. Our Oracle base location is
/u01/app/oracle, and the software location under the
FIGURE 6. The Specify Installation Location screen
- In the Privileged Operating System Groups screen, shown in Figure 7, select the database administrator and the database operator OS groups from the provided list of values. You should ensure that you are selecting the correct operating system group on this screen because a wrong selection may interfere with operation of the Oracle RAC database software. For simplicity, we’ll choose to specify the same group name (dba) as the value for all the groups.
FIGURE 7. The Privileged Operating System Groups screen
- In the Perform Prerequisite Checks screen, shown in Figure 8, the Oracle Universal Installer verifies the minimum requirements for installing the Oracle RAC database software. Oracle Universal Installer internally executes the Cluster Verification Utility to verify the operating system and hardware prerequisites. Based on the results of the verification tests performed by the utility, Oracle displays the failed prerequisites on this screen. Because we’ve run the Cluster Verification Utility before starting the Installer, we don’t expect any surprises at this stage.
FIGURE 8. The Perform Prerequisite Checks screen
OUI provides what are called “fix-up” scripts to repair the failed but fixable prerequisite requirements. Oracle marks each failed prerequisite with a Fixable status of Yes if it can be repaired by a fix-up script, which is also displayed on the screen. You can select the failed prerequisite with a Fixable status Yes and click the Fix & Check Again button on this screen to fix and verify the prerequisites again. Once the Installer verifies the required prerequisites successfully, click Next to continue.
- In the Summary screen, shown in Figure 9, Oracle displays the installation information. You should verify this information. You can also save this as a response file to use it for mass deployment with the silent install method. Refer to the Oracle Universal Installer Guide for running Oracle Universal Installer with a response file for automated deployment. Our step-by-step install process is known as an interactive installation process.
FIGURE 9. The Summary screen
Oracle Silent Installation
The silent installation method is used for mass deployment of Oracle products because using the interactive method to install Oracle software multiple times on multiple machines is time consuming and error prone. Also, silent install provides an option to have a uniform deployment pattern across the organization. This ensures multiple users in the organization use a standard installation option to install their Oracle products. This greatly helps the internal Oracle support teams because they already know what components and options are installed on each server and their environment settings, including locations of various trace files.
- Once you verify that the information displayed in the Summary screen is correct, click Install to start the software installation.
Installation of Oracle RAC software may take up to 30 minutes, depending on the hardware configuration. The Installer will copy all the required files to the Oracle database home directory and link the files with the operating system libraries.
Once the installation and linking is done at the local node, the Installer will copy the files to the remote node. During the entire process, you can see the status in the progress bar of the Install Product screen (see Figure 10). This progress bar shows the completion percentage.
FIGURE 5-10. The Install Product screen
- The OUI will next ask you to run the installation script as the superuser root. You need to open a new terminal window and run the root.sh script as the superuser on all nodes in the cluster (see Figure 11). This script creates the oraenv and oratab files under /etc and sets the Oracle executable permissions to the owner and group levels. The location of the file for the oratab entry is platform specific and normally found in either the
/var/opt/oracledirectory. This root.sh script must be run as the superuser root.
FIGURE 11. The Execute Configuration Scripts dialog box
- After you execute the root.sh script, go back to the Installer and click the OK button to display the Finish screen (see Figure 12).
FIGURE 12. The Finish screen
- Click the Close button in the Finish screen to close the Oracle Universal Installer.
Now that you’ve successfully installed the Oracle Database 12c software, you can create an Oracle RAC database, as we explain in the following section.
Creating the Oracle RAC Database
Creating the RAC database in an Oracle RAC environment is as simple as creating the database in a single-instance environment. The only change in the creation process using DBCA is to select the nodes in the Database Identification screen. Optionally, you can generate the scripts using DBCA and run them later.
To create a database using ASM-based storage for datafiles, walk through the following steps. (The number of steps may vary a bit based on the storage options you choose. However, the database-creation process is the same as creating the database in the ASM environment.)
- Create the ASM disk groups that will be used to store the datafiles. Use the Automatic Storage Management Configuration Assistant (also known as ASMCA) to create and manage the ASM instances, volumes, cluster file system, and disk groups.
You can launch ASMCA from the
$GRID_HOME/bin directory as the grid user. We’ll use the DATA disk group created as part of the Oracle Grid Infrastructure installation, but the typical steps for creating an ASM disk group include marking disks to be used by ASM and then creating the ASM disk group using any ASM client, such as ASMCA, ASMCMD, or SQL*Pus.
- Start the Database Configuration Assistant (DBCA) as the user oracle. Navigate to the
$ORACLE_HOME/bindirectory. If you want to enable tracing, you need to customize the Java Runtime Environment to get the trace information.
DBCA enables you to create, configure, or delete a cluster database and manage database templates.
- In the very first screen, which is named Select Database Operation, you can select from the following options, as shown in Figure 13:
FIGURE 13. The Select Database Operation screen
- Create a database
- Configure an existing database
- Delete database
- Manage templates
- Manage Pluggable databases
- Oracle RAC database instance management
- In the Select Database Creation Mode screen, shown in Figure 14, you’re offered two choices:
FIGURE 14. The Select Database Creation Mode screen
- Typical configuration This option requires minimal input from the user. You need to provide a global database name and storage details, if ASM is already configured (which could be the case if you’ve used ASM while configuring Grid Infrastructure). The required fields are auto-generated. Enter a password and fill in the pluggable database name if the database is being configured as a container database.
- Advanced configuration You can customize the database configuration by choosing this mode. This mode choice offers various options to customize the database creation, such the database configuration type (either policy-managed, which is the default in Oracle 12c, or admin-managed).
We’ll choose the Advanced Configuration option. Click Next.
- In the Select Database Deployment Type screen, shown in Figure 15, you choose whether you want an Oracle RAC database, a non-RAC database, or an Oracle RAC One Node database. We’ll choose to create an Oracle RAC database, of course.
FIGURE 15. The Select Database Deployment Type screen
Once you select the database type (RAC, in our case) in this screen, you also need to select between two configuration types: an admin-managed or a policy-managed database. Choose the Admin Managed option for the configuration type.
Oracle offers several predefined database configuration templates to make the process of creating a database easier. In the Select Database Deployment Type screen, Oracle provides predefined templates that you can use to create a new database based on the expected type of workload.
The Oracle-provided templates come with datafiles, but you can use these templates without datafiles if you want to customize database attributes such as block size. This screen displays three options:
- General Purpose or Transaction Processing
- Data Warehouse
- Custom Database
Each of the options provides preconfigured parameters/attributes for the new database, and the Custom Database option allows you to choose among these attributes and parameters. Regardless of your choice on this screen, you can still customize the database in later steps. Choose the General Purpose or Transaction Processing option on this screen and click Next.
- In the Select List of Nodes screen, select the nodes on which you want to create the cluster database and then click Next.
- In the Specify Database Identification Details screen, shown in Figure 16, select the global name of this cluster database and a prefix that will serve as the database service identifier.
FIGURE 16. The Specify Database Identification Details screen
The Global Database Name and SID Prefix values must start with an alphabetical character but can be followed by alphanumerical characters.
On this screen, the Installer requires you to also specify whether you want to create the new database as a container database. If you choose to do so, you can also specify the name and number of the PDBs.
- In the Select Database Storage Option screen (not shown), select ASM as the storage type for the database files and then choose the location for storing the database files. You can also specify whether to use the Oracle-Managed Files (OMF) for naming your datafiles.
- In the Select Fast Recovery Option screen (not shown), select the Specify Fast Recovery Area option as well as the Enable Archiving option.
- You can ignore the choices offered in the Select Oracle Data Vault Config Option screen for now.
- Select Automatic Memory Management in the Specify Configuration Options screen (not shown).
- In the Specify Configuration Options screen, you can specify various management options for the database, such as periodically running the Cluster Verification Utility checks.
- On the Specify Database User Credentials screen (not shown), specify passwords for the user accounts such as
- In the Select Database Creation Option screen, shown in Figure 17, you can choose between creating the database now or generating database-creation scripts for later use. It’s always a good practice to generate scripts to be able to see what is being run and have these scripts available for future reference. You can choose the location of the scripts in any local directory. By default, they are stored under the
$ORACLE_BASE/admindirectory. When you click Next, OUI performs all the required prerequisite checks and validations.
FIGURE 17. The Select Database Creation Option screen
By clicking the All Initialization Parameters button on this screen, you get the opportunity to modify any Oracle initialization parameters from their default values.
Admin-Managed or Policy-Managed Oracle RAC Database
An admin-managed Oracle RAC database is a traditional configuration approach where you can specify the servers in the cluster that will run the Oracle RAC database instances. You can also decide the preferred and available Oracle RAC database instances for a given database service. In a policy-managed Oracle RAC database, you don’t have flexibility to decide which server in the cluster will run the Oracle RAC database instance. Oracle will start the number of Oracle RAC database instances on servers in a server pool based on the cardinality of the Oracle RAC database.
In an admin-managed RAC database, there is a relation/association between the database service and the Oracle RAC database instance, whereas in a policy-managed Oracle RAC database, there is a relation between a database service and the server pool, because Oracle will automatically decide the RAC database instance, which will serve a given database service. A server pool is a pool of different servers in the cluster, which Oracle uses to automatically host database instances. You should always have a number of servers in the server pool greater than the number of Oracle RAC database instances specified in cardinality. The
SRVCTLutilities can be used to create and manage server pools in an Oracle RAC database.
Fast Recovery Area
The Fast Recovery Area is a dedicated storage location Oracle uses to store all database backup-related files so that in the event of database recovery, Oracle can quickly restore backup pieces from this dedicated storage location rather than fetching from the slow tape libraries. This storage is configured using two database initialization parameters:
DB_RECOVERY_FILE_DEST_SIZE. Oracle manages this storage area and automatically purges obsolete backups based on the backup retention policies.
- You’ll now be presented with the Summary screen (see Figure 18). Click Finish to start the script generation and database creation process.
FIGURE 18. The Summary screen
- Once the DBCA creates the database, it will provide a screen with a summary of the database it just created (see Figure 19). Click OK. The Installer creates the new RAC database and will automatically start it up. This database will be ready for its first use.
FIGURE 19. The Finish screen
You can check the status of the two instances of your new Oracle RAC database by running the following SRVCTL command:
[oracle@racl bin] $ pwd /u01/app/oracle/product/12.2.0/dbhome_l/bin (oracle@racl bin]$ ./srvctl status database -d orcl Instance orc11 is running on node racl Instance orcl2 is running on node rac2 (oracle@racl bin]$
It has been a bit of a tedious journey, but we now have our Oracle Database 12c Release 2 database running.
This blog covered the installation process of Oracle Database 12c Release 2 RAC binaries, as well as the creation of an Oracle Database 12c database. As we explained, the process is pretty similar to that of an Oracle single-instance database. The number of steps in the installation in your case may vary slightly depending on the options and configurations you select.
Oracle RAC One Node is a newly introduced option that helps build a single-database infrastructure that’s ready for the high availability features provided by Oracle Grid Infrastructure. Instance failures are detected by Oracle Clusterware and automatically restarted in another server in the server pool, which ensures failover protection for Oracle RAC One Node.
As you’ve probably noticed, we didn’t have to install and configure ASM separately. Because ASM is part of Oracle Grid Infrastructure, it was already set up during the Oracle Grid Infrastructure installation and configuration process.
Oracle RAC 12C video installation manual
1. Pre-installation tasks
2. Grid Infrastructure Installation
2. Grid Infrastructure Installation
3. Oracle Database Software Installation