剛開始時,有一臺服務(wù)器的ORACLE 11G數(shù)據(jù)庫連接不上,報錯:ORA-12541:TNS:無監(jiān)聽程序
重啟服務(wù)里面的兩個Oracle服務(wù),都沒解決。
在網(wǎng)上看到一篇文章說另一種可能是oracle目錄目錄下listener.log日志文件過大(達到4G,據(jù)說這是oracle在windows系統(tǒng)下的bug)導致的。
搜索找到listener.log,果然文件已經(jīng)是4GB。
于是停止服務(wù)里面的Oracle監(jiān)聽服務(wù),重命名listener.log做備份,例如listener.log.bak。
啟動Oracle監(jiān)聽服務(wù),會自動生成一個新的listener.log。
PLSQL連接數(shù)據(jù)庫,這次卻報了另一個錯誤:
ORA-01034:ORACLE not available
ORA-27101:shared memory realm does not exist

解決過程:
數(shù)據(jù)庫所在服務(wù)器,cmd命令行中
1、輸入:
sqlplus /nolog
2、輸入:
conn /as sysdba
3、輸入:
startup
這時報錯:
ora-00119:invalid specification for system parameter LOCAL_LISTENER
ora-00132:syntax error or unresolved network name 'LISTENER_ORCL'

4、找到init.ora.1112015105811(1112015105811每臺機器不一樣),路徑在
D:\app\lc\admin\orcl\pfile\init.ora.1112015105811
先復制一份做備份,用記事本打開init.ora.1112015105811,找到下面行
local_listener=LISTENER_ORCL
把LISTENER_ORCL修改為tnsnames.ora中的ADDRESS_LIST的值,如下(HOST值根據(jù)實際修改)
local_listener="(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.100)(PORT = 1521))"
5、回到命令行窗口中,輸入:
create spfile from pfile = 'D:\app\lc\admin\orcl\pfile\init.ora.1112015105811';
6、輸入:
startup
這次終于沒報錯了,提示:ORACLE例程已經(jīng)啟動。用PLSQL成功連接數(shù)據(jù)庫。
以上就是ORACLE數(shù)據(jù)庫逐步解決ORA-12541、ORA-01034和ORA-27101、ORA-00119和ORA00132的過程的詳細內(nèi)容,更多關(guān)于ORACLE ORA-12541:TNS:無監(jiān)聽程序的資料請關(guān)注腳本之家其它相關(guān)文章!
您可能感興趣的文章:- 連接Oracle數(shù)據(jù)庫時報ORA-12541:TNS:無監(jiān)聽程序的圖文解決教程