Introduction:
Oracle Database 19c stands as a pinnacle of reliability, performance, and security in the world of enterprise-level databases. This article will show step-by-step guide for installing and configuring an Oracle Database 19c on Oracle Linux 8.9. this is first time for me to install oracle database on Oracle Linux 8.9 server on virtualization infrastructure. As a reference, I used the article “Oracle Database 19c Installation On Oracle Linux 8 (OL8)” and followed all the step-by-step process.
Prerequisites:
- Oracle Linux Server: Ensure that you have a compatible version of Oracle Linux installed. Oracle Linux 7 or higher is recommended for Oracle Database 19c. If you need to set up Oracle Linux, refer to the post to represent how to install oracle Linux 9.1 in virtual machine.
- Minimum System Requirements: Oracle Database 19c demands a considerable amount of system resources. Make sure your server meets the minimum requirements listed in the Oracle documentation.
- Download Oracle Database Installation file: Download the Oracle Database 19c installation files from the official Oracle Technology Network (OTN) website.
Following software used while installing oracle database 19c on oracle Linux server 8.9.
- OS: Oracle Linux server 8.9
- SSH Terminal: MobaXterm
- Database: Oracle Database 19c (19.3)
Environment Readiness:
There are some prerequisite setups that needs to be performed before kicking of the installation process of Oracle Database 19c. These steps are shown below.
Step 1:
Ensure your Oracle Linux server is up-to-date by running:
sudo yum update && Yum Upgrade -y
Step 2:
Get the IP Address using ‘ifconfig’ or ‘ip addr’ command. For example:
[root@oraclelinux ~]# ifconfig
ens192: flags=4163 mtu 1500
inet 172.16.17.252 netmask 255.255.0.0 broadcast 172.16.255.255
inet6 fe80::20c:29ff:fed4:a073 prefixlen 64 scopeid 0x20
ether 00:0c:29:d4:a0:73 txqueuelen 1000 (Ethernet)
RX packets 433883 bytes 44947951 (42.8 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 856 bytes 101947 (99.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Step 3:
Get the hostname.
[root@oraclelinux ~]# hostname
oraclelinux.test.com
Step 4:
Amend the IP address and hostname to “/etc/hosts” file to resolve the hostname. You can use the nano editor for this like
[root@oraclelinux ~]# sudo nano /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.17.252 oraclelinux.test.com
Step 5:
Next, download “oracle-database-preinstall-19c” package. This package will perform all the setups that are necessary to install 19c.
[oracle@oraclelinux deinstall]$ dnf install -y oracle-database-preinstall-19c
….
….
……………
Installed:
binutils-2.30-119.0.1.el8.x86_64 glibc-devel-2.28-225.0.3.el8.x86_64 ksh-20120801-257.0.1.el8.x86_64 libICE-1.0.9-15.el8.x86_64 libSM-1.2.3-1.el8.x86_64 libXcomposite-0.4.4-14.el8.x86_64 libXi-1.7.10-1.el8.x86_64 libXinerama-1.1.4-1.el8.x86_64 libXmu-1.1.3-1.el8.x86_64 libXrandr-1.5.2-1.el8.x86_64 libXt-1.1.5-12.el8.x86_64 libXtst-1.2.3-7.el8.x86_64 libXxf86dga-1.1.5-1.el8.x86_64 libXxf86misc-1.0.4-1.el8.x86_64 libaio-devel-0.3.112-1.el8.x86_64 libdmx-1.1.4-3.el8.x86_64 libnsl-2.28-225.0.3.el8.x86_64 libstdc++-devel-8.5.0-18.0.2.el8.x86_64 libxcrypt-devel-4.1.1-6.el8.x86_64 lm_sensors-libs-3.4.0-23.20180522git70f7e08.el8.x86_64 make-1:4.2.1-11.el8.x86_64 oracle-database-preinstall-19c-1.0-2.el8.x86_64 sysstat-11.7.3-9.0.1.el8.x86_64 xorg-x11-utils-7.5-28.el8.x86_64 xorg-x11-xauth-1:1.0.9-12.el8.x86_64
Complete!
Step 6:
Next, Edit “/etc/selinux/config” file to set “SELINUX=permissive“ with command
[oracle@oraclelinux deinstall]$ nano /etc/selinux/config
It is recommended that you restart the server after this step.
Step 7:
Disable firewall.
[root@oraclelinux /]# systemctl stop firewalld
[root@oraclelinux /]# systemctl disable firewalld
Setting-up our oracle user account
Step 1:
we are going to set the password for the oracle user that was created during installation process. First we need to log-in as a root user. Then, we can change the password.
[root@oraclelinux /]# passwd oracle
Changing password for user oracle.
New password:
BAD PASSWORD: The password fails the dictionary check – it is based on a dictionary word
Retype new password:
passwd: all authentication tokens updated successfully.
Step 2:
Now, we are going to give the oracle user root privileges through /etc/sudoers file. We can edit the sudoers files by using the visudo command. Press Shift+G to navigate to the bottom of the document. Press the letter “i” on your keyboard to begin editing the document. Once you complete this task, hit the ESC button, and type :wq at the bottom of text editor.
[root@oraclelinux /]# sudo visudo
Step 3:
Some additional packages need to install for oracle database 19c while installing on Oracle Linux (OL8).
dnf install -y unixODBC
dnf install -y libnsl
dnf install -y libnsl.i686
dnf install -y libnsl2
dnf install -y libnsl2.i686
Step 4:
creating new users and groups which might not be installed by oracle auto installation package “oracle-database-preinstall-19c” and add following user.
useradd -u 54321 -g oinstall -G dba,oper oracle
groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper
groupadd -g 54324 backupdba
groupadd -g 54325 dgdba
groupadd -g 54326 kmdba
groupadd -g 54327 asmdba
groupadd -g 54328 asmoper
groupadd -g 54329 asmadmin
groupadd -g 54330 racdba
Creating an Oracle home directory
Next, we are going to be creating an Oracle home directory and giving ownership of that directory to the user, oracle.
[root@oraclelinux /]# su oracle
Now, we are going to be creating our home directory with following commands into terminal
[oracle@oraclelinux /]$ sudo mkdir -p /u01/app/oracle/product/19c/dbhome_1
[oracle@oraclelinux /]$ sudo mkdir -p /u02/oradata
[oracle@oraclelinux /]$ sudo chown -R oracle:oinstall /u01 /u02
[oracle@oraclelinux /]$ sudo chmod -R 777 /u01 /u02
Setting-up a bash_profile environment
1- Create a directory for hosting the scripts and navigate to the directory.
[oracle@oraclelinux /]$ mkdir /home/oracle/scripts
2- Create an environment file called “setEnv.sh” using the script below.
[oracle@amsoradb ~]$ sudo nano /home/oracle/scripts/setEnv.sh
#Oracle Settings export TMP=/tmp export TMPDIR=\$TMP export ORACLE_HOSTNAME=ol8-19.localdomain export ORACLE_UNQNAME=cdb1 export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=\$ORACLE_BASE/product/19.0.0/dbhome_1 export ORA_INVENTORY=/u01/app/oraInventory export ORACLE_SID=cdb1 export PDB_NAME=pdb1 export DATA_DIR=/u02/oradata export PATH=/usr/sbin:/usr/local/bin:\$PATH export PATH=\$ORACLE_HOME/bin:\$PATH export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=\$ORACLE_HOME/jlib:\$ORACLE_HOME/rdbms/jlib |
2- Add a reference to the “setEnv.sh” file at the end of the “/home/oracle/.bash_profile” file.
[oracle@oraclelinux /]$ echo “. /home/oracle/scripts/setEnv.sh” >> /home/oracle/.bash_profile
and verify the reference of setEnv.sh file added in .bash_profile.sh file, use following command
[oracle@amsoradb ~]$ nano /home/oracle/.bash_profile
Start Installation
For interactive mode, I generally launch the installer through MobaXterm. Download MobaXterm on the Host machine, open a console and connect to your Linux machine using ‘ssh’ and IP address of the Linux machine with oracle user, as shown in the screenshot below.
Run oracle installer
Navigate to the folder where you have unzipped the Oracle using MobaXterm console and execute ‘runInstaller’.
[oracle@oraclelinux /]$ cd /u01/app/oracle/product/19c/dbhome_1
[oracle@oraclelinux dbhome_1]$ ./runInstaller
Then you will see the installation wizard started, first the oracle splash screen then wizard ask to click on Next to move next step. if you counter an issue ” [INS-08101] Unexpected error while executing the action at state: ‘supportedOSCheck” then click on below link
How to resolve INS-08101 Unexpected error
Once you resolved the above issue then the normal installation wizard will start and again the same error [INS-08101] will not appear.
To see further steps of oracle database installation on Linux click on below link