My First Oracle XE
After the announcement of Oracle XE I got really curious about the possibilities of a free Oracle10g database. OK, it is limited to 4GB and it doesn’t allow things like partitioning but still… very usefull for smaller companies and web applications. So, I downloaded the Win32 version from OTN to my laptop (1.1GHz cpu, 512MB memory) and started playing with a DBA point of view.
First thing to notice is the fact that Oracle doesn’t use the well known Universal Installer but a simple Install Shield Wizard instead which makes the installation process quite easy. The Linux version is an RPM so I guess installation won’t be a problem there either. Haven’t tried it…. yet.
The installation wizard creates an entire OFA-tree so just follow its suggestion to use ‘c:\oraclexe’ as the oracle home directory. At first I used an existing oracle home directory which ended up in rather long pathnames. Besides a password for the SYS and SYSTEM account no other user input is required, the wizard is taking care of the services, the listener, the configuration of the webserver and it creates a default database with ‘XE’ as SID… it’s the Express Edition. After the installation has finished you can go to the Oracle XE startpage which leads to a HTML DB application for maintenance.
Oracle XE doesn’t use archive logging by default which isn’t a good thing in my opinion; I’m a DBA, I like availability and the possibility to recover. However this can be changed very easy. Go to the ‘<oracle_home>\database’ directory and add the line "LOG_ARCHIVE_DEST_1=’LOCATION=C:\oraclexe\oradata\XE’" to the initxe.ora file. Shutdown the database, start and mount it, type ‘alter database archivelog;’ open your database and you have a database in archive mode.
If you have more than one oracle home on the machine running Oracle XE it may be wise to remove the path settings to XE. There are no real client applications in its directory tree, besides a SQL*Plus command line interface which can be started from the start menu, so there is no reason to have it in the path. Even worse: it can disable the other Oracle products that you have already installed. My Oracle10g R1 client didn’t work anymore after I installed XE but worked smoothly again after I removed the path-settings to XE
Since Oracle XE is just a normal Oracle database with some restrictions you can use a regular Oracle client to connect to it and it’s also possible to use RMAN for backup and restore. RMAN is not part of the XE distribution which is a great miss because in my opinion it’s the best backup/recover tool for Oracle databases. It is however possible to use RMAN from any other Oracle10g directory.
Most of the database management is done with the webbased interface. Nice look and feel but not everything can be done from here. E.g. it seems to be impossible to change the maximum size of a datafile or add tablespaces. So for some things we still have to use the good ol’ SQL*Plus interface.
As far as I’ve seen Oracle XE is a real nice product. It’s easy to install and doesn’t need much maintenance. It comes with HTML DB for quick development of (demo)applications and works fine with Java IDE’s such as JDeveloper. Next step: the Linux version…
- Registering non-default XMLDB HTTP/WebDAV and FTP ports on a non-default Oracle Listener port
- Oracle Database 10g Release 2 available (only on Linux right now)
- Oracle 10gR2: .Net stored procedures (C#, Visual Basic .Net, Visual C++)
- Migration from MySQL to Oracle – using Oracle Migration Workbench
- Discussion on The Server Side: Comparing Microsoft Yukon (SQL Server 2005, Beta release) with Oracle 10g