Detail
Impressions:
I have previously run the full blown Oracle 10g on Fedora (core) 5, 6, and 7 - however it can get fairly complex to install - and the system is cumbersome and memory hungry. The memory consumed is the real problem - especially when trying to run several JVMs and VMWare in parallel with a heavy running Oracle 10g system.
So - after running the full 10g for a few years, I decided to try Oracle 10 eXpress Edition (XE).
Installation
The installation was straightforward. No alterations necessary to the kernel params (as with the full 10g install).
I started with:
yum install libaio
Then - I obtained the install RPM, and I installed it as root:
# rpm -ivh oracle-xe-10.2.0.1-1.0.i386.rpm
The RPM installer creates the oracle user and dba group within your system. Then - run the configure (again as root):
# /etc/init.d/oracle-xe configure
root@flask:/mnt/data/archive/oracle !!>/etc/init.d/oracle-xe configure
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. Press <Enter> to accept the defaults.
Ctrl-C will abort.
Specify the HTTP port that will be used for Oracle Application Express [8080]:18080
Specify a port that will be used for the database listener [1521]:
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:
Confirm the password:
Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]:n
Starting Oracle Net Listener...Done
Configuring Database...grep: /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/config/log/*.log: No such file or directory
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:18080/apex"
Follow the prompts. I personally do not start the DB with system startup - there are scripts to do this linked in the menu structure created in Gnome. I run the scripts startdb.sh and stopdb.sh from the command line as oracle.
Though not noted, the SID for XE is appropriately enough XE. The RPM/configure script does not seem to setup the environment for the oracle user. I've set these up myself:
export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
export ORACLE_SID=XE
export PATH=$PATH:$ORACLE_HOME/bin
This allows me to run sqlplus as oracle.
Tweaks
The XE system seemed to be behaving quiet well initially, however after getting several larger JVMs and connection pools connected, I started to get these errors:
[13 11 2007 15:00:17] [main] ERROR: Caused by: java.sql.SQLException: Listener refused the connection with the following error:
[13 11 2007 15:00:17] [main] ERROR: ORA-12519, TNS:no appropriate service handler found
[13 11 2007 15:00:17] [main] ERROR: The Connection descriptor used by the client was:
[13 11 2007 15:00:17] [main] ERROR: localhost:1521:XE
[13 11 2007 15:00:17] [main] ERROR:
[13 11 2007 15:00:17] [main] ERROR: at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
[13 11 2007 15:00:17] [main] ERROR: at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:380)
[13 11 2007 15:00:17] [main] ERROR: at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:401)
[13 11 2007 15:00:17] [main] ERROR: at oracle.jdbc.driver.PhysicalConnection.(PhysicalConnection.java:441)
As it turns out, this is related to process/connection limits. I would like to note that the error itself is very poorly written "No appropriate service handler found"??
To see what sessions are active, try this as a privilidged users (system or sysdba or something):
select s.sid, s.serial#, s.username, s.schemaname, s.machine, s.osuser, s.program from v$session s
Looks like at the outset - XE is limited to 40 user sessions (processes) and 49 total sessions (sessions). You can see this by looking for the values in v$system...
Anyway - here is what I've upped the values to:
alter system set processes=200 scope=spfile;
alter system set sessions=225 scope=spfile;
|