Q. How do I install Oracle Database XE Server on my Ubuntu Linux desktop system?
A. An Oracle database consists of a collection of data managed by an Oracle database management system. You can download Oracle Database XE server for Debian, Mandriva, Novell, Red Hat and Ubuntu Linux distributions. First you need to get databases up and running in order to use Oracle. The Oracle database has had a reputation among new Linux users as difficult to install on Linux systems. Now Oracle Corporation has packaged recent versions for several popular Linux distributions in an attempt to minimize installation challenges beyond the level of technical expertise required to install a database server.
Make sure you have enough disk space and memory
If you have less than 1GB memory run the following commands to create swap space:
$ sudo dd if=/dev/zero of=/swpfs1 bs=1M count=1000
$ sudo mkswap /swpfs1
$ sudo swapon /swpfs1
Debian / Ubuntu Oracle installation
First modify /etc/apt/sources.list file:
$ sudo vi /etc/apt/sources.list
Append following line:
deb http://oss.oracle.com/debian unstable main non-free
Save and close the file. Next import GPG key:
$ wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle -O- | sudo apt-key add -
Update package database:
$ sudo apt-get update
Finally install Oracle:
$ sudo apt-get install oracle-xe
Output:
Reading package lists... Done Building dependency tree Reading state information... Done The following packages were automatically installed and are no longer required: linux-headers-2.6.20-15-generic linux-headers-2.6.20-15 Use 'apt-get autoremove' to remove them. The following extra packages will be installed: libaio The following NEW packages will be installed: libaio oracle-xe 0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded. Need to get 221MB/221MB of archives. After unpacking 405MB of additional disk space will be used. Do you want to continue [Y/n]? y Get:1 http://oss.oracle.com unstable/non-free oracle-xe 10.2.0.1-1.1 [221MB] .... ....
Post-install configuration
You must configure Oracle TCP/IP port and other parameters. Simply type the following command:
$ sudo /etc/init.d/oracle-xe configure
Output:
Oracle Database 10g Express Edition Configuration ------------------------------------------------- This will configure on-boot properties of Oracle Database 10g Express Edition. The following questions will determine whether the database should be starting upon system boot, the ports it will use, and the passwords that will be used for database accounts. Pressto accept the defaults. Ctrl-C will abort. Specify the HTTP port that will be used for Oracle Application Express [8080]: [Enter key] Specify a port that will be used for the database listener [1521]:[Enter key] Specify a password to be used for database accounts. Note that the same password will be used for SYS and SYSTEM. Oracle recommends the use of different passwords for each database account. This can be done after initial configuration:secret Confirm the password:secret Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]:y Starting Oracle Net Listener...Done Configuring Database...Done Starting Oracle Database 10g Express Edition Instance...Done Installation Completed Successfully. To access the Database Home Page go to "http://127.0.0.1:8080/apex"
To access the Database Home Page go to http://127.0.0.1:8080/apex. Open a web browser and type url (you need to use username "system" and password setup earlier)
References
- Oracle Database 10g Express Edition Downloads
- Oracle Online documentation
- Oracle database article from Wikipedia
Featured Articles:
- 20 Linux System Monitoring Tools Every SysAdmin Should Know
- My 10 UNIX Command Line Mistakes
- 10 Greatest Open Source Software Of 2009
- Top 5 Email Client For Linux, Mac OS X, and Windows Users
- Top 20 OpenSSH Server Best Security Practices
- Top 10 Open Source Web-Based Project Management Software
- Top 5 Linux Video Editor Software
- Email FAQ to a friend
- Download PDF version
- Printable version
- Comment RSS feed
- Last Updated: 03/9/08



