Registro | Ayuda


Oracle Database 10g Express Edition

Fecha de publicación: 2008.04.08
Grado de Dificultad: 3

In this article, Thomas will describe Oracle which became less reasonable for developers to just download, install, configure, and run Oracle. Until November 2005 that is - that is the month that Oracle announced the availability of Oracle Database 10g Express Edition - the fourth in a family of Oracle Database offerings that now include XE (Express Edition), SE1 (Standard Edition One), SE (Standard Edition) and EE (Enterprise Edition). I got started with Oracle first in 1987. I was fresh out of college, in a new job, learning lots of new stuff. I was in a job that had as its description in the newspaper the tagline Programmer wanted - no experience necessary.

I had all of the necessary skills for that and got started. From the very beginning I was curious about all software - but experienced with none. Looking around at work I saw I had a lot to learn. I was employed in a mainframe shop programming PL/I applications against SQL/DS and DB2 on IBM mainframes.

Figure 1. HTML DB home page for the XE database

I read as many technical magazines back then as I could get my hands on one of my favorite magazine. In this magazine there was an advertisement for something called Oracle, version 5.1.5c - a relational database that could run on a DOS based PC with very little memory. It said it came with everything you needed to develop and deploy applications in such an environment. Intrigued - I read further. The advertisement claimed that for $99 USD, I could own this piece of software. I ordered it and it arrived and I’ve been addicted ever since - to this thing called Oracle.

That experience, of having a full fledged professional database programming environment, changed my life. I got to learn Oracle, I got to learn the tools available with Oracle - and shortly that made a difference. It opened opportunities for me and in many ways changed my career path, although I did not realize it at the time. I would not be as much about Oracle as I am today had I not had that opportunity.

Over the intervening years, this opportunity - for developers to get an inexpensive version of Oracle with the tools needed to develop applications was not as easy. Oracle did not sell for $99 USD for long after that and as the complexity of software grew, it became less reasonable for developers to just download, install, configure, and run Oracle. The opportunities I had starting out with Oracle became less available.

Until November 2005 that is - that is the month that Oracle announced the availability of Oracle Database 10g Express Edition - the fourth in a family of Oracle Database offerings that now include XE (Express Edition), SE1 (Standard Edition One), SE (Standard Edition) and EE (Enterprise Edition). XE, as I’ll refer to it in this article from now on, differs from the others in one main area - it is free to download, free to develop with, free to deploy on, and free to distribute. It makes the opportunity I myself had with Oracle way back when available to everyone again. A developer, student, a "want to be" DBA, software developer - whomever, may now use Oracle.

What is XE?

XE is in a word - Oracle. It has most of the features of Oracle Database 10g Standard Edition. It is designed to be as fully featured as far as functionality goes - with some slimming down (to get the total resource requirements down in size). For example, SQL and PL/SQL are included of course - but the ability to have a Java stored procedure is not. The Java VM in the database was removed to reduce the size of the installation as well as the amount of memory and other processing resources needed.

The major change in XE over the other editions is the introduction of some limits:

  • 4 GB of total user data. That is, outside of SYSTEM, SYSAUX, TEMP and the UNDO tablespace - you may store 4 GB of user data in XE. If your needs exceed this hard limit, you must consider one of the other editions.

  • 1 GB of memory may be used. XE will limit itself to using 1 GB of ram regardless of how much real memory is installed on the server.

  • 1 CPU. XE will limit itself to using a single CPU on a machine. It may be installed on machines with more than 1 CPU but only one CPU will be utilized.

  • 1 database instance per machine. Only one instance of the XE database may be running at any given time on a machine. So, you cannot run 32 instances of XE on a 16 CPU machine for example, you would need 32 separate machines for this.

As you can see - XE is designed to be an entry level, starter database. Quite capable of running many small to medium sized applications. For example, on asktom.oracle.com (my website) - I have 1.2 GB of user data. I run in less than 1 GB of ram (my SGA is about 700 MB and the PGA is targeted to use 256 MB at most). I have one single instance on that machine. I use about 30-40% of the CPU on a dual CPU machine. I do between 1.5 and 2.5 million transactions per month for over 115,000 users. At most there are 20 concurrent transactions (rare, usually 3-4 at most). This is a not insignificant application, but not a huge one either - there is a good chance my application would fit in the confines of XE.

