[jboss-cvs] JBossAS SVN: r92093 - projects/docs/enterprise/5.0/Administration_And_Configuration_Guide/en-US.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Aug 6 19:10:49 EDT 2009


Author: irooskov at redhat.com
Date: 2009-08-06 19:10:49 -0400 (Thu, 06 Aug 2009)
New Revision: 92093

Modified:
   projects/docs/enterprise/5.0/Administration_And_Configuration_Guide/en-US/Alternative_DBs.xml
Log:
updated with info from QE


Modified: projects/docs/enterprise/5.0/Administration_And_Configuration_Guide/en-US/Alternative_DBs.xml
===================================================================
--- projects/docs/enterprise/5.0/Administration_And_Configuration_Guide/en-US/Alternative_DBs.xml	2009-08-06 22:18:40 UTC (rev 92092)
+++ projects/docs/enterprise/5.0/Administration_And_Configuration_Guide/en-US/Alternative_DBs.xml	2009-08-06 23:10:49 UTC (rev 92093)
@@ -620,7 +620,7 @@
   <section>
     <title>Change Database for the JMS Services</title>
     
-    <para>The JMS service in the JBoss Enterprise Application Platform uses relational databases to persist its messages. For improved performance, we should change the JMS service to take advantage of the external database. To do that, we need to replace the file <literal>&lt;JBoss_Home&gt;/server/all/deploy/jms-singleton/hsqldb-jdbc2-service.xml</literal> with a file in <literal>&lt;JBoss_Home&gt;/docs/examples/jms/</literal> depending on your external database. Notice that if you are using the <literal>default</literal> server profile, the file path is <literal>&lt;JBoss_Home&gt;/server/default/deploy/jms/hsqldb-jdbc2-service.xml</literal>.</para>
+    <para>The JMS service in the JBoss Enterprise Application Platform uses relational databases to persist its messages. For improved performance, we should change the JMS service to take advantage of the external database. To do that, we need to replace the file <literal>{jboss.dist}/server/${server}/deploy/messaging/${database}-persistence-service.xml</literal> with the file <literal>${jboss.dist}/docs/examples/jms/${database}-persistence-service.xml</literal> depending on your external database. Notice that if you are using the <literal>default</literal> server profile, the file path is <literal>{jboss.dist}/server/default/deploy/messaging/${database}-persistence-service.xml</literal>. <!--To do that, we need to replace the file <literal>&lt;JBoss_Home&gt;/server/all/deploy/jms-singleton/hsqldb-jdbc2-service.xml</literal> with a file in <literal>&lt;JBoss_Home&gt;/docs/examples/jms/</literal> depending on your external database. Notice that if you are using the <literal!
 >default</literal> server profile, the file path is <literal>&lt;JBoss_Home&gt;/server/default/deploy/jms/hsqldb-jdbc2-service.xml</literal>.--></para>
 		
     <itemizedlist>
       <listitem><para>MySQL: <literal>mysql-jdbc2-service.xml</literal></para></listitem> 
@@ -650,19 +650,62 @@
   <section>
     <title>Specify Database Dialect for Java Persistence API</title>
     
