Sql-Server

無法為連結伺服器創建 OLE DB 提供程序“OraOLEDB.Oracle”的實例

  • May 14, 2019

我遇到了一些連結伺服器問題。

我創建了一個 SQL Server 連結伺服器,它在過去 2 年中一直執行良好,但突然無法正常工作。

SQL 伺服器

Microsoft SQL Server 2005 - 9.00.5324.00 (X64) 2012 年 8 月 24 日 18:28:47 版權所有 (c) 1988-2005 Microsoft Corporation Enterprise Edition (64-bit) o​​n Windows NT 5.2 (Build 3790: Service Pack 2)

Oracle 客戶端版本

甲骨文 - OraClient11g_home1

錯誤 7302:

無法為連結伺服器創建 OLE DB 提供程序“OraOLEDB.Oracle”的實例。

我們在 SQL Server 中為 Oracle 提供程序啟用了允許處理。

有沒有人對此有任何想法,可以做些什麼來避免這種情況再次發生?

連結伺服器是 Oracle,我嘗試的第一件事是檢查託管 SQL Server 實例的伺服器是否能夠使用tnsping 連接到 Oracle 數據庫伺服器上的偵聽器。

tnsping 最初搜尋到路徑 C:\product\11.1.0\db_1\bin,這將最初使用使用的參數文件 C:\product\11.1.0\db_1\network\admin\sqlnet.ora

tnsping 從 SQL Server 框成功連接到 Oracle 數據庫。然後在創建連結伺服器時檢查提供者詳細資訊。

連結伺服器提供程序是用於 OLE DB 的 Oracle 提供程序。這是與 Oracle 客戶端組件一起安裝的驅動程序。

錯誤 7302可能是 MSDAORA.dll 未正確註冊的結果。在這種情況下,它必須是與 Oracle Provider for OLE DB ieOraOleDB.dll 相關的 dll 的問題。在檢查 dll 相關問題之前,請檢查系統資料庫中是否缺少某些內容。連結伺服器中的提供者列表由系統資料庫中的提供者鍵填充。

錯誤 7303表示使用者名和密碼組合不正確,因此連結伺服器中指定的使用者登錄失敗。輸入正確的 Oracle 數據庫登錄憑據後,連結伺服器已成功創建!

當我將 SQL Server 與 MySQL 連接時,我遇到了同樣的錯誤,問題是由於本地伺服器登錄到遠端伺服器登錄映射中的使用者名或密碼錯誤。

檢查它是否正確!

在此處輸入圖像描述

引用自:https://dba.stackexchange.com/questions/47631