Close Menu
  • Home
  • Oracle
    • ASM
    • Data Guard
    • OEM
    • RAC
  • MongoDB
  • Performance
  • Python
  • Shell Script
  • Tools
  • Troubleshooting
Search

Oracle RAC 12.2 on VMware Workstation — Post 5: Final Validation and Quick Reference

2026-05-11 Oracle By Henrique

Oracle RAC 12.2 on VMware Workstation – Post 4: Oracle Database Installation and DBCA

2026-05-11 Oracle By Henrique

Oracle RAC 12.2 on VMware Workstation — Post 2: Oracle Linux Configuration and iSCSI

2026-05-11 Oracle By Henrique
YouTube LinkedIn RSS
  • Home
  • About
  • Contact
  • Legal
    • Cookie Policy
    • Disclaimer
    • Privacy Policy
    • Terms of Use
  • RSS
  • English
    • Portuguese (Brazil)
Execute StepExecute Step
YouTube LinkedIn RSS
  • Home
  • Oracle
    • ASM
    • Data Guard
    • OEM
    • RAC
  • MongoDB
  • Performance
  • Python
  • Shell Script
  • Tools
  • Troubleshooting
Execute StepExecute Step
Home » Oracle Database 19c with Vagrant: A Lab in 15 Minutes
Oracle Tools

Oracle Database 19c with Vagrant: A Lab in 15 Minutes

HenriqueBy Henrique2026-04-30Updated:2026-05-197 Mins Read
Share
Facebook Twitter LinkedIn Pinterest Email Telegram WhatsApp

This post is also available in: Português (Portuguese (Brazil))

If you need an Oracle Database up and running fast — to test a patch, reproduce an issue, or validate a query — building the infrastructure from scratch every time is a waste. Oracle’s official GitHub repository provides ready-to-use Vagrant boxes for all major versions, including 19c.

In this guide, you’ll spin up a full Oracle Database 19.3.0 inside an isolated VM, with the database initialized and ready for connections, using only Vagrant and VirtualBox.


Prerequisites

Make sure you have the following before starting:

RequirementMin. VersionNotes
VirtualBox6.1+Must be installed before Vagrant
Vagrant2.3+
GitanyTo clone the repository
Oracle 19c BinaryLINUX.X64_193000_db_home.zipDownload from Oracle eDelivery
Free disk space~35 GBVM + database + binary
Available RAM4 GBThe VM uses 2 GB by default

⚠️ VirtualBox must be installed before Vagrant. Installing them in reverse order causes provider detection issues.


Step 1 — Download the Oracle 19c Binary

Vagrant does not download Oracle binaries automatically — you need to obtain them manually from Oracle eDelivery or OTN.

  1. Go to edelivery.oracle.com
  2. Sign in with your Oracle account (free registration)
  3. Search for Oracle Database 19c — select the Linux x86-64 version
  4. Download the file: LINUX.X64_193000_db_home.zip

Keep the file accessible — you’ll copy it into the correct directory in the next step.


Step 2 — Clone the Official Repository

git clone https://github.com/oracle/vagrant-projects.git
cd vagrant-projects/OracleDatabase/19.3.0

Expected directory structure:

19.3.0/
├── Vagrantfile
├── install.sh
├── ora19c.conf
└── scripts/

Step 3 — Place and Validate the Binary

Copy the Oracle ZIP into the 19.3.0 directory:

cp /path/to/LINUX.X64_193000_db_home.zip .

Confirm it’s in the right place:

ls -lh *.zip
-rwxrwxr-x 1 henrique henrique 2.9G Apr 30 11:26 LINUX.X64_193000_db_home.zip

⚠️ The filename matters. The Vagrantfile references the exact name LINUX.X64_193000_db_home.zip. Do not rename the file.

Validate the SHA-256 before proceeding

The provision script validates the ZIP checksum before installing. A corrupted download will fail mid-provision — and you’ll only find out after waiting 10+ minutes.

Validate upfront:

cat db_installer.sha256
ba8329c757133da313ed3b6d7f86c5ac42cd9970a28bf2e6233f3235233aa8d8 */vagrant/LINUX.X64_193000_db_home.zip
sha256sum LINUX.X64_193000_db_home.zip
ba8329c757133da313ed3b6d7f86c5ac42cd9970a28bf2e6233f3235233aa8d8  LINUX.X64_193000_db_home.zip

