KB4537072 - 修正:如果使用 Oracle 資料庫 12.2 或更新版本,在 SQL Server 2019 中針對 Oracle 資料庫建立外部資料表可能會失敗

Applies To
SQL Server 2019 on Linux SQL Server 2019 on Windows

症狀

假設您建立 Oracle 資料庫 12.2 或更新版本的外部資料來源。 當您嘗試在 SQL Server 2019 中針對該資料來源建立外部資料表時,可能會收到下列錯誤:

Msg 105082, Level 16, State 1, Line Number, Msg , Level 16, State 1, Line Number

105082;一般 ODBC 錯誤: [Microsoft][ODBC Oracle Wire Protocol driver][Oracle]ORA-28040: 沒有相符的驗證通訊協定 其他錯誤 <2>: ErrorMsg: [Microsoft][ODBC Oracle Wire Protocol driver][Oracle]ORA-28040: 沒有相符的驗證通訊協定, SqlState: HY000, NativeError: 28040。
      

原因

發生此問題的原因是 SQL Server 2019 並未使用最新的 ODBC 驅動程式版本來連線至 Oracle 資料庫,且目前的驅動程式並未設定新的安全性機制。

狀態

Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。

解決方式

此修正程式包含於下列 SQL Server 累積更新中:

關於 SQL Server 的累積更新:

SQL Server 的每個新累積更新都包含所有 Hotfix 和先前累積更新的所有安全性修正程式。 查看 SQL Server 的最新累積更新:

因應措施

若要解決此問題,您可以編輯 Oracle 伺服器上的 sqlnet.ora 檔案,以新增下列內容:

sqlnet.allowed_logon_version_server=8

參考資料

了解 Microsoft 用來說明軟體更新的術語。

      

第三方資訊免責聲明本文討論的第三方產品是由不受 Microsoft 干涉或制約的公司所製造。 Microsoft 對該產品的效能或可靠性不負任何暗示或其他形式的擔保責任。