ASM on vmware workstation  



Step 1:

Set up Oracle Database Server on VMware Workstation using( OEL) Linux 7.6 OS Platform?


Step 2:

Connect to OEL 7.6 server via putty and install the below packages

 yum -y install -y oracle-database-preinstall-19c

yum -y install oracleasm*

yum -y install kmod-oracleasm*

Add below OS groups

groupadd -g 54327 asmdba
groupadd -g 54328 asmoper
groupadd -g 54329 asmadmin

Add asmdba as secondary group to Oracle user

usermod -a -G asmdba oracle


Create Grid User

useradd -u 54331 -g oinstall -G dba,asmdba,asmoper,asmadmin,racdba grid


Change the password for Oracle and Grid user

passwd oracle

passwd grid

Create the Directories for Oracle Database installation

mkdir -p /u01/app/oracle
mkdir -p /u01/app/oracle/product/19.3.0/db_home
chown -R oracle:oinstall /u01/app/oracle

Create the Directories for Oracle Grid installation

mkdir -p /u01/app/grid/product/19.3.0/grid_home
chown -R grid:oinstall /u01/app/grid
chmod -R 775 /u01

Configure Oracle ASM

Let us configure Oracle ASM

oracleasm configure -i


Load / initiate Oracle ASM

Add 30 GB HDD to virtual machine which we will use to create 3 partitions of 10 GB each for our ASM disks. Open Virtual machine >> Settings >> Storage >> Controller: SATA >> Create new disk

create 3 partitions of 10 GB each for our ASM disks

login as root user to format the  disk

fdisk -l

In the above output the /dev/sdb is not yet formatted. Let’s create 3 partitions on sdb

fdisk /dev/sdb

n                        --> to create new partition



w                        --> to save partition table

Create separate ASM Disk for each partition

oracleasm createdisk CRS1 /dev/sdb1
oracleasm createdisk DATA1 /dev/sdb2
oracleasm createdisk FRA1 /dev/sdb3

To check asm disks

oracleasm listdisks

ls -lrt /dev/oracleasm/disks

Install Grid Software

Edit Grid user Bash_Profile but take .bash_profile backup before editing it

su - grid

cp .bash_profile .bash_profile.orig

vi .bash_profile


Paste below contents

if [ -f ~/.bashrc ]; then
. ~/.bashrc
ORACLE_BASE=/u01/app/grid; export ORACLE_BASE
ORACLE_HOME=/u02/app/grid/product/19.3.0/grid_home; export ORACLE_HOME
JAVA_HOME=/usr/bin/java; export JAVA_HOME
TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN

export PATH

umask 022

Save and close vi editor. Execute the bash profile and check the environment variables

. .bash_profile

env|grep ORA


Copy the 19c grid software under grid home and unzip it


Oracle Database 19c Grid Infrastructure (19.3) for Linux x86-64



Setup xming and Start the as a grid user which will install grid software

cd /u01/app/grid/product/19.3.0/grid_home

Follow below screens to perform the grid software installation

  • Change Disk group name as CRS
  • Select External
  • Click on Change Discovery Path
  • Give Disk Discovery Path as /dev/oracleasm/disks
  • Click on OK


Select /dev/oracleasm/disks/CRS1 >> Next

Select Use Same Password for these Accounts >> Specify password >> confirm password >> Next. Click on Yes

Click Next >> Next

Click Next >> Next >> Next

chown -R grid:oinstall /u01
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/
chown -R grid:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app/oraInventory

Click on fix and check again

Install the missing package

[root@prim rpm]# pwd
[root@prim rpm]# rpm -ivh cvuqdisk-1.0.10-1.rpm
Preparing...                          ################################# [100%]
Using default group oinstall to install package
Updating / installing...
   1:cvuqdisk-1.0.10-1                ################################# [100%]
[root@prim rpm]#

To install package (under root user):

cd /u01/app/grid/product/19.3.0/grid_home/cv/rpm

rpm -ivh cvuqdisk-1.0.10-1.rpm

Configure ASM Diskgroups

The grid installer allows you to only create one diskgroup (CRS). We need to start the asmca utility in order to create DATA and FRA diskgroup which are required for database installation. Click on Create


  • Give Disk Group Name as DATA
  • Select External(None)
  • Select /dev/oracleasm/disks/DATA1
  • Click on OK

Click on Create

  • Give Disk Group Name as FRA
  • Select External(None)
  • Select /dev/oracleasm/disks/FRA1
  • Click on OK



Install Oracle Software

Login as oracle

vi .bash_profile

Edit Oracle user bash profile and put below

<br />vi .bash_profile</p><p>if [ -f ~/.bashrc ]; then<br />. ~/.bashrc<br />fi</p><p>; export ORACLE_HOSTNAME<br />ORACLE_SID=prod; export ORACLE_SID<br />ORACLE_UNQNAME=prod; export ORACLE_UNQNAME<br />ORACLE_BASE=/u02/app/oracle; export ORACLE_BASE<br />ORACLE_HOME=/u02/app/oracle/product/19.3.0/db_home; export ORACLE_HOME<br />ORACLE_TERM=xterm; export ORACLE_TERM</p><p>JAVA_HOME=/usr/bin/java; export JAVA_HOME<br />NLS_DATE_FORMAT="DD-MON-YYYY HH24:MI:SS"; export NLS_DATE_FORMAT<br />TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN<br />PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin<br />PATH=${PATH}:/usr/bin:/bin:/usr/local/bin<br />export PATH</p><p>LD_LIBRARY_PATH=$ORACLE_HOME/lib<br />LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib<br />LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib<br />export LD_LIBRARY_PATH</p><p>CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib<br />export CLASSPATH</p><p>TEMP=/tmp ;export TMP<br />TMPDIR=$tmp ; export TMPDIR</p><p>umask 022</p><p>

. .bash_profile

mkdir -p /u01/app/oracle
mkdir -p /u01/app/oracle/product/19.3.0/db_home
chown -R oracle:oinstall /u01



Unzip the Oracle software

cd /u01/app/oracle/product/19.3.0/db_home


Start the runinstaller

cd database

Uncheck the i wish to receive security updates via my oracle support

Select install database software only >> Next >> Next >> Next >> Next >> Next


DBCA Create Database on ASM

We can now go ahead and create database on ASM with DBCA. Start DBCA >> Create a Database >> Advance Configuration

  • Give Global Database name as prod
  • Uncheck Create as container database
  • Click on Next

Select Use following for the database storage attributes >> Browse

  • Select DATA >> Click on OK
  • Click on Next

Select specific fast recovery area >> Browse

  • Select FRA >>  Click on OK
  • Change Fast Recovery Area Size  >> Next

Click Next >> Next >> Next

Uncheck Register with Enterprise Manager(EM) database express


Select Use the same administrative password for all accounts >> Password >> Confirm Password


Select Create the database >> Next >> Finish

Done! For confirmation purpose, connect to database as Oracle user and issue below queries

SQL> select name, open_mode from v$database;
SQL> select name from  v$datafile;
SQL> select name from  v$controlfile;

We have successfully create Oracle Database on ASM!

Hope It Helps !!

Follow me

Contact us for Training/ Job Support

Caution: Your use of any information or materials on this website is entirely at your own risk. It is provided for educational purposes only. It has been tested internally, however, we do not guarantee that it will work for you. Ensure that you run it in your test environment before using.