{ 22 comments… read them below or add one }
Nice and simple. Please note that any use of the Oracle Database Express Edition is subject to the following limitations;
1. Express Edition is limited to a single instance on any server;
2. Express Edition may be installed on a multiple CPU server, but may only be executed on one processor in any server;
3. Express Edition may only be used to support up to 4GB of user data (not including Express Edition system data);
4. Express Edition may use up to 1 GB RAM of available memory.
So it is good for workstations and laptop and good for home user and students
Oracle XE is only compiled for i386 – 32bits – and has some problems trying to install it under x86_64 machine. Some websites explain how to solve this. I wrote a entry in my blog with the extra steps to get XE running under Ubuntu AMD64. Is in Spanish, but I think that is not difficult to extract the steps even without knowing Spanish. In the same entry I put a link to another site what explains the same process in English.
Hope can help
Regards
D.
dballester,
Thanks for pointing out 64 bit issue.
Thank you very much for this HOWTO. I followed it on Ubuntu server 7.04 and also on Freespire (based on Ubuntu 7.04) and it worked perfectly. Thank you for making your knowhow available.
Johan Blignaut
Thanks for the tips. This really helped.
Thanks, very useful!
My laptop has 512MB RAM. Is it advisable to intall Oracle Express?? If not is there any other option.??
XE will run pretty badly with only 512 meg of ram, but it depends on how hard you’re going to be working it. Have you looked into MySQL / PostgreSQL?
Here’s what I did:
1) added this to /etc/apt/sources.list: deb http://oss.oracle.com/debian unstable main non-free
2) ran: wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle -O- | sudo apt-key add -
3) ran: sudo apt-get update
4) via the Synaptic package manager, clicked on “oracle xe”. This package was installed along with libaio.
5) checked my applications menu and saw that oracle had appeared.
6) ran: sudo /etc/init.d/oracle-xe configure (I changed the port for Oracle Application Express to 9090 so it wouldn’t conflict with Tomcat, which uses port 8080. I indicated that I didn’t want the database server to launch on boot. I was planning launching as needed from the applications menu).
Now I thought that I was ready to go. So I went to the applications menu and selected start database. A terminal window popped up warning me that I wasn’t a member of the dba group. I added myself to the dba group. I restarted my computer and tried starting the database once again from the applications menu.
This time no warning terminal came up. Basically I didn’t get any feedback as to whether the database server was actually running. So I tried accessing:
http://127.0.0.1:9090/apex. I was told the browser couldn’t establish a connection with the database. I selected “run sql from the command line” from the applications menu. This didnt’ work either. The terminal window that came up began like this:
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/nls_lang.sh: 114: [[: not found
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/nls_lang.sh: 114: [[: not found
I also checked my logs:
Oracle Database 10g CRS Release 10.2.0.1.0 Production Copyright 1996, 2005 Oracle. All rights reserved.
[ OCRUTL][3067549888]u_set_comp_error: Parameter was NULL
[ OCRUTL][3067549888]u_set_ocr_error: Parameter was NULL
2008-07-18 22:18:24.502: [ OCROSD][3067549888]utgdv:2:ocr loc file cannot be opened
2008-07-18 22:18:24.502: [ OCROSD][3067549888]utopen:1: Couldnt find ocr,[ocrmirror] location in config file
[ OCRUTL][3067549888]u_set_gbl_comp_error: Parameter was NULL
2008-07-18 22:18:24.502: [ OCRRAW][3067549888]proprinit: Could not open raw device
2008-07-18 22:18:24.502: [ default][3067549888]a_init:7!: Backend init unsuccessful : [33]
[ OCRUTL][3067549888]u_set_ocr_error: Parameter was NULL
2008-07-18 22:18:24.502: [ CSSCLNT][3067549888]clsssinit: error(33 ) in OCR initialization
Any suggestions?
To the last user —
have you tried going to:
http://localhost/apex
(from the machine you installed XE on) .. i had the sane issue as you.
i typed the command for install oracle in ubuntu 8.04
sudo apt-get install oracle-xe
it shows :
” E: Could not get lock /var/lib/dpkg/lock – open (11 Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it? ”
how do i solve this??…please give instructions..
what you do is:
sudo rm /var/lib/dpkg/lock
and it should work
hi ,
i did the same thing that u hav wrriten but ….m not able to start the database as i get the error on the screen that comes after i select APPLICATION->ORACLE 10g express edition “Operation failed. bikramjit is not a member of ‘dba’ group.”
u have to add yourself to dba gruop
then:
start database
launch SQL command line
type: connect / as sysdba
then type: exec dbms_xdb.sethttpport(8181);
and finally try: http://127.0.0.1:8181/apex
and u should be able to use web interface
I typed the info you posted and got this mess: PL/SQL procedure successfully completed. finally tried http://127.0.0.1:8181/apex still getting the error
Thank you very much, this really helps !
I was thinking to download and install manually, especially I remembered that so many system parameters need to be adjusted for accomodating oracle like SHMMAX etc
+1 to karma !!!
Thank you very, very, very, very, very much!
Hey,
thanks for the howto!
I had the same issue in my ubuntu, it only worked the first time but later on reboot it stoped working, is there a formal way to start the Oracle services? start database from menu doesn’t seems to work at all
Hello i have q how to remove oracle-xe from autostart?
Thanks a lot!
Very straightforward on Ubuntu Karmic, I am able to use the database immediately after this.
And it saves me from registering on the Oracle website!
We might even get updates :-)
I just installed the Ubuntu 9.10 and then installed Oracle 10 Express and all went fine. I can access oracle on 127.0.0.1:8080/apex address however when I try to access the server on it’s external ip address (192.168.1.14) even when I’m on my Ubuntu machine it’s failing.
I’m new to Linux so I’m sure this should be silly and simple issue but I can’t find a way around it. I need this so I can access the oracle server from outside world (other nodes on the network)
Any help is appreciated.
Amir