- This process should work on any operating system supported by Vagrant
Verified on Mac OSX -
Linux - Verified on Fedora release 20 (Heisenbug)
Windows -
- Download and install Vagrant
- Download and install VirtualBox
Download the Oracle 11g zip file for Linux x64
Always download the Linux x64 zip file, even if you are on Windows or Mac OSX.
Clone the vagrant-ubuntu-oracle-xe repository from GitHub
git clone git://github.com/hilverd/vagrant-ubuntu-oracle-xe
Copy the Oracle 11g zip file to the directory
vagrant-ubuntu-oracle-xe
expects to find it incp ~/Downloads/oracle-xe-11.2.0-1.0.x86_64.rpm.zip ~/vagrant-ubuntu-oracle-xe/modules/oracle/files
Install vbguest
vagrant plugin install vagrant-vbguest
Invoke Vagrant to install and configure Oracle 11g
cd ~/vagrant-ubuntu-oracle-xe vagrant up
- After a few minutes your local machine will be running an Oracle 11g server on a virtual instance of Ubuntu 12.04
The JDBC connection url is
jdbc:oracle:thin:system/manager@localhost:1521:XE
6 Comments
Haroon Rafique
If you want to allocate more memory, you can fork the repo and use this diff (which raises the memory to 2G and swap to 4G).
Haroon Rafique
Some useful vagrant commands:
drop into a full-fledged SSH session
Peri Subrahmanya
Long awaited Oracle install on my MAC - just fantastic. The install process took me around 7 minutes tops and everything was up and running. Thanks for the instructions.
Sridhar Komandur
+1 The joy of local Oracle on my mac!
If you are using sqlplus from mac, here's how I was able to connect:
sqlplus system/manager@//localhost:1521/XE
(NOTE: / between 1521 and XE NOT ':')
David Poindexter
When updating Virtual Box or Vagrant independently, there can be version collisions. The following versions are now known to work together:
There is also a default password expiration in Oracle 11g of 180days.
Michael O'Cleirigh has shared the following as an option to eliminate this:
SQL> CONNECT / AS SYSDBA
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
-- Verify
SQL> SELECT * FROM DBA_PROFILES WHERE RESOURCE_NAME=
'PASSWORD_LIFE_TIME'
;
However, the following also works:
Peri Subrahmanya
I m trying a fresh install and everything went fine. Although when I try to connect to the jdbc url, it says unknown host. I can't find any errors during the install process. Any help is appreciated.