Both hashes must be identical. If they differ, the file is corrupted — download it again before continuing.


Step 4 — Bring Up the VM

vagrant up

The full process takes 15 to 30 minutes depending on your hardware. Vagrant will:

  1. Download the Oracle Linux 7 base box (first run only, ~1 GB)
  2. Create and start the VM in VirtualBox
  3. Run the Oracle Database installation script
  4. Initialize the database

At the end of provisioning, you’ll see the database creation progress and the generated password:

    oracle-19c-vagrant: INSTALLER: Oracle software installed
    oracle-19c-vagrant: INSTALLER: Listener created
    oracle-19c-vagrant: Prepare for db operation
    oracle-19c-vagrant: 8% complete
    oracle-19c-vagrant: Copying database files
    oracle-19c-vagrant: 31% complete
    oracle-19c-vagrant: Creating and starting Oracle instance
    oracle-19c-vagrant: 32% complete
    oracle-19c-vagrant: 46% complete
    oracle-19c-vagrant: Completing Database Creation
    oracle-19c-vagrant: 51% complete
    oracle-19c-vagrant: Creating Pluggable Databases
    oracle-19c-vagrant: 58% complete
    oracle-19c-vagrant: 77% complete
    oracle-19c-vagrant: Executing Post Configuration Actions
    oracle-19c-vagrant: 100% complete
    oracle-19c-vagrant: Database creation complete.
    oracle-19c-vagrant: Global Database Name:ORCLCDB
    oracle-19c-vagrant: System Identifier(SID):ORCLCDB
    oracle-19c-vagrant: INSTALLER: Database created
    oracle-19c-vagrant: INSTALLER: Oratab configured
    oracle-19c-vagrant: INSTALLER: Created and enabled oracle-rdbms systemd's service
    oracle-19c-vagrant: ORACLE PASSWORD FOR SYS, SYSTEM AND PDBADMIN: <generated password>
    oracle-19c-vagrant: INSTALLER: Installation complete, database ready to use!

💡 The password for SYS, SYSTEM, and PDBADMIN is auto-generated and printed on the second-to-last line. Copy it before closing the terminal — it is not saved to any easily accessible file.


Step 5 — SSH into the VM

vagrant ssh

Once inside, switch to the oracle user:

sudo su - oracle

Step 6 — Validate the Database

Connect to the CDB

sqlplus / as sysdba
SELECT name, db_unique_name, open_mode FROM v$database;
NAME      DB_UNIQUE_NAME               OPEN_MODE
--------- ------------------------------ --------------------
ORCLCDB   ORCLCDB                        READ WRITE

Check the PDB

SHOW PDBS;
CON_ID CON_NAME                       OPEN MODE  RESTRICTED
------ ------------------------------ ---------- ----------
     2 PDB$SEED                       READ ONLY  NO
     3 ORCLPDB1                       READ WRITE NO

Open the PDB if needed

ALTER PLUGGABLE DATABASE ORCLPDB1 OPEN;
ALTER SESSION SET CONTAINER = ORCLPDB1;

Step 7 — External Connection from the Host

The box comes pre-configured with port forwarding — ports 1521 and 5500 from the VM are mapped directly to the host.

Via SQLPlus

Validated with Oracle 23c client on the host:

sqlplus sys/<password>@localhost:1521/orclpdb1 as sysdba

⚠️ Oracle client 19c or later requires DISABLE_OOB=ON to connect via VirtualBox NAT. Without it, the connection fails with ORA-12637. Add it to the client’s sqlnet.ora on the host — see the Known Errors section for the full procedure.

Connection Parameters

ParameterValue
Hostlocalhost
Port1521
Service NameORCLCDB (CDB) or orclpdb1 (PDB)
Usernamesys
RoleSYSDBA
Password(password generated during vagrant up)


Essential Vagrant Commands

CommandWhat it does
vagrant upCreates and starts the VM
vagrant sshOpens an SSH session into the VM
vagrant haltGracefully shuts down the VM
vagrant suspendSuspends the VM (saves state to disk)
vagrant resumeResumes from a suspended state
vagrant reloadRestarts and reloads the Vagrantfile
vagrant destroyRemoves the VM and frees disk space
vagrant statusShows the current state of the VM

💡 Use vagrant suspend / vagrant resume to preserve the database state between sessions without waiting for the full startup again.


Known Errors

VBoxManage: command not found

