This guide presents how to deploy Oracle Database 12c (12.1.0.2.0) on CentOS 7.1 (64-bit) using quick installation features.
Reference System:
[root@centos7 ~]# hostnamectl Static hostname: centos7.example.com Icon name: computer Chassis: n/a Machine ID: 583b4d69eaea465ea4bb96ac3b891e15 Boot ID: 931ed1af622046ebbde071a87844a7d5 Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-229.11.1.el7.x86_64 Architecture: x86_64
After a successful OS installation, verify the hostname and register it in your DNS. Alternatively add your hostname/IP to the /etc/hosts.
[root@centos7 ~]# cat /etc/hostname centos7.example.com
Leave the SELinux in enforcing mode as well as the firewall enabled
[root@centos7 ~]# sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: enforcing Mode from config file: enforcing Policy MLS status: enabled Policy deny_unknown status: allowed Max kernel policy version: 28
[root@centos7 ~]# firewall-cmd --state running
Update the CentOS system with the latest packages
[root@centos7 ~]# yum update -y
Download the Oracle Database 12c for Linux x86-64 software:
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
Create required OS users and groups for Oracle Database.
[root@centos7 ~]# groupadd oinstall [root@centos7 ~]# groupadd dba [root@centos7 ~]# useradd -g oinstall -G dba oracle [root@centos7 ~]# passwd oracle
Extract the zipped Oracle Database Software archives (linuxamd64_12102_database_1of2.zip, linuxamd64_12102_database_2of2.zip) to the /stage folder.
[root@centos7 ~]# yum install -y zip unzip [root@centos7 ~]# unzip linuxamd64_12102_database_1of2.zip -d /stage/ [root@centos7 ~]# unzip linuxamd64_12102_database_2of2.zip -d /stage/
Modify permissions on /stage
[root@centos7 ~]# chown -R oracle:oinstall /stage/
Create /u01 directory for Oracle software and /u02 for database files.
[root@centos7 ~]# mkdir /u01 [root@centos7 ~]# mkdir /u02 [root@centos7 ~]# chown -R oracle:oinstall /u01 [root@centos7 ~]# chown -R oracle:oinstall /u02 [root@centos7 ~]# chmod -R 775 /u01 [root@centos7 ~]# chmod -R 775 /u02 [root@centos7 ~]# chmod g+s /u01 [root@centos7 ~]# chmod g+s /u02
Install required packages:
[root@centos7 ~]# yum install -y binutils.x86_64 compat-libcap1.x86_64 gcc.x86_64 gcc-c++.x86_64 glibc.i686 glibc.x86_64 \ glibc-devel.i686 glibc-devel.x86_64 ksh compat-libstdc++-33 libaio.i686 libaio.x86_64 libaio-devel.i686 libaio-devel.x86_64 \ libgcc.i686 libgcc.x86_64 libstdc++.i686 libstdc++.x86_64 libstdc++-devel.i686 libstdc++-devel.x86_64 libXi.i686 libXi.x86_64 \ libXtst.i686 libXtst.x86_64 make.x86_64 sysstat.x86_64
Also install the "X Window System" package group.
[root@centos7 ~]# yum groupinstall -y "X Window System"
Because the Oracle installation requires GUI, there are two simple ways how to provide it.
Solution 1.
Login remotely from a graphical Linux machine via SSH.
ssh -X oracle@centos7.example.com
Solution 2.
Use a Microsoft Windows desktop with an SSH Client (PuTTY) and an X-Windows terminal emulator (Xming).
The following article describes how to install Xming on Windows systems.
* Xming X-Windows terminal emulator for Microsoft Windows computers
Use a solution above to login as "oracle" user and run the Oracle Installer:
[oracle@centos7 ~]$ /stage/database/runInstaller Starting Oracle Universal Installer...
STEP 1 - Security Updates
If you don't wish to receive emails from Oracle Support then deselect the check box and click Next.
Another window opens click YES on it.
STEP 2 - Installation Option
Select Create and configure a database and click Next
STEP 3 - System Class
Select Desktop Class for a simple default installation of the Oracle Database.
STEP 4 - Typical Installation
On the Typical Install Configuration screen, specify the key features.
Also specify the suitable Database edition as well as the Character set. Provide a strong password for database administration and finally deselect the Create as Container database option.
STEP 5 - Create Inventory
Accept the default /u01/app/oraInventory and click Next.
STEP 6 - Prerequisite Checks
The Installer automatically verifies all required OS packages and OS kernel settings.
STEP 7 - Summary
Final chance to edit any installation features. Click Install.
STEP 8 - Execute Configuration Scripts
When a request window appears, login as root and execute two scripts:
[root@centos7 ~]# /u01/app/oraInventory/orainstRoot.sh Changing permissions of /u01/app/oraInventory. Adding read,write permissions for group. Removing read,write,execute permissions for world. Changing groupname of /u01/app/oraInventory to oinstall. The execution of the script is complete.
[root@centos7 ~]# /u01/app/oracle/product/12.1.0/dbhome_1/root.sh Performing root user operation. The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/oracle/product/12.1.0/dbhome_1 Enter the full pathname of the local bin directory: [/usr/local/bin]: <PRESS ENTER> Copying dbhome to /usr/local/bin ... Copying oraenv to /usr/local/bin ... Copying coraenv to /usr/local/bin ... Creating /etc/oratab file... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root script. Now product-specific root actions will be performed. You can follow the installation in a separated window.
Both scripts must run as root.
STEP 9 - Installation progress
Another window opens to show you the installation progress. Do not close this window.
STEP 10 - Installation completed successfully
The last screen inform that the installation is done and displays the Oracle Enterprise Manager URL.
Click OK to close the Installer.
Login as root and verify the active zones
[root@centos7 ~]# firewall-cmd --get-active-zones public interfaces: eth0
Open the related ports
[root@centos7 ~]# firewall-cmd --zone=public --add-port=1521/tcp --add-port=5500/tcp --add-port=5520/tcp --add-port=3938/tcp \ --permanent success
[root@centos7 ~]# firewall-cmd --reload success
[root@centos7 ~]# firewall-cmd --list-ports 1521/tcp 3938/tcp 5500/tcp 5520/tcp
Login as oracle user and add the following values to the /home/oracle/.bash_profile
TMPDIR=$TMP; export TMPDIR ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/12.1.0/dbhome_1; export ORACLE_HOME ORACLE_SID=orcl; export ORACLE_SID PATH=$ORACLE_HOME/bin:$PATH; export PATH LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/lib64; export LD_LIBRARY_PATH CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
Reload the bash_profile to apply the new settings:
[oracle@centos7 ~]$ . .bash_profile
Finally login to the database:
[oracle@centos7 ~]$ sqlplus system@orcl ... output omitted ... Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options SQL>
Manage database with Oracle Enterprise Manager: