Installing Oracle 10g Express Edition on Ubuntu
This was a bit tricky... So here it goes, in case anybody else in the world would like to do it. Full installation instructions can be found here, however I hope that these steps will help:
0. Downlad the Debian pacakge (oracle-xe-universal_10.2.0.1-1.0_i386.deb) from http://www.oracle.com/technology/software/products/database/xe/index.html.
0. First of all, you need to su as root, and unfortunatelly sudo is not enough! Oracle will not install properly unless you do that:
You might want to add 1GB of swap space space. Use these commands:
To make the swap file stick add the following lines to
To check that the swap file is used, type:
1. Install libaio1 if you don't have it:
2. Start the installation:
3. Configure your instance, remember to write down the password:
4. Add the Oracle environment shell script in your .bashrc. Edit the file with vi and add the following line at the bottom:
Oracle 10g XE is now installed and running on your Ubuntu system. In order to be able to use its graphical UI remotely, do the following:
5. Using sqlplus log in as SYSTEM. At the prompt, type:
That's it. To SQL*Plus from a remote system use this TNSNAMES.ORA entry:
From any Oracle 10 client system, type:
... to check it your Ubuntu-based XE is accessible. To connect to it use:
Hope this helps.
When things go wrong
I have had a few problems, which I have sorted by ensuring that:
- I had enough swap
- I had done everything as root
- I chose the right port numbers
0. Downlad the Debian pacakge (oracle-xe-universal_10.2.0.1-1.0_i386.deb) from http://www.oracle.com/technology/software/products/database/xe/index.html.
0. First of all, you need to su as root, and unfortunatelly sudo is not enough! Oracle will not install properly unless you do that:
sudo -s
You might want to add 1GB of swap space space. Use these commands:
mkdir /swap
dd if=/dev/zero of=/swap/swapfile_1gb bs=1024 count=1048576
mkswap /swap/swapfile_1gb
swapon /swap/swapfile_1gb
To make the swap file stick add the following lines to
/etc/fstab
:
/swapfile swap swap defaults 0 0
To check that the swap file is used, type:
swapon -s
free
1. Install libaio1 if you don't have it:
apt-get install libaio1
2. Start the installation:
dpkg -i ./oracle-xe-universal_10.2.0.1-1.0_i386.deb
3. Configure your instance, remember to write down the password:
/etc/init.d/oracle-xe configure
4. Add the Oracle environment shell script in your .bashrc. Edit the file with vi and add the following line at the bottom:
. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh
Oracle 10g XE is now installed and running on your Ubuntu system. In order to be able to use its graphical UI remotely, do the following:
5. Using sqlplus log in as SYSTEM. At the prompt, type:
exec DBMS_XDB.SetListenerLocalAccess(false);
That's it. To SQL*Plus from a remote system use this TNSNAMES.ORA entry:
UBUNTU_XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ubuntu)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
From any Oracle 10 client system, type:
tnsping ubuntu_xe
... to check it your Ubuntu-based XE is accessible. To connect to it use:
sqlplus system@ubuntu_xe
Hope this helps.
When things go wrong
I have had a few problems, which I have sorted by ensuring that:
- I had enough swap
- I had done everything as root
- I chose the right port numbers
Comments