VirtualBox is not installed or not in your PATH. Install VirtualBox before running vagrant up.


Vagrant provider "virtualbox" is not usable

This happens when the VirtualBox kernel module isn’t loaded. Fix:

sudo modprobe vboxdrv

If the module doesn’t exist, reinstall VirtualBox along with the appropriate kernel headers and extension packages for your distribution.


Timed out while waiting for the machine to boot

The VM started but Vagrant couldn’t establish the SSH connection within the timeout. Common causes:

  • Virtualization not enabled in BIOS/UEFI — verify that VT-x or AMD-V is enabled
  • Insufficient RAM — the VM requires at least 2 GB of available memory on the host

ORA-12637: Packet receive failed when connecting from the host

Oracle Net 19c+ attempts to automatically detect Out Of Band (OOB) break support. Some network stacks — including VirtualBox NAT — do not handle this correctly, causing the connection to silently fail.

This error appears when connecting via SQLPlus or SQL Developer from the host using an Oracle 19c or later client.

Fix: disable OOB in the client’s sqlnet.ora on the host:

echo "DISABLE_OOB=ON" >> ~/.sqlnet.ora

For SQL Developer, also add it to the sqlnet.ora of the Oracle Home it references:

echo "DISABLE_OOB=ON" >> $ORACLE_HOME/network/admin/sqlnet.ora

The parameter is read on every new connection — no restart needed.

💡 This is Oracle’s documented solution for Docker and Vagrant environments with 19c+ clients. Reference: oracle/docker-images FAQ


This is the most common failure in this flow. The provision script validates the binary’s SHA-256 before installing — if the download was interrupted or corrupted, provision fails with:

oracle-19c-vagrant: /vagrant/LINUX.X64_193000_db_home.zip: FAILED
oracle-19c-vagrant: sha256sum: WARNING: 1 computed checksum did NOT match
oracle-19c-vagrant: INSTALLER: Database installer file missing or invalid.

Diagnose it:

sha256sum LINUX.X64_193000_db_home.zip
cat db_installer.sha256

If the hashes differ, the file is corrupted. Download it again from Oracle eDelivery, validate the hash, then destroy the VM before retrying:

vagrant destroy
vagrant up

⚠️ Do not use vagrant reload --provision in this case. The provision failed before creating the oracle user and database structure — the VM is in a broken state and must be recreated from scratch.


References

  • oracle/vagrant-projects — GitHub
  • Oracle Database 19c Documentation
  • Oracle eDelivery
  • VirtualBox Downloads
  • Vagrant Documentation

lab oracle-19c oracle-19c-vagrant-lab Tags: vagrant oracle-database virtualbox
Share. Facebook Twitter Pinterest LinkedIn Tumblr Email WhatsApp
Previous ArticleHow to Remove an ORACLE_HOME from inventory.xml Using runInstaller
Next Article MongoDB 8.0 + MongoShake on Oracle Linux 8 — From Scratch to Cutover

Related Posts

Oracle

Oracle RAC 12.2 on VMware Workstation — Post 5: Final Validation and Quick Reference

2026-05-11
Read More
Oracle

Oracle RAC 12.2 on VMware Workstation – Post 4: Oracle Database Installation and DBCA

2026-05-11
Read More
Oracle

Oracle RAC 12.2 on VMware Workstation — Post 2: Oracle Linux Configuration and iSCSI

2026-05-11
Read More
Add A Comment
Leave A Reply Cancel Reply

Demo
Follow Me
  • Email
  • GitHub
  • LinkedIn
  • RSS
  • YouTube

INS-06006 – Passwordless SSH Connectivity Not Set Up

2026-02-2614 Views

ORA-29548 — How to Fix “Java System Class Reported” in Oracle Database

2026-03-0510 Views

PRVG-2002 — How to Fix “Encountered Error in Copying File” in Oracle RAC

2026-03-078 Views
Demo
Blogroll
  • oravirt
Execute Step
YouTube LinkedIn RSS
  • Home
  • About
  • Contact
  • RSS
  • English
    • Português (Portuguese (Brazil))
© 2026 ExecuteStep. Designed by ThemeSphere.

Type above and press Enter to search. Press Esc to cancel.

Ad Blocker Enabled!
Ad Blocker Enabled!
Our website is made possible by displaying online advertisements to our visitors. Please support us by disabling your Ad Blocker.