The persistent data store for an enhanced cluster is maintained on a highly-available JDBC database.
The highly-availabile database may be MySQL Cluster Edition, High Availability Session Store (HADB), or Oracle Real Application Clusters (RAC), or it may be an open-source or third-party product. As described in JDBC-Based Persistence Properties, the imq.persist.jdbc.dbVendor broker property specifies the name of the database vendor, and all of the remaining JDBC-related properties are qualified with this vendor name.
The JDBC-related properties are discussed under JDBC-Based Persistence Properties and summarized in Table 17–7. See the example configurations for MySQL and HADB in Example 8–1 and Example 8–2, respectively.
In setting JDBC-related properties for an enhanced cluster, note the following vendor-specific issues:
MySQL Cluster Edition
When using MySQL Cluster Edition as a highly-available database, you must specify the NDB Storage Engine rather than the InnoDB Storage Engine set by Message Queue by default. To specify the NDB Storage Engine, set the following broker property for all brokers in the cluster:
imq.persist.jdbc.mysql.tableoption=ENGINE=NDBCLUSTER
HADB
When using HADB in a GlassFish Server environment, if the integration between Message Queue and GlassFish Server is local (that is, there is a one-to-one relationship between GlassFish Server instances and Message Queue brokers), GlassFish Server will automatically propagate HADB-related properties to each broker in the cluster. However, if the integration is remote (a single GlassFish Server instance using an externally configured broker cluster), then it is your responsibility to configure the needed HADB properties explicitly.