Introduction
Oracle 11g XE is a free edition of Oracle database which supports most of the functionality of Standard edition. 11g XE is available (at least) for Windows and Linux.
As with all free versions of databases, XE also has limitations:
- The maximum database size is 11 GB.
- The maximum amount of RAM XE can use is 1 GB.
- Only one instance of Oracle XE can be installed on a single computer.
- XE uses only a single CPU so it does not distribute operations between several CPUs.
Installation
First, download the Oracle 11g XE and unzip the package. The setup.exe is located at DISK1 directory. When installation starts, a welcome screen is shown followed by the license agreement. After these, Oracle checks the requirements for installation, which are:
- Operating system, at least Windows XP
- The user has administrator privileges
- No existing XE instances are found
The next step is to define the installation folder. The default is oraclexe
. After that, the installation prompts for database passwords. Note that this password will be used for both SYS
and SYSTEM
. You should use a very strong password as these users are the typical administrators of an Oracle instance. Also changing for example SYS
password to something else after the installation helps to distinguish these users when logging into the system.
And at the end, before the actual installation, the Summary screen is shown. Note, the default ports that are used for the instance:
- Listener: 1521
- Services for MTS: 2030
- HTTP listener: 8080
So What Was Installed
After the installation has ended, let’s have a look at the things that were installed.
Services
If you open the computer management and have a look at the services installed, you’ll find five new services.
OracleServiceXE
This is the actual database engine.OracleXETNSListener
This service is responsible for listening to incoming connections and passing successful connections to the database engine. Note that if this service is down, you won’t be able to connect to the database remotely. Existing connections won't be affected. OracleJobSchedulerXE
This service is used when external jobs are run. By default, it is disabled. If you plan to run external jobs (such as executables, batches, etc.), modify the account the service uses to use proper, low-privileged credentials and start the service. OracleXEClrAgent
On Windows platforms, Oracle offers CLR integration. Since a CLR operation is run using an extproc
process, it’s normally done using a dedicated (single threaded) extproc
for a single session. This may not be the optimal way to handle CLR calls. ClrAgent provides a multi-threaded mechanism so that a single extproc
process may serve several CLR calls.OracleMTSRecoveryService
This one is responsible of resolving in-doubt transactions when Oracle is participating in distributed transactions with Microsoft Transaction Server.
Programs
In start menu, few new programs are added. Actually, most of these programs are batch scripts:
- Start and Stop Database are used to control the
OracleServiceXE
service - Backup and Restore Database are scripts for backing up or restoring the database data using
rman
- Run SQL Command Line opens a console based SQL*Plus which can be used to execute SQL commands or to run scripts against the database
- Get Started opens a web site used for investigating
- storage, the amount of disk space used by tablespaces or drill to segments
- current sessions and basic information about the sessions such as client and application information and active SQL statement
- parameters show current initialization parameter values.
Few Locations to Note
Now when the installation has been done, there are few locations (and files) that should be noted:
\oraclexe\app\oracle\oradata\XE
This is the folder where the database files are located after the installation. If (when) new database files are added, the new files can be placed somewhere else, but critical files such as control file, system database file, undo tablespace, etc. are located here.
\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN
This directory contains the configuration files for database connections:
listener.ora
configures the listener. For example, by default Oracle is listening port 1521. This can be changed by changing the configuration in listener.ora
and restarting the listener service. So this file controls the behavior at 'server side'. tnsnames.ora
defines the network configuration for client programs such as SQL*Plus. For example, when you establish a connection to XE service, XE is actually an alias which is used to resolve the real network configuration using tnsnames.ora
. If you change the port listener uses, you must also reflect that change to the tnsnames.ora
.
\oraclexe\app\oracle\diag\rdbms\xe\xe
This folder contains different kind of log and trace files for the database instance. While Oracle still has the alert_xe.log
under trace
–directory, there’s now another type of log file under alert
–directory called log.xml
. As the name suggests, it’s an XML formatted file containing all important messages that the database records. However, since there’s no root node in this file, most of the basic XML editors are unable to show its content. Oracle has provided a tool called ADRCI
to investigate the contents. This tool can be launched from command prompt.
\oraclexe\app\oracle\diag\tnslsnr\<machinename>\listener
This folder is similar to the corresponding rdbms folder. However, this folder contains log and trace information for the listener. As with rdbms, the log.xml file can be read using ADRCI
.
Additional Tools
Since using pure command line based tools isn’t necessarily very productive, you can download few additional tools.
SQL Developer
This is a graphical SQL editor actually with lots of functionality. While SQL commands can be executed, etc. you can view execution plans, get the server output, run different kinds of reports, create objects, etc.
Currently the 32 bit version includes the necessary JDK, but if you’re installing SQL Developer to a 64-bit windows, you must download the 64-bit version and with this version, the JDK must be downloaded and installed separately.
SQL Developer Data Modeler
Data Modeler is a tool which you can use to design logical or relational data models. The tool has the ability to make transformations between these designs. The design model contains the basic building blocks such as entities, relations and so on, but is also capable of handling data flow diagrams, domains, data types, etc.
ODP.NET, ODT and ODAC
ODP.NET (Oracle Data Provider for NET) is the Oracle supplied library to use in application development when Oracle connection is required. ODP.NET utilizes several Oracle specific features and because of this, it’s much more powerful than for example OLEDB based connections.
ODT (Oracle Developer Tools for Visual Studio) is a set of Visual Studio add-ins for Visual Studio that help application development. These add-ins include functionality such as automatic code generation, tuning tools, PL/SQL editor, AQ designers, etc. Unfortunately, ODT cannot be used with Express Editions of Visual Studio because of the limitations of the Express Edition.
ODAC (Oracle Data Access Components) is a package which contains ODP.NET but also other connectivity libraries such as ODBC, OLEDB and tools like SQL*Plus. ODAC can be downloaded with or without ODT.
History
- September 14, 2011: Created