Sunday, January 27, 2008

Installing Oracle XE on openSUSE Linux

Despite what I have read on the net it was quite easy. I decided to put the information on the net in case I would have to repeat the procedure. And maybe someone else would need the information...

First I'll tell you what machine I use, then I'll show you what I did.

The machine

I use HP Compaq 6710b laptop, with 2G of RAM. Inside the machine is the Intel® Core™2 Duo T7300 2GHz processor.
There is Windows Vista preinstalled in it, but I decided to use OpenSuse (10.3) Linux as my development environment.

Installation procedure

You could summarize the whole process in 3 steps:
1. Obtaining the installation file.
2. Installing Oracle XE and required libraries.
3. Configuring Oracle instance.

In my case the procedure went as follows:
1. I downloaded Oracle XE for Linux x86 (http://www.oracle.com/technology/software/products/database/xe/htdocs/102xelinsoft.html). I chose oracle-xe-univ-10.2.0.1-1.0.i386.rpm.

2. Logged as the root I run the installer. Everything went smooth except for the database didn't run. I checked the installation guide (I know, I should have done it earlier :-) ) and it turned out that this Oracle distribution requires libgc and libaio libraries.

I ran software management program (/sbin/yast2 --install) that lets you see and modify software components installed on your openSUSE.
In my case the libraries where absent so I looked for them on openSUSE Build Service pages (http://software.opensuse.org/searchand), downloaded and installed them.

3. The final step, according to the manual was running the provided configuration script. So I did, as the root, ran

/etc/init.d/oracle-xe configure

I chose the default options when prompted and set up the password for sys and system users:
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"
I tried to run the database's home page by running FireFox and entering http://127.0.0.1:8080/apex address.

Unfortunately I couldn't log in (I probably did something wrong but I am not sure what was it -- maybe just misspelled the password during log-in),
so I opened "Run SQL command line" and typed:
conn sys as sysdba ;
alter user system identified by ;
alter user sys identified by ;
After this maneuver I retried entering user/password and finally successfully logged into the database's home page.

Like I said, I am not sure if the last step (resetting the password) was necessary. When I have a chance to run the installation again I'll correct the information.

Have fun with Oracle on openSUSE!

12 comments:

  1. Which version of opensuse? 10.2 10.3?

    ReplyDelete
  2. Thank you for this nice tutorial. This was saving me a lot of time. Btw., I did not need to alter the system-user.

    ReplyDelete
  3. Good for people to know.

    ReplyDelete
  4. the tutorial definitely helped but i cant access the database home page as well. my root password is the same as the oracle password. i tried the "conn" procedure you mentioned but it keeps saying ""insufficient privileges"
    =========================
    SQL> conn sys as sysdba;
    Enter password:
    ERROR:
    ORA-01031:insufficient privileges
    =============================

    ReplyDelete
  5. tried again all i gost was

    "Firefox can't establish a connection to the server at 127.0.0.1:8080."

    ReplyDelete
  6. @j-steave

    I am away from my Linux machine, so I cannot confirm/check your case.

    > "Firefox can't establish a connection to the server at 127.0.0.1:8080."
    This means your Oracle server was probably down at the moment (didn't start properly).

    But
    > ORA-01031:insufficient privileges
    means that probaly the sys user has not been granted CONNECT. Again, somthing must have gone wrong with your instalation/configuration.

    Please, check:
    http://virag.sharma.googlepages.com/oraclexemadeeasy#_XE_database_troubleshooting
    http://www.zyxware.com/articles/2008/12/24/oracle-xe-solution-to-cannot-access-http-127-0-0-1-8080apex-errors
    http://forums.oracle.com/forums/thread.jspa?threadID=395990

    I think there were some simillar problems resolved.

    Good luck,
    fat bold cyclop

    ReplyDelete
  7. one last thing...how do youo suppose i go about installing or loading listener. i have checked, it is not installed, and cant be found.
    i searched the net for solution but ....

    ReplyDelete
  8. @j_steave

    The listener must be there.

    Here is a tip on reviving the listner:
    http://exertia.wordpress.com/2009/05/14/resolving-the-ora-12514-no-tns-listener-error-with-oracle-xe/

    Did you try reinstall the software from scratch?

    ReplyDelete
  9. Thanks a lot, it was quite usefull ;)

    ReplyDelete
  10. Oracle Database 10g Express Edition works on my openSUSE 11.0 installation very well. I think you always have to do the following steps:

    * After installation and configuration as described above, add, perhaps with yast, the additional group `dba´ to your own user.

    * Log out and log in again to read in the new additional group.

    * Start the Oracle web interface as described above.

    * Log in WITH THE USERNAME `system´, not with the name you gave while configuring Oracle database.

    * But choose the then given password.

    * I think the user name given whilst configuration is only the name of the new linux user, not the Oracle interface user name.

    I didn't make any SQL query. Operating system is 32-bit, on a virtual machine.

    Have a lot of fun with your oracling openSUSE ;)

    ReplyDelete