連接Oracle報錯:listener does not currently know of service requested in connect descriptor


解決辦法:修改環境變量的配置

原來環境變量TNS_ADMIN如下:即配置的是客戶端instantclient的

 現在該為Oracle服務器的,

D:\app\miracle\product\11.2.0\dbhome_2\NETWORK\ADMIN

 再來模擬一下問題:

條件:

1、環境變量中TNS_ADMIN為客戶端instantclient的,即D:\install\instantclient\instantclient_19_12\NETWORK\ADMIN

2、D:\install\instantclient\instantclient_19_12\NETWORK\ADMIN目錄下的tnsnames.ora文件內容如下:

ORCL1 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )

當我們修改ORCL1為ORCL時,

ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )

此時,用PLSQL訪問Oracle數據庫,

 

 此時會報錯:

 

 解決辦法:將環境變量的TNS_ADMIN的變量值改為Oracle服務的,即D:\app\miracle\product\11.2.0\dbhome_2\NETWORK\ADMIN,

 

 再重啟如下四個Oracle服務:

 

 再次用PLSQL訪問Oracle數據庫,此時就可以登錄了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM