5.3. Changing the Database
The default persistence configuration works with Hypersonic (HSQLDB) so that the JBoss Enterprise Platforms are able to run "out of the box". However, Hypersonic is not supported in production and should not be used in a production environment.
Known issues with the Hypersonic Database include:
- no transaction isolation
- thread and socket leaks (
connection.close()does not tidy up resources)
- persistence quality (logs commonly become corrupted after a failure, preventing automatic recovery)
- database corruption
- stability under load (database processes cease when dealing with too much data)
- not viable in clustered environments
See the "Using Other Databases" chapter in the Getting Started Guide for further information.
The Persistence Manager, Post Office and JMS User Manager all interact with persistent storage. The Persistence Manager handles message-related persistence. The Post Office handles binding related persistence. The JMS User Manager handles user-related persistence. All configuration for these managed beans is handled in the
<your database type>-persistence-service.xml file.
Example configuration files for MySQL, Oracle, PostgreSQL, Microsoft SQL Server or Sybase databases are available in the
jboss-as/docs/examples/jms directory of the release bundle.
To enable support for one of these databases, replace the default
jboss-as/server/$PROFILE/deploy/messaging/hsqldb-persistence-service.xml configuration file with the configuration file specific to your database type and restart the server.
By default, the messaging services relying on a data store reference
java:/DefaultDS for the data source. To deploy a data source with a different JNDI name, you must update all
DataSource attributes in the persistence configuration file. Example data source configurations are included in the distribution.