Oracle is a RDBMS (relational database management system), which is produced and marketed by Oracle Corporation. The Oracle Database Systems is one of the most popular database systems, competing with likes of MySQL, PostgreSQL, IBM DB2,Sybase, Microsoft SQL Server among others. Oracle is a great choice for applications that require large, distributed databases.
Oracle Database Express Edition 11gR2 is free for download and is available for variety of platforms including various distros of Linux and Microsoft Windows without needing a license. in this this guide will help you how to install Oracle Database Express Edition 11gR2 on Ubuntu Server.
But at first, I must inform you about the limitations of Oracle 11g R2 Express Edition (XE) which are as follows :
The Installer released by Oracle is only meant for 64-bit (x86_64) systems.
It will consume, at most, processing resources equivalent to one CPU.
Only one installation of Oracle Database XE can be performed on a single computer.
The maximum amount of user data in an Oracle Database XE database cannot exceed 11 GB.
The maximum amount of RAM that Oracle XE uses cannot exceed 1 GB, even if more is available.
Step-by-Step Installing Oracle Database Express Edition 11gR2 on Ubuntu Server.
Step 1.
Managing Swap partition. Oracle Database Express Edition 11gR2 may require up to a 2GB (2095100 KB) swap partition, Enter the following command in terminal to verify your swap space:
cat /proc/meminfo | grep -i swap
If you don’t have enough swap space, you can increase available swap space by the following guide to create and enable swap partiton, in this case I’ll create 1 GB swap file and loaded at startup, located in the /home directory
Login as root:
sudo -i
Create swap file on /home directory with following commands:
dd if=/dev/zero of=/home/swapfile bs=1024 count=1048576
mkswap /home/swapfile
swapon /home/swapfile
swapon -a
Create a backup of the original “fstab” file and add the new swap file:
cp /etc/fstab /etc/fstab.backup_`date +%N`
echo '/home/swapfile swap swap defaults 0 0' >> /etc/fstab
Logout from root and verify the new swap space:
exit
swapon -s
Step 1. Install additional software thats require Oracle 11g Express Edition
sudo apt-get install alien libaio1
Step 2.
Download Oracle Database Express Edition 11gR2 via Oracle Official website, it require registration before downloading.
Step 3.
unzip the downloaded file, then convert the Oracle Database Express Edition 11gR2 package installer to debian package
unzip oracle-xe-11.2.0.1.0.x86_64.rpm.zip
cd Disk1/
sudo alien --to-deb --scripts oracle-xe-11.2.0-1.0.x86_64.rpm
Step 4.
Configure Awk and Chkconfig, The following needs to be set for compatibility:
sudo ln -s /usr/bin/awk /bin/awk
sudo mkdir /var/lock/subsys
Ubuntu uses different tools to manage services and system startup scripts. The “chkconfig” tool required by the Oracle installer is not available in Ubuntu. The following will create a file to simulate the “chkconfig” tool.
Login as root:
sudo -i
Copy and paste the following Script directly into the terminal to create a file chkconfig:
cat > /sbin/chkconfig <<-EOF
#!/bin/bash
# Oracle 11gR2 XE installer chkconfig, Only run once.
echo "Simulating /sbin/chkconfig..."
if [[ ! \`tail -n1 /etc/init.d/oracle-xe | grep INIT\` ]]; then
cat >> /etc/init.d/oracle-xe <<-EOM
#
### BEGIN INIT INFO
# Provides: OracleXE
# Required-Start: \\\$remote_fs \\\$syslog
# Required-Stop: \\\$remote_fs \\\$syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Oracle 11g Express Edition
### END INIT INFO
EOM
fi
update-rc.d oracle-xe defaults 80 01
EOF
Logout form root:
exit
Set the file /sbin/chkconfig executable :
sudo chmod 755 /sbin/chkconfig
Step 5. Install Oracle Database Express Edition 11gR2 with the following commands:
cd ~/Downloads/Disk1
sudo dpkg -i oracle-xe-11.2.0-1.0.x86_64.deb
Run the following configuration script to create (clone) the database. Accept the default answers, including “y” to startup the database automatically, or modify as required.
sudo /etc/init.d/oracle-xe configure
To verify success, the procedure should end showing:
Starting Oracle Net Listener…Done
Configuring database…Done
Starting Oracle Database 11g Express Edition instance…Done
Installation completed successfully.
Step 6.
Set a password for the Oracle account:
sudo passwd oracle
Step 7.
Post-Installation, In order to use sqlplus and other tools, the Oracle account requires specific environment variables. The following will set these variables automatically at every Oracle login:
Login as the Oracle user:
su - oracle
Copy the default account skeleton files and add the Oracle env script to .profile:
cp /etc/skel/.bash_logout ./
cp /etc/skel/.bashrc ./
cp /etc/skel/.profile ./
echo "" >>./.profile
echo '. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh' >>./.profile
Step 8.
Configure remote login. By default, the Oracle Database XE graphical user interface is only available at the local server, but not remotely. The following will enable remote logins:
Login as the Oracle user, then login as SYSDBA and run the following commands:
su - oracle
sqlplus / as sysdba
SQL> EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);
exit