-    <para>The Java Persistence API (JPA) entity manager can save EJB3 entity beans to any backend database. Hibernate provides the JPA implementation in JBoss Enterprise Application Platform.  Hibernate has a dialect auto-detection mechanism that works for most databases including the dialects for databases referenced in this appendix which are listed below.  If a specific dialect is needed for alternative databases,  you can configure the database dialect in the  <literal>&lt;JBoss_Home&gt;/server/all/deploy/ejb3.deployer/META-INF/persistence.properties</literal> file. You need to un-comment the <literal>hibernate.dialect</literal> property and change its value to the following based on the database you setup. For a complete list of dialects, refer to the Hibernate Reference Guide, Chapter 3, Section 4.1 SQL Dialects.</para>
+    <para>The Java Persistence API (JPA) entity manager can save EJB3 entity beans to any backend database. Hibernate provides the JPA implementation in JBoss Enterprise Application Platform.  Hibernate has a dialect auto-detection mechanism that works for most databases including the dialects for databases referenced in this appendix which are listed below.  If a specific dialect is needed for alternative databases,  you can configure the database dialect in the  <literal>${jboss.dist}/server/${server}/deployers/ejb3.deployer/META-INF/jpa-deployers-jboss-beans.xml</literal> file. To configure this file you need to uncomment the set of tags related to the map entry <literal>hibernate.dialect</literal> and change the values to the following based on the database you setup. <!--For a complete list of dialects, refer to the Hibernate Reference Guide, Chapter 3, Section 4.1 SQL Dialects.--></para>
           
-    <itemizedlist>
-      <listitem><para>Oracle 9i: org.hibernate.dialect.Oracle9iDialect</para></listitem>
-      <listitem><para>Oracle 10g: org.hibernate.dialect.Oracle10gDialect</para></listitem>
-      <listitem><para>Microsoft SQL Server 2005: org.hibernate.dialect.SQLServerDialect</para></listitem>
-      <listitem><para>PostgresSQL 8.1: org.hibernate.dialect.PostgreSQLDialect</para></listitem>
-      <listitem><para>MySQL 5.0: org.hibernate.dialect.MySQL5Dialect</para></listitem>
-      <listitem><para>DB2 8.0: org.hibernate.dialect.DB2Dialect</para></listitem>
-      <listitem><para>Sybase ASE 12.5: org.hibernate.dialect.SybaseDialect</para></listitem>
-    </itemizedlist>
+ <itemizedlist>
+ 	<listitem>
+		<para>
+			Oracle 10g: org.hibernate.dialect.Oracle10gDialect
+		</para>
+	</listitem>
+	<listitem>
+		<para>
+			Oracle 11g: org.hibernate.dialect.Oracle10gDialect
+		</para>
+	</listitem>
+	<listitem>
+		<para>
+			Microsoft SQL Server 2005: org.hibernate.dialect.SQLServerDialect
+		</para>
+	</listitem>
+	<listitem>
+		<para>
+			Microsoft SQL Server 2008: org.hibernate.dialect.SQLServerDialect
+		</para>
+	</listitem>
+	<listitem>
+		<para>
+			PostgresSQL 8.2.3: org.hibernate.dialect.PostgreSQLDialect
+		</para>
+	</listitem>
+	<listitem>
+		<para>
+			PostgresSQL 8.3.7: org.hibernate.dialect.PostgreSQLDialect
+		</para>
+	</listitem>
+	<listitem>
+		<para>
+			MySQL 5.0: org.hibernate.dialect.MySQL5InnoDBDialect
+		</para>
+	</listitem>
+	<listitem>
+		<para>
+			MySQL 5.1: org.hibernate.dialect.MySQL5InnoDBDialect
+		</para>
+	</listitem>
+	<listitem>
+		<para>
+			DB2 9.1: org.hibernate.dialect.DB2Dialect
+		</para>
+	</listitem>
+	<listitem>
+		<para>
+			Sybase ASE 15: org.hibernate.dialect.SybaseDialect
+		</para>
+	</listitem>
+ </itemizedlist>
     
-    <note><title>DB2 7.2 with Universal JDBC Driver (Type 4)</title>
+<!--    <note><title>DB2 7.2 with Universal JDBC Driver (Type 4)</title>
 	    <para>
 		 Large Objects (LOBs) are supported only with DB2 Version 8 servers and above with the universal JDBC driver.
 		 Hence JMS services which stores messages as BLOBS and Timer services which uses BLOB fields for storing objects do not work with the JDBC Type 4 driver and DB2 7.2.
@@ -673,7 +716,7 @@
 	 <para>
 	All JBoss services work with the JDBC Type 2 driver and DB2 Version 7.2 servers.
 	</para>
