Oracle數(shù)據(jù)庫常見問題診斷-SQL*NET篇
2024-08-29 13:37:39
供稿:網友
 
             
  1 、TNS-12154 Error 或ORA-12154
  
  特征:SQL*NET沒有找到連接串或別名
  
  原因1:(1)沒有找到TNSNAMES.ORA文件,該文件的缺省路徑為:
  
  Windows 95/98 client
  
                                                                                              SQL*Net 2.x - ORAWIN95NETWORKADMIN
  
  Net8 - ORAWIN95NET80admin
  
  Net8i - OracleORA81NETWORKADMIN
  
  Windows NT client
  
  SQL*Net 2.x - ORANTNETWORKADMIN
  
  Net8 - ORANTNET80ADMIN
  
  Net8i - ORACLEORA81NETWORKADMIN
  
  UNIX Client
  
  $ORACLE_HOME/NETWORK/ADMIN
  
  or /etc
  
  or /var/opt/oracle
  
  . 在客戶端設置TNS_ADMIN
  
  在注冊表 HKEY_LOCAL_MACHINESoftwareOracle 設置TNS_ADMIN. TNS_ADMIN 指向TNSNAMES.ORA文件的位置
  
  措施:按上述說明檢查文件位置
  
  原因2:(2)TNSNAMES.ORA文件中內容格式不對
  
  措施:檢查文件格式,標準格式如下:
  
  DEV1.WORLD =
  
  (DESCRipTION = (ADDRESS_LIST =
  
  (ADDRESS = (PROTOCOL = TCP) (Host = 145.45.78.56) (Port = 1521) ) )
  
  (CONNECT_DATA = (SID = ORCL) ) )
  
  原因3: (3) TNSNAMES.ORA與SQLNET.ORA不一致
  
  措施: SQLNET.ORA格式如下:
  
  TRACE_LEVEL_CLIENT = OFF
  
  SQLNET.AUTHENTICATION_SERVICES = (NONE)
  
  NAMES.DirectorY_PATH = (TNSNAMES)
  
  AUTOMATIC_IPC = OFF
  
  因為沒有NAMES.DEFAULT_DOMAIN=world,所以DEV1.WORLD連接串不能連接,可以在TNSNAMES.ORA中增加
  
  DEV1 =
  
  (DESCRIPTION = (ADDRESS_LIST =
  
  (ADDRESS = (PROTOCOL = TCP) (Host = 145.45.78.56) (Port = 1521) ) )
  
  (CONNECT_DATA = (SID = ORCL) ) )
  
  此時可連接。
  
  2、NL-00462 Error 或ORA-00462
  
  特征:監(jiān)聽器無法啟動
  
  原因:LISTENER.ORA文件內容錯誤,例如,括號不匹配、參數(shù)名錯誤等、多余的空格等。
  
  措施:重新編輯文件
  
  3、NL-00405 Error 或ORA-00405
  
  特征:LISTENER.ORA文件不可讀或找不到
  
  原因:LISTENER.ORA文件內容錯誤,例如,括號不匹配、參數(shù)名錯誤等、多余的空格等。
  
  措施:確保文件位置在缺省目錄下$ORACLE_HOME/network/admin,或設置環(huán)境變量TNS_ADMIN指向這個文件所在位置。
  
  4、TNS-01155 Error 或ORA-01155
  
  特征:LISTENER.ORA文件中SID_LIST_LISTENER變量賦值不對
  
  原因:LISTENER.ORA文件內容錯誤,SID_LIST_LISTENER變量賦值不對。
  
  措施:確保文件中賦值正確,$ORACLE_HOME/network/admin/samples目錄下有樣例文件,可供參考。
  
  5、TNS-12537 、TNS-12560、TNS-00507 Error
  
  特征:LISTENER.ORA文件中引用了一個無效的協(xié)議適配程序
  
  原因:LISTENER.ORA文件中PROCOTOL變量賦值不對。
  
  措施:確保文件中賦值正確,一般用TCP協(xié)議,$ORACLE_HOME/network/admin/samples目錄下有樣例文件,可供參考。用adapters tnslsnr檢查協(xié)議程序
  
  6、TNS-12203 Error
  
  特征:不能與目標連接
  
  原因:監(jiān)聽器是否啟動;
                         別名是否配置
  
  措施:檢查監(jiān)聽器是否啟動,例如lsnrctl status;檢查TNSNAMES.ORA的別名配置
  
  7、TNS-12533 Error
  
  特征:不能與目標連接
  
  原因:非法的address參數(shù),
  
  措施:檢查TNSNAMES.ORA的ADDRESS參數(shù)