Microsoft 會將 Microsoft SQL Server 2008 Service Pack 3 (SP3) 或 Microsoft SQL Server 2008 R2 修正程式作為一個可供下載的檔案發佈。 由於這些修正程式是累積的,因此每個新版本都包含先前的 SQL Server 2008 Service Pack 3 (SP3) 或 SQL Server 2008 R2 修正程式版本中包含的所有 Hotfix 和所有安全性修正程式。
症狀
請考慮以下案例:
- 您有一個用戶端應用程式,該用戶端應用程式使用 Java 和 Microsoft JDBC Driver for SQL Server 連線到 SQL Server。
- 您將 Oracle Java 執行階段環境 (JRE) 升級至第 6 版 Update 29 或更新版本。
- 升級 JRE 之後,就無法再連線至 SQL Server。
在此案例中,JDBC 驅動程式可能會在嘗試開啟連線時停止回應。 此外,如果使用下列其中一種方法來加密連線,JDBC 驅動程式會立即失敗,並產生呼叫堆疊:
- Encrypt 屬性在連線 URL 中設定為 True。
- SQL Server 設定為強制加密。
記事
- 如果您使用安全通訊端層 (SSL) /傳輸層安全性 (TLS) 的協力廠商實作,且其中包含與 JRE 第 6 版更新 29 及更新版本相同的行為變更,則可能會遇到此問題。 此行為變更可修正稱為「BEAST」的特定安全性問題。如果您不確定協力廠商產品是否包含包含此變更的 SSL/TLS 實作,請連絡產品的廠商。
- 任何使用 OpenSSL 程式庫的資料存取提供者也可能導致此問題。
原因
發生此問題的原因是當 SSL 資料分割成多個表格式資料Stream (TDS) 封包時,SQL Server 引擎無法處理登入記錄。
解決方式
SQL Server 2008 R2 的 Service Pack 資訊
若要解決此問題,請取得 SQL Server 2008 R2 的最新 Service Pack。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2527041
如何取得 SQL Server 2008 R2 的最新版 Service Pack
累積更新資訊
SQL Server 2008 R2 Service Pack 1
此問題的修正程式最初已發行在 SQL Server 2008 R2 Service Pack 1 的累積更新 6 中。 如需有關如何取得此累積更新套件的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
2679367 SQL Server 2008 R2 Service Pack 1 的累積更新套件 6 注意: 由於這些組建是累積的,因此每個新的修正程式版本都包含所有 Hotfix 和先前 SQL Server 2008 R2 修正程式版本中包含的所有安全性修正程式。 建議您考慮套用包含此 Hotfix 的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2567616 在 SQL Server 2008 R2 Service Pack 1 發行之後所發行的 SQL Server 2008 R2 組建 (機器翻譯)
SQL Server 2008 SP3 累積更新套件 3
此問題的修正程式最初在累積更新 3 中發行。 如需有關如何取得此 SQL Server 2008 Service Pack 3 累積更新套件的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
2648098 SQL Server 2008 Service Pack 3 累積更新套件 3 注意:由於這些組建是累積的,因此每個新發行的修正程式都包含所有 Hotfix 和先前的 SQL Server 2008 Service Pack 3 修正程式版本中包含的所有安全性修正程式。 建議您考慮套用包含此 Hotfix 的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2629969 發行 SQL Server 2008 Service Pack 3 之後所發行的 SQL Server 2008 組建
更多資訊
如需有關這個問題的詳細資訊,請造訪下列網站:
因應措施
若要解決這個問題,請使用下列其中一個方法:
使用比 JRE 版本 6 Update 29 更舊的 Oracle JRE。
停用 JRE 層級的 SSL 記錄分割。
記事- 這個方法可能會對 HTTP 通訊造成安全性影響。
- 如需有關此程序的詳細資訊,您可以連絡。
本文提及的協力廠商產品是由與 Microsoft 無關的獨立廠商所製造。 Microsoft 對該產品的效能或可靠性不負任何暗示或其他形式的擔保責任。
狀態
Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。
此問題最初已在 SQL Server 2008 R2 Service Pack 2 中更正。