WebSphere中配置MS SQL SERVER XA數據源

WebSphere中配置MS SQL SERVER XA數據源
1、JDBC提供者
WAS內置了MS SQL SERVER的驅動,所以JDBC的提供者你可以選擇WAS內置的JDBC驅動.
配置參數如下:
提供者名稱:
MS SQL SERVER(XA) (可以自己隨便取)
類別路徑:
${WAS_LIBS_DIR}/sqlserver.jar
${WAS_LIBS_DIR}/base.jar
${WAS_LIBS_DIR}/util.jar
${WAS_LIBS_DIR}/spy.jar
實作類別名稱:
com.ibm.websphere.jdbcx.sqlserver.SQLServerDataSource

2、數據源的配置方法與其它DB的數據源配置方法無異。
可參考: http://www.blogjava.net/fastzch/archive/2006/12/03/85176.html

3、關鍵部分,配置你的SQL SERVER DB,使其支持XA方式。
(1)到下面這個地址下載SQL SERVER支援XA的驅動:
       ftp://ftp.software.ibm.com/software/websphere/info/tools/DataDirect/datadirect.htm
      也可以到MS的官方網站下載對應的驅動。
(2)下載後會有一個RAR包,將其解壓,根據你的OS是32位還是64位來決定你要選用哪個sqljdbc.dll
      將此文件放入SQL SERVER安裝目錄的BINN目錄下。
(3)重啟SQL SERVER DB。
(4)在Master資料庫上運行RAR包中的instjdbc.sql這個SQL
         

/**/ /*
**    INSTJDBC.SQL
**    Installs XA stored procedures used by the JDBC driver 
*/



go
use master
go
dump tran master with no_log
go


/**/ /*
** drop procedures if they're already in the database
*/


sp_dropextendedproc 
' xp_jdbc_open '  
go
sp_dropextendedproc 
' xp_jdbc_open2 '  
go
sp_dropextendedproc 
' xp_jdbc_close '
go
sp_dropextendedproc 
' xp_jdbc_close2 '
go
sp_dropextendedproc 
' xp_jdbc_start '
go
sp_dropextendedproc 
' xp_jdbc_start2 '
go
sp_dropextendedproc 
' xp_jdbc_end '
go
sp_dropextendedproc 
' xp_jdbc_end2 '
go
sp_dropextendedproc 
' xp_jdbc_prepare '
go
sp_dropextendedproc 
' xp_jdbc_prepare2 '
go
sp_dropextendedproc 
' xp_jdbc_commit '
go
sp_dropextendedproc 
' xp_jdbc_commit2 '
go
sp_dropextendedproc 
' xp_jdbc_rollback '
go
sp_dropextendedproc 
' xp_jdbc_rollback2 '
go
sp_dropextendedproc 
' xp_jdbc_forget '
go
sp_dropextendedproc 
' xp_jdbc_forget2 '
go
sp_dropextendedproc 
' xp_jdbc_recover '
go
sp_dropextendedproc 
' xp_jdbc_recover2 '
go
dump tran master with no_log
go



/**/ /*
**  add references for the stored procedures
*/


print 
' creating JDBC XA procedures '
go

sp_addextendedproc 
' xp_jdbc_open ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_open2 ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_close ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_close2 ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_start ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_start2 ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_end ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_end2 ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_prepare ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_prepare2 ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_commit ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_commit2 ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_rollback ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_rollback2 ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_forget ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_forget2 ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_recover ' ' sqljdbc.dll '
go
sp_addextendedproc 
' xp_jdbc_recover2 ' ' sqljdbc.dll '
go


/**/ /*
**  grant privileges so that all users can enlist in XA transactions
*/

grant execute on xp_jdbc_open to 
public
go
grant execute on xp_jdbc_open2 to 
public
go
grant execute on xp_jdbc_close to 
public
go
grant execute on xp_jdbc_close2 to 
public
go
grant execute on xp_jdbc_start to 
public
go
grant execute on xp_jdbc_start2 to 
public
go
grant execute on xp_jdbc_end to 
public
go
grant execute on xp_jdbc_end2 to 
public
go
grant execute on xp_jdbc_prepare to 
public
go
grant execute on xp_jdbc_prepare2 to 
public
go
grant execute on xp_jdbc_commit to 
public
go
grant execute on xp_jdbc_commit2 to 
public
go
grant execute on xp_jdbc_rollback to 
public
go
grant execute on xp_jdbc_rollback2 to 
public
go
grant execute on xp_jdbc_forget to 
public
go
grant execute on xp_jdbc_forget2 to 
public
go
grant execute on xp_jdbc_recover to 
public
go
grant execute on xp_jdbc_recover2 to 
public
go

print 
''
print 
' instxa.sql completed successfully. '
go

dump tran master with no_log
go
checkpoint
go
/** */ /**/


4、在控制面板的服務中,啟動“Distributed Transaction Coordinator”服務。
      此服務的作用如下:協調跨越多個資源管理員的交易,比如資料庫、訊息佇列及檔案系統。如果此服務被停止,這些交易將不會發生。如果服務被停用,任何明顯依存它的服務將無法啟動。

5、測試數據源:
完成!

你可能感兴趣的:(WebSphere中配置MS SQL SERVER XA數據源)