352
技術社區[雲棲]
weblogic配置sqlserver數據源
前提概要:某個項目需要做查詢頁麵,但是查詢的庫有多個,且有多種:oracle、SqlServer和pg,所以配置數據源也成了一個問題,因為weblogic版本是10.3.2版本,沒有sqlserver的jdbc驅動,因此需要添加驅動才能配置。
1、中間件及數據庫信息
中間件:weblogic 10.3.2.0
數據庫:sqlserver 2014
ip:10.10.10.10
port:8888
客戶端連接時數據庫名:GCCDB
代碼連接時數據庫名:UMPDB
用戶:dbuser
密碼:123456ABc
2、下載sqlserver的jdbc包並配置
(1)從微軟官方搜索:SQL Server JDBC Driver
(2)選擇:Microsoft JDBC Driver 4.0 for SQL Server
• Sqljdbc4.jar 需要 JRE 6 並支持 JDBC 4.0 API
受支持的 SQL Server 版本:
• Microsoft SQL Server 2016
• Microsoft SQL Server 2014
(3)下載地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=54629
(4)拷貝將sqlserver4.jar包放在目標目錄下:
選擇sqlserver4.jar放到C:\Oracle\Middleware\wlserver_10.3\common\lib目錄下
配置C:\Oracle\Middleware\wlserver_10.3\common\bin下的的commEnv.cmd文件中WEBLOGIC_CLASSPATH,在最後加上“;%WL_HOME%\common\lib\sqljdbc4.jar”
別忘了分號隔開!!!
注:weblogic啟動的時候,會加載這個配置項的sqlserver4.jar
3、weblogic配置步驟
(1)數據源屬性
名稱:umpDS
JNDI名稱:jdbc/yypt/ump
數據庫類型:MS SQL Server
數據庫驅動程序:其他
(2)連接屬性
數據庫名稱(為客戶端連接時數據庫名):GCCDB
主機名:10.10.10.10
端口:8888
數據庫用戶名:dbuser
口令:123456ABc
確認口令:123456ABc
(3)測試數據庫連接
驅動程序類名稱:com.microsoft.sqlserver.jdbc.SQLServerDriver
URL:jdbc:sqlserver://10.10.10.10:8888;datebaseName=GCCDB;user=dbuser;password=123456ABc
(4)測試配置
(5)完成
無報錯則ok
4、報錯
(1)測試配置連接報錯
Cannot load driver: com.microsoft.sqlserver.jdbc.SQLServerConnectionPoolDataSource
這個報錯是你的驅動有問題,因為下載的包裏有sqlserver4.jar和sqlserver.jar兩個包,這裏用sqlserver4.jar,
還要確認ommEnv.cmd文件中WEBLOGIC_CLASSPATH變量結尾添加了sqlserver4.jar的路徑;
還要確認你的驅動程序類名稱是否正確,為com.microsoft.sqlserver.jdbc.SQLServerDriver,不同的驅動驅動名也是不同的。
(2)點擊完成激活更改報錯
The DBMS driver exception was: Login failed for user ''. ClientConnectionId:32a26820-3d59-4c00-bb3d-1b0ad91f34b9
這個問題是你的數據源配置有問題,仔細檢查下你的數據庫名稱、用戶、密碼,是否有誤。我這裏是數據庫名稱有誤,應該為客戶端連接時數據庫名:GCCDB。
在啟動實例的時候,發現報錯:
javax.naming.NameNotFoundException: Unable to resolve 'jdbc.yypt.ump'. Resolved 'jdbc.yypt'; remaining name 'ump'
通過分析得出問題所在,在確認context文件中地配置源沒有問題,可以定位問題在數據源配置上有問題,查看數據源,發現配置的數據源不在Adminserver控製下,勾選保存後,再次報錯:
The DBMS driver exception was: Login failed for user ''. ClientConnectionId:32a26820-3d59-4c00-bb3d-1b0ad91f34b9
又出現這個問題,發現所有信息都沒有問題,就是在url上的問題,引起了這個報錯,將原來的url:
jdbc:sqlserver://10.10.10.10:8888
修改為:
jdbc:sqlserver://10.10.10.10:8888;datebaseName=GCCDB;user=dbuser;password=123456ABc
最後更新:2017-09-08 09:02:49