XE was designed to be a smaller Oracle. The download size is about 150 MB on Linux or Windows and is available from http://www.oracle.com/technology/xe/. After downloading, the installation is a native install. That is, on Linux, you will use the rpm command to install the product and on Windows, you will be guided through an InstallShield installation process. I’ve installed on both platforms multiple times and it takes about 5 minutes per installation. Post install, you’ll find about 1 GB of disk space used (including the database of course).

What about support?

This is the second area XE differs from the other editions. Support is 100% community based via a forum on http://otn.oracle.com/. After you install XE, you are prompted to join this forum (you must register to gain access). After doing so, you’ll have access to XE knowledge both from within Oracle as well as other users outside of Oracle. I myself am participating in this forum heavily but all activity is as time permits for everyone involved.

I have found that community based support just works over time. I first became active with this mechanism way back in October of 1994 - on the Internet usenet newsgroups. Since then I’ve been very active in the Oracle community and this is just a small forum in a wide selection of forums available. In this forum we’ll focus on XE problems and solutions exclusively - and users familiar with XE are already participating on a daily basis.

Based on early feedback - this forum has been a success in many ways. Through the natural sharing that takes place - the XE database is already on many more Linux distributions than ever anticipated as users shared their experiences and solutions. To me, that is what it is all about.

Metalink support is explicitly not available with XE - rather if you need that level of support, you would opt for another database edition such as SE1 or above. There are opportunities for partners involved in the Oracle partner network (OPN) to get metalink access in a read only fashion to view the problem database and other metalink forums, but the primary support for XE is the forum on otn.oracle.com.

Who is this for?

XE is targeted after four main groups of people:

  • Developers - people I associate with frequently. I like people to get started with Oracle, to know Oracle. I believe that people use and like what they know. The earlier developers are exposed to something, the more they will know it, and like it.

  • DBAs - or rather, what I referred to previously as the "want to be" DBA. Many DBAs I know started as developers. XE will give those "want to be" DBAs the ability to play with (and perhaps destroy entirely) the Oracle database in an educational sense. To learn how things work.

  • ISVs (independent software vendors) and partners looking to develop new product. The initial hurdle of "license software to develop on" has been entirely removed. The ability to bundle their developed application with the XE database is appealing as well. Their small customers may find in some cases that XE is what they need - with an upgrade path to SE1 or above easily available at any time.

  • Education - from two perspectives. One is the classic "class room" education in high school and college. Each student has full access to the software as does the educator themselves. The other is the Oracle savvy person who would like to educate others - in seminars, class rooms, or whatever. They now both have access to the XE database to perform this very needed function - education at large of how Oracle works and how to use Oracle.

It is that first group that excites me the most - I started as a developer and still spend much of my time working in development related areas. I look forward to working with even more developers in the future.

What is the interface?

This was to me - an interesting change. The interface to XE is by default GUI based. Upon install, instead of firing up SQLPlus to connect to the database - you are encouraged to fire up your browser and connect to the database.

From this GUI administrative environment, you can launch into the administrative tools or start to build an application with HTML DB. After you log in, you will see a screen similar to that in Figure 1. Pretty much everything you would need to do with the database - from creating users, to creating applications is included in HTML DB with the XE database.

You are of course not limited to using HTML DB exclusively. The command line tools are still there (SQLPlus lives on). You may build applications using any language that supports connections to Oracle as the XE database comes with the networking software and works as a server. So, you can build applications using Java/JDBC, php, perl, Visual Studio and Visual Studio .Net - whatever you like.

Conclusion

The cost impediment of trying Oracle, building on Oracle, even deploying on Oracle has been removed. Oracle XE is a feature rich database not significantly different from the base SE1 edition of Oracle that has been around for a while. With this edition - there is no reason not to consider prototyping, developing and deploying a low cost solution on an Oracle database.


GNU General Public License
Autor: Thomas Kyte Nota:
Volver