Oracle問題之ORA-12560TNS:協議適配器錯誤


Oracle問題之ORA-12560TNS:協議適配器錯誤

一、造成ORA-12560: TNS: 協議適配器錯誤的問題的原因有三個

1.監聽服務沒有起起來。windows平台個一如下操作:開始---程序---管理工具---服務,打開服務面板,

  啟動OracleOraDb11g_home1TNSlistener服務。
  
  

2.database instance沒有起起來。windows平台如下操作:開始---程序---管理工具---服務,打開服務

  面板,啟動OracleServiceBOOKSALES, BOOKSALES就是你的database SID    
  

 3.注冊表問題。regedit,然后進入HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME

  將該環境變量ORACLE_SI
D設置為XXXX, XXXX就是你的database SID.
  
  

  

  

  

  或者右擊我的電腦,屬性--高級--環境變量---系統變量--新建
,變量名=oracle_sid,變量值=XXXX, XXXX就是你的database SID.

  或者進入sqlplus前,在command line下
輸 set oracle_sid=XXXX, XXXX就是你的database SID.

  經過以上步驟,一般就可以解決問題。

二、如果還沒有解決的話則會遇到以下問題:

1、執行請求的操作時遇到錯誤:

 
        

IO 錯誤: The Network Adapter could not establish the connection

 
        

供應商代碼 17002

 
        

2、執行請求的操作時遇到錯誤:

 
        

Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor

 
        

供應商代碼 12514


三、解決方法如下:

  假如只有一個數據庫的話:

  1、找到如下路徑:

    D:\install\oracle\oracle-install\product\11.2.0\dbhome_1\NETWORK\ADMIN

    



  2、將文件中的內容修改如下,當然要結合自己的實際情況做簡單修改:
     //listener.ora
 1 # listener.ora Network Configuration File: D:\install\oracle\oracle-install\product\11.2.0\dbhome_1\network\admin\listener.ora
 2 # Generated by Oracle configuration tools.
 3 
 4 SID_LIST_LISTENER =
 5   (SID_LIST =
 6     (SID_DESC =
 7       (SID_NAME = CLRExtProc)
 8       (ORACLE_HOME = D:\install\oracle\oracle-install\product\11.2.0\dbhome_1)
 9       (PROGRAM = extproc)
10       (ENVS = "EXTPROC_DLLS=ONLY:D:\install\oracle\oracle-install\product\11.2.0\dbhome_1\bin\oraclr11.dll")
11     )
12     (SID_DESC =
13       (SID_NAME = BOOKSALES)
14       (ORACLE_HOME = D:\install\oracle\oracle-install\product\11.2.0\dbhome_1)
15    (GLOBAL_DBNAME = BOOKSALES)
16  )
17   )
18 
19 LISTENER =
20   (DESCRIPTION_LIST =
21     (DESCRIPTION =
22       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
23     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))
24     (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
25     (ADDRESS = (PROTOCOL = TCP)(HOST = acer)(PORT = 1521))
26     )
27   )
28 
29 ADR_BASE_LISTENER = D:\install\oracle\oracle-install
View Code

     //sqlnet.ora    

 1 # sqlnet.ora Network Configuration File: D:\install\oracle\oracle-install\product\11.2.0\dbhome_1\network\admin\sqlnet.ora
 2 # Generated by Oracle configuration tools.
 3 
 4 # This file is actually generated by netca. But if customers choose to 
 5 # install "Software Only", this file wont exist and without the native 
 6 # authentication, they will not be able to connect to the database on NT.
 7 
 8 SQLNET.AUTHENTICATION_SERVICES= (NTS)
 9 
10 NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
View Code

     //tnsnames.ora

 1 # tnsnames.ora Network Configuration File: D:\install\oracle\oracle-install\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
 2 # Generated by Oracle configuration tools.
 3 
 4 BOOKSALES =
 5   (DESCRIPTION =
 6     (ADDRESS_LIST =
 7       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))
 8     )
 9     (CONNECT_DATA =
10       (SERVICE_NAME = BOOKSALES)
11     )
12   )
View Code
 
        

   3、重新啟動 tnslistener

   4、測試的時候要注意修改對應數據庫的用戶名和密碼

    Oracle SQL Developer連接的時候也要注意用對應的用戶名和密碼

    

    

    

 

 

 

 

 

 

 

 

執行請求的操作時遇到錯誤:

IO 錯誤: The Network Adapter could not establish the connection

供應商代碼 17002

 

 

執行請求的操作時遇到錯誤:

Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor

供應商代碼 12514

 

也是按照上面修改配置文件

 
       


免責聲明!

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



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