Saturday, March 14, 2020

Oracle Database 18c RPM Installation On Oracle Linux 6 (OL6) and 7 (OL7)

Oracle 18c can now be installed on Oracle Linux using an RPM. This article describes the RPM installation of Oracle Database 18c 64-bit on Oracle Linux 6 (OL6) and 7 (OL7) 64-bit. The article is based on a server installation with a minimum of 2G swap and secure Linux set to permissive.

◉ Hosts File


The "/etc/hosts" file must contain a fully qualified name for the server.

<IP-address>  <fully-qualified-machine-name>  <machine-name>

For example.

127.0.0.1       localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.56.107  ol7-183.localdomain  ol7-183

Set the correct hostname in the "/etc/hostname" file.

ol7-183.localdomain

◉ Oracle Installation


If you have a ULN subscription, the documentation suggests you can just install it using the following command as the "root" user. I don't have a ULN subscription, so I can't confirm this.

yum -y install oracle-database-ee-18c

If you don't have a ULN subscription, you will have to download the "oracle-database-ee-18c-1.0-1.x86_64.rpm" separately from the Oracle 18c (18.3) download page here.

With the RPM file downloaded, you can install the Oracle prerequisites and software using the following command as the "root" user. It automatically pulls down all dependencies, including the "oracle-database-preinstall-18c" package. If you do this the "oracle" user doesn't have a home directory created, so I install the preinstall package first, so the "oracle" user is as I expect it. The additional command is included below, but commented out.

#yum install -y oracle-database-preinstall-18c

yum -y localinstall oracle-database-ee-18c-1.0-1.x86_64.rpm

On RHEL you will need to manually get the prerequisites RPM from the Yum repository and run it manually before installing the database RPM.

# RHEL7
curl -o oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm
yum -y localinstall oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm
rm oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm

# RHEL6
curl -o oracle-database-preinstall-18c-1.0-1.el6.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL6/latest/x86_64/getPackage/oracle-database-preinstall-18c-1.0-1.el6.x86_64.rpm
yum -y localinstall oracle-database-preinstall-18c-1.0-1.el6.x86_64.rpm
rm oracle-database-preinstall-18c-1.0-1.el6.x86_64.rpm

The ORACLE_HOME for the software installation is "/opt/oracle/product/18c/dbhome_1".

◉ Create Database


In addition to the software installation, the RPM creates a script that allows you to create a demo database called "ORCLCDB", with a pluggable database (PDB) called "ORCLPDB1".

# /etc/init.d/oracledb_ORCLCDB-18c configure
Configuring Oracle Database ORCLCDB.
Prepare for db operation
8% complete
Copying database files
31% complete
Creating and starting Oracle instance
32% complete
36% complete
40% complete
43% complete
46% complete
Completing Database Creation
51% complete
54% complete
Creating Pluggable Databases
58% complete
77% complete
Executing Post Configuration Actions
100% complete
Database creation complete. For details check the logfiles at:
 /opt/oracle/cfgtoollogs/dbca/ORCLCDB.
Database Information:
Global Database Name:ORCLCDB
System Identifier(SID):ORCLCDB
Look at the log file "/opt/oracle/cfgtoollogs/dbca/ORCLCDB/ORCLCDB.log" for further details.

Database configuration completed successfully. The passwords were auto generated,
you must change them by connecting to the database using 'sqlplus / as sysdba' as the oracle user.
#

You can of course create a database in the normal way, using the Database Configuration Assistant (DBCA). You don't have to use this script.

◉ Thoughts


Here are some thoughts about this method of installation.
  • The mechanism is designed for a software-only installation of the Oracle database software. It is not a single command to get Oracle running. As a result it doesn't feel particularly simpler than doing a regular silent installation of the database software, but people with less experience may disagree.
  • The RPM can only be used to install the software, not update it. This is a "one-shot" solution.
  • You have no control of the software installation itself. If you have a corporate standard you use for your installations, this is not the solution for you. Remember, the ORACLE_HOME for the software installation is "/opt/oracle/product/18c/dbhome_1".
  • Even with a ULN subscription, it is unlikely you would want to pull this software down for each installation. You would need to create a local Yum repository to host it.
  • It's an interesting exercise, but I would not consider using this approach for anything other than demos at this time.

Related Posts

0 comments:

Post a Comment