1. Introduction
This document provides a
complete step-by-step guide for installing an Oracle 19c Standalone Database
using Oracle ASM (Automatic Storage Management).
ASM is Oracle’s recommended storage management solution providing striped,
mirrored, and highly optimized storage for Oracle databases.
This setup includes the
installation of:
- Oracle Grid Infrastructure (for ASM)
- ASM Instance Configuration
- Oracle Database 19c Software
- Creation of a Container Database
(CDB) and a Pluggable Database (PDB)
This architecture is
commonly used for:
2.
Environment Overview
|
Component |
Value |
|
OS |
Oracle Linux 7.x / RHEL
7.x |
|
Oracle Grid Version |
19.0.0.0 |
|
Oracle Database Version |
19.0.0.0 |
|
Server Type |
Standalone |
|
Storage |
ASM (+DATA, +RECO) |
|
DB Name |
prod |
|
CDB |
Yes |
|
PDB |
prods |
|
Memory |
As per system |
|
Oracle Home Path |
/u01/app/oracle/product/19/db_1 |
|
GRID Home Path |
/u01/app/19/grid |
3.
Prerequisites
3.1 Hardware Requirements
Standalone Server
- Minimum RAM: 8 GB (Recommended: 16
GB+)
- CPU: 2 vCPUs or more
- OS Disk: 100 GB (for Oracle binaries
+ OS)
- Network Adapters:
- eth0
– Public Network
Used for client connections, SSH, DB access, and future Data Guard configuration - Optional
NAT / Secondary Interface (if using VM):
Only for internet access to download packages
ASM Disk Storage (Local
to Single Server)
Since this is a standalone database, no shared storage
is required.
Only local disks are needed, but they must be visible to the Oracle user and
configured for ASM.
|
Disk Purpose |
Size |
Redundancy |
|
OCR + Voting Disk |
10–20 GB |
External redundancy |
|
DATA |
50–100 GB |
External redundancy |
|
FRA |
20–40 GB |
External redundancy |
3.2 Network Requirements
A standalone server requires only one primary network
interface, but the configuration should support future Data Guard
setup.
Public Network (eth0)
Used for:
- Client/database connections
- SQL*Net communication
- Future Data Guard redo transport
Example configuration:
- Hostname:
standby.localdomain - IP
Address:
192.168.18.18
(This IP will later be
used as Data Guard Standby or standalone primary.)
Optional NAT Adapter (VM
environments only)
Used only for:
- Yum updates
- Package installations
- Internet access
This interface is not
used by Oracle.
4.
Download Required Oracle Software
For a standalone Oracle
19c database running on ASM, you must download the necessary Oracle software
packages. These include the Oracle Grid Infrastructure (for ASM) and the
Oracle Database 19c Home (DB Home). Both components are required even in
a single-node setup, as Grid Infrastructure provides the ASM instance used for
database storage management.
Required Software
Packages
Download the following
from the official Oracle website:
1.
Oracle Grid Infrastructure for
Standalone Server (19c)
This package includes:
o ASM
(Automatic Storage Management)
o Oracle
Restart
o Grid
Infrastructure components needed to manage ASM disk groups
2.
Oracle Database 19c Software
(Database Home)
This package includes the database binaries required to install:
o The
CDB (Container Database)
o The
PDB (Pluggable Database)
o Associated
Oracle utilities
Link :- Oracle
Database 19c Download for Linux x86-64 | Oracle Türkiye
-------- Download the two
ZIP files shown in the picture by clicking the link above --------
Installation has 6
phases:
• Installing the
Operating System and Preparing the Servers
• Configuring the Disks
with Oracleasm
• Installation Phase 1-
Installing Grid
• Installation Phase 2-
Installing Oracle Software
• Installation Phase 3-
Adding Disk Group with asmca
• Installation Phase 4-
Creating Database with DBCA
5.
Installing the Operating System and Preparing the Servers
The
operating system Oracle Linux 7.9 has been installed on VMware
Workstation 15.5.
You may continue using this same server to proceed with the Standalone ASM
and Oracle 19c Database installation.
Upon booting the server,
update the operating system and download the packages needed in the
installation.
# yum -y update
# yum install
-y oracle-database-preinstall-19c.x86_64
# yum install
-y oracleasm-support
# yum install
-y dnsmasq*
Change the hostname
:
# vi
/etc/hostname
Disable "Secure
Linux" :
# vi
/etc/selinux/config
SELINUX=disabled
Stop and disable “Firewall”
service :
# systemctl
stop firewalld.service
# systemctl
disable firewalld.service
Create the folder
indexes. To move the files needed in the installation, I create an index named
“/u01/oraInstall”. If you wish, you can move installation files
somewhere else.
# mkdir -p
/u01/app/19/grid
# mkdir -p
/u01/app/oracle/product/19/db_1
# mkdir -p
/u01/oraInstall
# chown -R
oracle:oinstall /u01
# chmod -R 775
/u01
Change the password of
the Oracle user.
# passwd oracle
User and Group
Configuration for ASM (Using Only oracle User)
Since ASM and the Oracle
Database will both run under the same oracle user, it is necessary to
create the required ASM–related OS groups and assign the oracle user to them.
These groups control administrative permissions for ASM and are mandatory for
installing Grid Infrastructure on a standalone server.
Create ASM-Specific
Groups
Run the following
commands as root:
# groupadd -g
54327 asmdba
# groupadd -g
54328 asmoper
# groupadd -g
54329 asmadmin
Add Oracle User to All
Required Groups
These groups provide
permissions for database administration, ASM access, backup, and Data Guard
operations.
# usermod -g oinstall -G
dba,oper,backupdba,dgdba,kmdba,asmdba,asmoper,asmadmin,racdba oracle
Verification
To confirm that the
oracle user belongs to all necessary groups, run:
# id oracle
We’ll add 1 ethernet
cards to our server, that’s why we shut down the server.
# shutdown -h
now
Click "Edit
virtual machine settings".
Click “Add”.
Select “Network
Adapter” and click “Finish”.
Add 1 ethernet cards as “host-only”.
Boot the server.
Ethernet card is added to
the server as “ens36” Click “connect”.
Manage settings for “ens36”.
This card will be used for “Used for client connections, SSH, DB access, and
future Data Guard configuration”.
edit the file /etc/hosts.
# vi /etc/hosts
# shutdown -h
now
Before attaching the ASM
disks to the Linux server, create a dedicated folder on the Windows host
system where all virtual disks will be stored.
Since we will create three
ASM disk groups, add the following disks:
- 20 GB
disk for OCR + Voting (OCRVD)
- 30 GB
disk for DATA
- 20 GB
disk for FRA (RECO)
After adding these disks
to the VM, shut down the standalone server once to ensure the OS
properly detects the newly attached storage.
Once the server is started again, you can proceed with configuring these disks
for ASM using oracleasm utility.
Click “Edit virtual
machine settings”.
Click “Add” and
then “Hard Disk”.
Select “NVME”.
Create a new virtual disk
and continue.
Click “Allocate all disk space now” and “Next”.
I create the first disk named “OCRVD” in the
folder I’ve created before.
We’ve created the first disk, let’s add two more disk
named “DATA” & “RECO” in that index in the same way.
6. Configuring
the Disks with Oracleasm
Check the disks you’ve
added.
# ls -al /dev/nvme*
The disks “nvme0n1”,
“nvme0n2”, and “nvme0n3” are the virtual disks attached earlier for ASM
storage. These disks will be used to create the ASM disk groups (OCR/Voting,
DATA, and FRA). Before ASM can use them, we need to create partitions on these
disks.
We will perform the
partitioning using the fdisk command.
Partitioning nvme0n1 :
Partitioning nvme0n2 :
Partitioning nvme0n3 :
You
see the partitions created as “nvme0n1p1”, “nvme0n2p1”, and “nvme0n3p1”
# ls -al /dev/nvme*
Next, configure the Oracle
ASM Library (ASMLib), which provides a consistent and reliable interface
for managing disks used by Oracle Automatic Storage Management. After
configuring ASMLib, the shared disks must be stamped or marked so
Oracle can recognize them as ASM-compatible devices.
Stamping the disks assigns them unique ASM labels, allowing Grid Infrastructure
to identify and use them correctly when creating the OCR/Voting, DATA, and FRA
disk groups.
Configure Oracleasm.
# oracleasm configure -i
Check the parameters.
# oracleasm configure
# oracleasm init
# oracleasm createdisk OCRVD /dev/nvme0n1p1
# oracleasm createdisk DATA /dev/nvme0n2p1
# oracleasm createdisk RECO /dev/nvme0n3p1
# oracleasm scandisks
# oracleasm listdisks
Transfer
Installation Files to the Linux Server
After downloading the
required Oracle installation files in Step 4 (Grid Infrastructure and
Oracle Database Home), transfer them from your Windows machine to standalone
server only using WinSCP.
1. Open
WinSCP and connect to server using the oracle user.
2. Navigate
to the desired folder on the Linux server (example: /u01/oraInstall or
any folder you created for installation files).
3. Upload
the downloaded zip files:
· Grid
Infrastructure installation file
· Oracle
Database Home installation file
# chmod 777
/u01/oraInstall/LINUX*
Switch to Oracle
user and create profile files.
# su - oracle
$ vi .profile_grid
$ vi
.profile_db
Upon creating the
profiles, start chrony service on server.
# systemctl
enable chronyd
# systemctl
restart chronyd
7.
Installation Phase 1- Installing Grid
Unzip with the Oracle
user.
$ unzip
LINUX.X64_193000_grid_home.zip -d /u01/app/19/grid/
After unzip is Done. Install
“cvuqdisk” with root user.
# rpm -Uvh
cvuqdisk-1.0.10-1.rpm
Before starting the
installation, enable the GUI by setting export DISPLAY=:0 and
allow root access with xhost +.
reboot the system before
beginning. Log in as the Oracle user, set up the Grid environment by sourcing
the profile script, and then start the installation.
$ .
.profile_grid
$ cd
/u01/app/19/grid
$
./gridSetup.sh
Start the installation by
clicking “Configure Oracle Grid Infrastructure for a Standalone Server”.
Choose the index, where
you’ve defined the disks, with Change Discovery Path. Make the Disk Group Name OCRVD.
Select External in Redundancy.
High Redundancy:
Data is stored with 3 different copies. No data loss even 2 groups crash.
Normal Redundancy:
Data is stored with 2 different copies. No data loss even the other group
crashes.
External Redundancy:
Data is stored with only a copy. It’s better if you store systems in normal
redundancy disk groups.
Choose the passwords. You
can choose a different password, I’ll use the same.
Click “Next” since
we won’t use EM Cloud Control.
Adjust the groups.
Check if the Oracle Base
index is correct.
Click “Next”.
I suggest running the
scripts manually but since this is a test environment, we’ll run them
automatically.
No problem seen in
pre-check.
Click “Install”
and start the installation.
It asks for permission to
run the scripts automatically. Click “Yes” and allow it.
This is how installing
Grid ends.
Next, verify the Grid
Infrastructure status by running:
$ crsctl stat
res -t
This command displays the
Clusterware resource status in a tree format. It shows the state of
essential cluster components such as:
- Cluster Synchronization Services
(CSS)
- Cluster Ready Services (CRS)
- ASM instance
- Listener resources
- other cluster-managed services
If everything is
configured properly, you will see resources running with status ONLINE,
confirming that your Grid Infrastructure is functioning correctly.
8.
Installation Phase 2- Installing Oracle Software
Unzip with the Oracle user.
$ unzip LINUX.X64_193000_db_home.zip -d
/u01/app/oracle/product/19/db_1
After unzip is Done . set
up the db environment by sourcing the profile script, and then start the
installation.
$ . .profile_db
$ cd /u01/app/oracle/product/19/db_1
$ ./runInstaller
Click “Software only”.
Click “Single Instance database installation”.
Click “Enterprise Edition”.
Be sure that software location is the “/u01/app/oracle/product/19/db_1”
index.
Click “Next”.
Write the root password to run the scripts
automatically.
Click “Install”.
Approve to run the scripts automatically.
Finish the software installation by clicking “Close”.
9. Installation
Phase 3- Adding Disk Group with asmca
Creating the disk groups required for the Standalone
database, we will use the ASM Configuration Assistant (asmca) tool. This
utility allows us to graphically create and manage ASM disk groups such as DATA
and FRA.
Before launching asmca, ensure that the correct
Grid Infrastructure environment is loaded. To do this, log in as the oracle
user and source the .profile_grid file:
$ . .profile_grid
$ asmca
Once the environment is set, you will be ready to
start asmca to create the ASM disk groups that will store the database
files.
As you see, we have one disk group which we created
during grid installation.
Right click “Disk Groups” and click “Create”.
I name the disk group as “DATA” & “RECO”
where we’ll create the database. You can name it however you want. Add the disk
you’ve configured with Oracleasm before. Click “OK”.
We’ve created the disk group. You can view disk groups
as in the picture. Click “Exit” and leave the asmca tool.
10. Installation
Phase IV- Creating Database with DBCA
you must load the Database
Home environment using the .profile_db file. Once the database environment
variables are active, you can start the Database Configuration Assistant
(DBCA) to create the database:
$ . .profile_db
$ dbca
The DBCA tool will guide
you through the graphical interface to configure a Standalone database,
including selecting the database name, storage options (ASM), character set,
memory settings, and pluggable database (PDB) configuration.
Click “Create a
database”.
Click “Advanced
Configuration”.
Click “General Purpose
or Transaction Processing” and click “Next”.
You need to name the
database and adjust sid value. We chose both as ‘test’. Click “Create as Container database”
name PDB as ‘test-pdb’ and continue.
Select “+DATA”
which is a disk group we’ve added.
Enable “Archiving”
and Select “FRA”.
Since we’ll not use “DB
Vault” and “Label Security”, click “Next”.
We’ll continue by using
ASSM, if you wish you can use something else in accordance with your system.
What’s important is that, the value shouldn’t exceed two third of the physical
RAM value of the server.
You may activate the “HR”
schema if you wish. Click “Next”.
Continue because we won’t
use cloud control.
Choose the passwords for
“SYS” and “SYSTEM”.
Select “Create
Database”.
Click “Finish” and
start the installation.
Click “Close” and
finish the installation.
11.
Final Status Verification
12.
Summary
In this deployment, a
fully functional Standalone Oracle Database 19c environment utilizing Automatic
Storage Management (ASM) was successfully installed and configured on
Oracle Linux 7.9 hosted on VMware Workstation.
The following major
components were completed:
- Operating system preparation:
Installed the oracle-database-preinstall-19c RPM to configure kernel
parameters and users.
- Storage configuration:
Added dedicated hard disks for ASM storage.
- Grid Infrastructure installation:
Configured Oracle Grid Infrastructure for a Standalone Server (Oracle
Restart) to manage the ASM instance and high-availability services.
- ASM disk groups setup:
Created the OCRVDDG disk group (and others as required) for database file
storage.
- Database Home installation:
Installed the Oracle Database 19c software home on top of the Grid
Infrastructure.
- Standalone database creation:
Configured a Single Instance Database (CDB + PDB) using ASM for all
datafiles.
- Environment setup:
Configured the .oraenv profiles for seamless switching between the
database and ASM instances.
- Validation:
Verified the health of ASM disk groups and database background processes
to ensure system stability.
The system is now
operational, utilizing Oracle Restart for automated service management,
and is ready for standalone database workloads.