-    </note>
+    </note> -->
 	    
     
     
@@ -694,25 +737,14 @@
 	      To change the JNDI name, just open the <literal>*-ds.xml</literal> file for your external database, and change the value of the <literal>jndi-name</literal> property to <literal>DefaultDS</literal>. For instance, in <literal>mysql-ds.xml</literal>, you'd change MySqlDS to DefaultDS and so on. You will need to remove the <literal>&lt;JBoss_Home&gt;/server/all/deploy/hsqldb-ds.xml</literal> file after you are done to avoid duplicated <literal>DefaultDS</literal> definition.
       </para>
       <para>
-	      In the <literal>jms/*-jdbc2-service.xml</literal> file, you should also change the datasource name in the <literal>depends</literal> tag for the <literal>PersistenceManagers</literal> MBean to <literal>DefaultDS</literal>. For instance, for <literal>mysql-jdbc2-service.xml</literal> file, we change the <literal>MySqlDS</literal> to <literal>DefaultDS</literal>.  
+	      In the <literal>messaging/${database}-persistence-service.xml</literal> file, you should also change the datasource name in the <literal>depends</literal> tag for the <literal>PersistenceManagers</literal> MBean to <literal>DefaultDS</literal>. For instance, for <literal>mysql-jdbc2-service.xml</literal> file, we change the <literal>MySqlDS</literal> to <literal>DefaultDS</literal>.  
 	      
       </para>
       
-      
-      
-      <para>The easy way is just to change the JNDI name for the external database to <literal>DefaultDS</literal>. Most JBoss services are hard-wired to use the <literal>DefaultDS</literal> by default. So, by changing the datasource name, we do not need to change the configuration for each service individually.</para>
-      
-      <para>To change the JNDI name, just open the <literal>*-ds.xml</literal> file for your external database, and change the value of the <literal>jndi-name</literal> property to <literal>DefaultDS</literal>. For instance, in <literal>mysql-ds.xml</literal>, you'd change <literal>MySqlDS</literal> to <literal>DefaultDS</literal> and so on. You will need to remove the <literal>&lt;JBoss_Home&gt;/server/all/deploy/hsqldb-ds.xml</literal> file after you are done to avoid duplicated <literal>DefaultDS</literal> definition.</para>
-      
-      <para>In the <literal>jms/*-jdbc2-service.xml</literal> file, you should also change the datasource name in the <literal>depends</literal> tag for the <literal>PersistenceManagers</literal> MBean to <literal>DefaultDS</literal>. For instance, for <literal>mysql-jdbc2-service.xml</literal> file, we change the <literal>MySqlDS</literal> to <literal>DefaultDS</literal>.</para>
-      
 <programlisting role="XML">.. ...
-&lt;mbean code="org.jboss.mq.pm.jdbc2.PersistenceManager"
-       name="jboss.mq:service=PersistenceManager"%gt;
-  &lt;depends optional-attribute-name="ConnectionManager"&gt;
-    jboss.jca:service=DataSourceBinding,name=DefaultDS
-  &lt;/depends&gt;
-... ...
+&lt;mbean code="org.jboss.messaging.core.jmx.JDBCPersistenceManagerService" name="jboss.messaging:service=PersistenceManager" xmbean-dd="xmdesc/JDBCPersistenceManager-xmbean.xml"&gt;
+		
+&lt;depends&gt;jboss.jca:service=DataSourceBinding,name=DefaultDS&lt;/depends&gt; 
 </programlisting>
       
     </section>
@@ -725,26 +757,27 @@
       <para>A safer and more flexible way to hook up JBoss Enterprise Application Platform services with the external datasource is to manually change the <literal>DefaultDS</literal> in all standard JBoss services to the datasource JNDI name defined in your <literal>*-ds.xml</literal> file (e.g., the <literal>MySqlDS</literal> in <literal>mysql-ds.xml</literal> etc.). Below is a complete list of files that contain <literal>DefaultDS</literal>. You can update them all to use the external database on all JBoss services or update some of them to use different combination of datasources for different services.</para>
       
       <itemizedlist>
-        <listitem><para><literal>&lt;JBoss_Home&gt;/server/all/conf/login-config.xml</literal>: This file is used in Java EE container managed security services.</para></listitem>
+	      <listitem><para><literal>${jboss.dist}/server/${server}/conf/login-config.xml</literal>: This file is used in Java EE container managed security services.</para></listitem>
       
-	<listitem><para><literal>&lt;JBoss_Home&gt;/server/all/conf/standardjbosscmp-jdbc.xml</literal>: This file configures the CMP beans in the EJB container.</para></listitem>
+	      <listitem><para><literal>${jboss.dist}/server/${server}/conf/standardjbosscmp-jdbc.xml</literal>: This file configures the CMP beans in the EJB container.</para></listitem>
       
 	<listitem><para><literal>&lt;JBoss_Home&gt;/server/all/deploy/ejb-deployer.xml</literal>: This file configures the JBoss EJB deployer.</para></listitem>
       
-	<listitem><para><literal>&lt;JBoss_Home&gt;/server/all/deploy/schedule-manager-service.xml</literal>: This file configures the EJB timer services.</para></listitem>
+		<listitem><para><literal>${jboss.dist}/server/${server}/deploy/ejb2-timer-service.xml</literal>: This file configures the EJB timer services.</para></listitem>
       
-	<listitem><para><literal>&lt;JBoss_Home&gt;/server/all/deploy/snmp-adaptor.sar/attributes.xml</literal>: This file is used by the SNMP service.</para></listitem>
+		<listitem><para><literal>${jboss.dist}/server/${server}/deploy/snmp-adaptor.sar/attributes.xml</literal>: This file is used by the SNMP service.</para></listitem>
       
-	<listitem><para><literal>&lt;JBoss_Home&gt;/server/all/deploy/juddi-service.sar/META-INF/jboss-service.xml</literal>: This file configures the UUDI service.</para></listitem>
+		<listitem><para><literal>${jboss.dist}/server/${server}/deploy/juddi-service.sar/META-INF/jboss-service.xml</literal>: This file configures the UUDI service.</para></listitem>
         
-	<listitem><para><literal>&lt;JBoss_Home&gt;/server/all/deploy/juddi-service.sar/juddi.war/WEB-INF/jboss-web.xml</literal>: This file configures the UUDI service.</para></listitem>
+		<listitem><para><literal>${jboss.dist}/server/${server}/deploy/juddi-service.sar/juddi.war/WEB-INF/jboss-web.xml</literal>: This file configures the UUDI service.</para></listitem>
         
 	<listitem><para><literal>&lt;JBoss_Home&gt;/server/all/deploy/juddi-service.sar/juddi.war/WEB-INF/juddi.properties</literal>: This file configures the UUDI service.</para></listitem>
         
-	<listitem><para><literal>&lt;JBoss_Home&gt;/server/all/deploy/uuid-key-generator.sar/META-INF/jboss-service.xml</literal>: This file configures the UUDI service.</para></listitem>
+		<listitem><para><literal>${jboss.dist}/server/${server}/deploy/uuid-key-generator.sar/META-INF/jboss-service.xml</literal>: This file configures the UUDI service.</para></listitem>
         
-	<listitem><para><literal>&lt;JBoss_Home&gt;/server/all/jms/hsqldb-jdbc-state-service.xml</literal> and <literal>&lt;JBoss_Home&gt;/server/all/deploy-hasingleton/jms/hsqldb-jdbc-state-service.xml</literal>: Those files configure the JMS persistence service as we discussed earlier.</para></listitem>
+		<listitem><para><literal>${jboss.dist}/server/${server}/deploy/messaging/messaging-jboss-beans.xml</literal> and <literal>${jboss.dist}/server/${server}/deploy/messaging/oracle-persistence-service.xml</literal>: Those files configure the JMS persistence service as we discussed earlier.</para></listitem>
              
+	<!--	${jboss.dist}/server/${server}/deploy/schedule-manager-service.xml -->
       </itemizedlist>
       
     </section>
@@ -756,7 +789,7 @@
     
     <para>In our setup discussed in this chapter, we rely on the JBoss Enterprise Application Platform to automatically create needed tables in the external database upon server startup. That works most of the time. But for databases like Oracle, there might be some minor issues if you try to use the same database server to back more than one JBoss Enterprise Application Platform instance.</para>
     
-    <para>The Oracle database creates tables of the form <literal>schemaname.tablename</literal>. The <literal>TIMERS</literal> and <literal>HILOSEQUENCES</literal> tables needed by JBoss Enterprise Application Platform would not get created on a schema if the table already exists on a different schema. To work around this issue, you need to edit the <literal>&lt;JBoss_Home&gt;/server/all/deploy/ejb-deployer.xml</literal> file to change the table name from <literal>TIMERS</literal> to something like <literal>schemaname2.tablename</literal>.</para>
+    <para>The Oracle database creates tables of the form <literal>schemaname.tablename</literal>. The <literal>TIMERS</literal> and <literal>HILOSEQUENCES</literal> tables needed by JBoss Enterprise Application Platform would not get created on a schema if the table already exists on a different schema. To work around this issue, you need to edit the <literal>${jboss.dist}/server/${server}/deploy/ejb2-timer-service.xml</literal> file to change the table name from <literal>TIMERS</literal> to something like <literal>schemaname2.tablename</literal>.</para>
     
 <programlisting role="XML">&lt;mbean code="org.jboss.ejb.txtimer.DatabasePersistencePolicy" 
 name="jboss.ejb:service=EJBTimerService,persistencePolicy=database"&gt;
@@ -848,12 +881,12 @@
 	  <itemizedlist>
 		  <listitem>
 			  <para>
-				  &lt;xa-datasource-class&gt; - the class implementing the XADataSource
+				  &lt;xa-datasource-class&gt; - This is the class that implements the XADataSource
 			  </para>
 		  </listitem>
 		  <listitem>
 			  <para> 
-				  &lt;xa-datasource-property&gt; - properties used to configure the XADataSource. For example:
+				  &lt;xa-datasource-property&gt; - This contains that properties that are used to configure the XADataSource. For example:
 			  </para>
 		  </listitem>
 	  </itemizedlist>
@@ -868,17 +901,17 @@
 <itemizedlist>
 	<listitem>
 		<para>
-  		&lt;isSameRM-override-value&gt; - set to false to fix problems with Oracle
+  		&lt;isSameRM-override-value&gt; - In order to fix issues with Oracle this property should be set to false
 		</para>
 	</listitem>
 	<listitem>
 		<para>
-		&lt;track-connection-by-tx/&gt; - set to fix problems with Oracle (not necessarily in JBoss-5.x where it is enabled by default and the element is deprecated)
+		&lt;track-connection-by-tx/&gt; - This property is deprecated and enabled by default in order to correct issues with Oracle
 		</para>
 	</listitem>
 	<listitem>
 		<para>
-		&lt;no-tx-separate-pools/&gt; - Pool Transactional and non-Transactional connections separately. Using this option will cause your total pool size to be twice max-pool-size because two actual pools will be created. Used to fix problems with Oracle. 
+			&lt;no-tx-separate-pools/&gt; - This property will pool Transactional and non-Transactional connections separately and cause your total pool size to be twice the <literal>max-pool-size</literal>, as two pools will be created. This is used to fix issues with Oracle. 
 		</para>
 	</listitem>
 </itemizedlist>




More information about the jboss-cvs-commits mailing list