Oracle數(shù)據(jù)庫(kù)TNS常見(jiàn)錯(cuò)誤解決方法1,、ORA-12541:TNS:沒(méi)有監(jiān)聽(tīng)器
原因:沒(méi)有啟動(dòng)監(jiān)聽(tīng)器或者監(jiān)聽(tīng)器損壞。若是前者,,使用命令net start OracleOraHome10gTNSListener(名字可能有出入)即可;如果是后者,,則使用“Net Configuration Assistant”工具向?qū)е?#8220;監(jiān)聽(tīng)程序配置”增加一個(gè)監(jiān)聽(tīng)器即可(基本不用寫(xiě)任何信息,一路OK,。在添加之前可能需要把所有的監(jiān)聽(tīng)器先刪!) 2,、ORA-12500:TNS:監(jiān)聽(tīng)程序無(wú)法啟動(dòng)專(zhuān)用服務(wù)器進(jìn)程或ORA-12560:TNS:協(xié)議適配器錯(cuò)誤 原因:ORACLE的數(shù)據(jù)庫(kù)服務(wù)沒(méi)有啟動(dòng),。使用命令net start ORACLESERVICEORADB(ORADB為數(shù)據(jù)庫(kù)名字)即可。如果仍沒(méi)有解決,,請(qǐng)繼續(xù)向下看,。 3、如果數(shù)據(jù)庫(kù)服務(wù)啟動(dòng)失敗,,則很有可能是其注冊(cè)表項(xiàng)值損壞,,最好的做法是以下兩步: 1)ORADIM -DELETE -SID oradb 刪除數(shù)據(jù)庫(kù)服務(wù)項(xiàng) 2)ORADIM -NEW -SID oradb 新增數(shù)據(jù)庫(kù)服務(wù)項(xiàng) 注:這個(gè)過(guò)程中如果出錯(cuò),就重啟計(jì)算機(jī)! 4,、ORA-12154:TNS:能解析服務(wù)名 原因:ORACLE的網(wǎng)絡(luò)服務(wù)名沒(méi)有正確配置,。請(qǐng)使用“Net8 Configuration Assistant”工具向?qū)е?#8220;本地網(wǎng)絡(luò)服務(wù)名配置”配置TNS即可。如果仍沒(méi)有解決,,請(qǐng)繼續(xù)向下看,。 5、ORA-1034 :TNS:ORACLE不可用 原因:ORACLE的數(shù)據(jù)庫(kù)服務(wù)正確啟動(dòng),,但是數(shù)據(jù)庫(kù)沒(méi)有打開(kāi)! 使用命令: 1)svrmgrl 啟動(dòng)服務(wù)管理器 2)connect internal 以internal身份登陸 3)startup 打開(kāi)數(shù)據(jù)庫(kù) 6,、ORA-12560:TNS:協(xié)議適配器錯(cuò)誤(頑固性的) 原因:未知。 解決:必殺技--打開(kāi)“Windows任務(wù)管理器”,,殺死ORACLE.exe及ORADIM.exe進(jìn)程,,書(shū)寫(xiě)自己的ora_startup.bat,執(zhí)行之! PS: 1,、ora_startup.bat: net start OracleOraHome81TNSListener net start ORACLESERVICEORADB svrmgrl 一般情況下不用,,不過(guò)有時(shí)少不了它的,具體步驟見(jiàn)第5步,。 2,、ora_shutdown.bat: net stop OracleOraHome81TNSListener net stop ORACLESERVICEORADB 3、ORACLE相關(guān)服務(wù)名請(qǐng)參見(jiàn)“管理工具”之“服務(wù)”中以O(shè)RACLE開(kāi)頭的服務(wù)名 1,、TNS-12154 Error 或ORA-12154 特征:SQL*NET沒(méi)有找到連接串或別名 原因1:(1)沒(méi)有找到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 . 在客戶(hù)端設(shè)置TNS_ADMIN 在注冊(cè)表 HKEY_LOCAL_MACHINESoftwareOracle 設(shè)置TNS_ADMIN. TNS_ADMIN 指向TNSNAMES.ORA文件的位置 措施:按上述說(shuō)明檢查文件位置 原因2:(2)TNSNAMES.ORA文件中內(nèi)容格式不對(duì) 措施:檢查文件格式,標(biāo)準(zhǔn)格式如下: 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 因?yàn)闆](méi)有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) ) ) 此時(shí)可連接。 2,、NL-00462 Error 或ORA-00462 特征:監(jiān)聽(tīng)器無(wú)法啟動(dòng) 原因:LISTENER.ORA文件內(nèi)容錯(cuò)誤,,例如,括號(hào)不匹配,、參數(shù)名錯(cuò)誤等,、多余的空格等,。 措施:重新編輯文件 3,、NL-00405 Error 或ORA-00405 特征:LISTENER.ORA文件不可讀或找不到 原因:LISTENER.ORA文件內(nèi)容錯(cuò)誤,,例如,括號(hào)不匹配,、參數(shù)名錯(cuò)誤等,、多余的空格等。 措施:確保文件位置在缺省目錄下$ORACLE_HOME/network/admin,,或設(shè)置環(huán)境變量TNS_ADMIN指向這個(gè)文件所在位置,。 4、TNS-01155 Error 或ORA-01155 特征:LISTENER.ORA文件中SID_LIST_LISTENER變量賦值不對(duì) 原因:LISTENER.ORA文件內(nèi)容錯(cuò)誤,,SID_LIST_LISTENER變量賦值不對(duì),。 措施:確保文件中賦值正確,$ORACLE_HOME/network/admin/samples目錄下有樣例文件,,可供參考,。 5、TNS-12537 ,、TNS-12560,、TNS-00507 Error 特征:LISTENER.ORA文件中引用了一個(gè)無(wú)效的協(xié)議適配程序 原因:LISTENER.ORA文件中PROCOTOL變量賦值不對(duì)。 措施:確保文件中賦值正確,,一般用tcp協(xié)議,,$ORACLE_HOME/network/admin/samples目錄下有樣例文件,可供參考,。用adapters tnslsnr檢查協(xié)議程序 6,、TNS-12203 Error 特征:不能與目標(biāo)連接 原因:監(jiān)聽(tīng)器是否啟動(dòng);別名是否配置 措施:檢查監(jiān)聽(tīng)器是否啟動(dòng),例如lsnrctl status;檢查T(mén)NSNAMES.ORA的別名配置 7,、TNS-12533 Error 特征:不能與目標(biāo)連接 原因:非法的address參數(shù),, 措施:檢查T(mén)NSNAMES.ORA的ADDRESS參數(shù) 1)用tnsping net_service_name測(cè)試網(wǎng)絡(luò)服務(wù)名是否配置正確! 2)用sqlplus程序通過(guò)test網(wǎng)絡(luò)服務(wù)名進(jìn)行測(cè)試,如sqlplus system/manager@test,。如果不能連接到數(shù)據(jù)庫(kù),,則在tnsname.ora文件中的test網(wǎng)絡(luò)服務(wù)名(net service)后面加上sqlnet.ora文件NAMES.DEFAULT_DOMAIN參數(shù)的值, xieyunchao 2009年03月07日 11點(diǎn)34分46秒 說(shuō): 我怎么看有沒(méi)有問(wèn)題啊,。 vc555 2009年03月07日 11點(diǎn)39分15秒 說(shuō): 你的host內(nèi)容是什么呢,? xieyunchao 2009年03月07日 11點(diǎn)39分34秒 說(shuō): 127.0.0.1 localhost xieyunchao 2009年03月07日 11點(diǎn)39分45秒 說(shuō): 就這一行,其他的都是注釋,。 xieyunchao 2009年03月07日 11點(diǎn)40分11秒 說(shuō): 是hosts文件,,不是host文件吧。路徑是/system32/driver/ect/ xieyunchao 2009年03月07日 11點(diǎn)40分17秒 說(shuō): 對(duì)吧,。 vc555 2009年03月07日 11點(diǎn)40分43秒 說(shuō): 恩,。 你用sqlplus看看用localhost能連嗎? xieyunchao 2009年03月07日 11點(diǎn)42分17秒 說(shuō): 也不行,,不能用localhost,,只能用192.xx. vc555 2009年03月07日 11點(diǎn)42分14秒 說(shuō): 還有,,用127.0.0.1能連嗎? xieyunchao 2009年03月07日 11點(diǎn)42分30秒 說(shuō): 不能連 vc555 2009年03月07日 11點(diǎn)42分50秒 說(shuō): 127.0.0.1也不行,? xieyunchao 2009年03月07日 11點(diǎn)43分17秒 說(shuō): 不行,。剛試過(guò)。 xieyunchao 2009年03月07日 11點(diǎn)43分39秒 說(shuō): 我這個(gè)問(wèn)題我郁悶老長(zhǎng)時(shí)間了,。就是不知道為什么,! vc555 2009年03月07日 11點(diǎn)44分13秒 說(shuō): tnsping 127.0.0.1 xieyunchao 2009年03月07日 11點(diǎn)45分02秒 說(shuō): C:\Documents and Settings\Administrator>tnsping 127.0.0.1 TNS Ping Utility for 32-bit Windows: Version 9.2.0.1.0 - Production on 07-3月 -2 009 11:44:31 Copyright (c) 1997 Oracle Corporation. All rights reserved. 已使用的參數(shù)文件: D:\oracle9cli\network\admin\sqlnet.ora 已使用 HOSTNAME 適配器來(lái)解析別名 Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SID=*)(SERVICE_NAME=127.0.0.1) )(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))) TNS-12541: TNS:無(wú)監(jiān)聽(tīng)器 C:\Documents and Settings\Administrator> vc555 2009年03月07日 11點(diǎn)45分40秒 說(shuō): 看了下,是你監(jiān)聽(tīng)文件的問(wèn)題,。 vc555 2009年03月07日 11點(diǎn)45分52秒 說(shuō): LISTENER = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.95)(PORT = 1521)) ) vc555 2009年03月07日 11點(diǎn)46分07秒 說(shuō): 別用IP,,改成機(jī)器名。 vc555 2009年03月07日 11點(diǎn)46分33秒 說(shuō): 改了后,,重啟監(jiān)聽(tīng),。 xieyunchao 2009年03月07日 11點(diǎn)46分57秒 說(shuō): 哦。知道了,。謝謝,。為什么要用機(jī)器名啊。ip有什么弊端啊,。 vc555 2009年03月07日 11點(diǎn)49分10秒 說(shuō): 一個(gè)弊端就是你所遇到的問(wèn)題,。 還有個(gè)弊端就是如果監(jiān)聽(tīng)用IP,假設(shè)你機(jī)器改了IP,,那么不得不去改監(jiān)聽(tīng)配置,,而用機(jī)器名就無(wú)此問(wèn)題 xieyunchao 2009年03月07日 11點(diǎn)49分45秒 說(shuō): 哦?;砣婚_(kāi)朗,,謝謝你啊。我都習(xí)慣用ip了,,比較好記,。謝謝。 通過(guò)ip得到機(jī)器名: tracert ip |
|
來(lái)自: 西門(mén)獨(dú)孤 > 《我的圖書(shū)館》