症狀
假設你建立了一個外部資料來源到 Oracle 資料庫 12.2 或更新版本。 當你嘗試在 SQL Server 2019 中建立該資料來源的外部資料表時,可能會遇到以下錯誤:
主信105082,16級,狀態1,線 路號碼
105082;通用 ODBC 錯誤:[Microsoft][ODBC Oracle 線路協定驅動程式][Oracle]ORA-28040:無匹配認證協定 額外錯誤 <2>:ErrorMsg:[Microsoft][ODBC Oracle 線路協定驅動程式][Oracle]ORA-28040:無匹配認證協定,SqlState: HY000, NativeError: 28040。
原因
此問題是因為 SQL Server 2019 未使用最新的 ODBC 驅動程式版本連接 Oracle 資料庫,且目前驅動程式未設定新的安全機制。
狀態
Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。
解決方式
此修正包含在以下 SQL Server 累積更新中:
關於 SQL Server 的累積更新:
每次新的 SQL Server 累積更新都包含了之前累積更新中包含的所有熱修補與安全修補。 請查看 SQL Server 的最新累積更新:
因應措施
為了解決這個問題,你可以編輯 Oracle 伺服器上的 sqlnet.ora 檔案,新增以下內容:
sqlnet.allowed_logon_version_server=8
參考資料
了解 Microsoft 用來說明軟體更新的術語。
第三方資訊免責聲明本文討論的第三方產品是由獨立於 Microsoft 的公司製造。 Microsoft 對該產品的效能或可靠性不負任何暗示或其他形式的擔保責任。