Oracle監(jiān)聽(tīng)啟動(dòng)時(shí)由“監(jiān)聽(tīng)程序不支持服務(wù)”遇到的一系列問(wèn)題
Oracle監(jiān)聽(tīng)啟動(dòng)時(shí)由“監(jiān)聽(tīng)程序不支持服務(wù)”
昨晚突然斷電導(dǎo)致局域網(wǎng)內(nèi)數(shù)據(jù)庫(kù)服務(wù)器非正常停機(jī),今天用數(shù)據(jù)庫(kù)時(shí)按往常操作啟動(dòng)數(shù)據(jù)庫(kù)就出問(wèn)題了,使用xshell遠(yuǎn)程連接的服務(wù)器,首先啟動(dòng)監(jiān)聽(tīng)lsnrctl start啟動(dòng)日志總感覺(jué)和以前的不一樣:
當(dāng)時(shí)也沒(méi)特別在意,就直接登陸空閑例程裝載數(shù)據(jù)庫(kù)了:
看似也是很正常的,也沒(méi)報(bào)ORA的異常。啟動(dòng)完成之后在本地用PL/SQL連接就出問(wèn)題了,一直提示我“無(wú)監(jiān)聽(tīng)程序”,這就詭異了哈。
一切正常怎么會(huì)沒(méi)有監(jiān)聽(tīng)程序呢,監(jiān)聽(tīng)都啟動(dòng)了的,在服務(wù)器上用sqlplus直接登錄木有任何問(wèn)題,但是遠(yuǎn)程連接就是不行。
這樣問(wèn)題就有思路了,應(yīng)該就是遠(yuǎn)程連接的問(wèn)題,之前都解決過(guò)遠(yuǎn)程連接的問(wèn)題,就是在listerner.ora文件中配置的,把HOST地址改成IP就可以了,但是從監(jiān)聽(tīng)啟動(dòng)日志里看到是IP沒(méi)錯(cuò),難道是服務(wù)器重啟時(shí)IP被分配成其他的了?檢查一遍并沒(méi)有,問(wèn)題越發(fā)詭異了。
剛才啟動(dòng)的時(shí)候就感覺(jué)不太正常,說(shuō)明感覺(jué)是對(duì)的啟動(dòng)的時(shí)候就是有問(wèn)題的,然后就看到了“監(jiān)聽(tīng)程序不支持服務(wù)”這行字,隱約記得以前啟動(dòng)監(jiān)聽(tīng)后應(yīng)該是有一堆信息的,現(xiàn)在就剩一句話代替了,問(wèn)題應(yīng)該就出現(xiàn)在這兒。
先找找alert日志
嘿還真是有一個(gè)WARNING:
現(xiàn)在倒好,看這個(gè)錯(cuò)看得一臉懵逼,去網(wǎng)上扒扒全是什么修改host、pfile什么的,根據(jù)以前的經(jīng)驗(yàn)根本不信這一套,還是按照自己思路來(lái)吧,問(wèn)題應(yīng)該就出現(xiàn)在listerner.ora中,打開(kāi)listerner.ora看看確實(shí)少了些什么,不經(jīng)意間看到listerner.ora的修改記錄,MD被誰(shuí)修改過(guò),我也是醉了也不知道哪個(gè)有毛病的去修改這個(gè)文件。
要知道數(shù)據(jù)庫(kù)的配置文件修改之后不重啟是不生效的,不知道哪個(gè)小白修改了就不管了,偶然間的重啟搞這么多問(wèn)題。
應(yīng)該是少了一段參數(shù)
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (ORACLE_HOME =/opt/oracle/product/11.2.0) (SID_NAME = orcl) ) )
簡(jiǎn)單寫(xiě)上能用就行ORACLE_HOME就不說(shuō)了,在listerner.ora文件目錄下pwd一下截出來(lái)就是了,下邊SID_NAME就是數(shù)據(jù)庫(kù)的實(shí)例名,如果存在多個(gè)系統(tǒng)的話可能會(huì)有多個(gè)實(shí)例名,加多個(gè)就可以了看到上邊的SID_LIST了嗎?
就是為多個(gè)實(shí)例準(zhǔn)備的 復(fù)制
(SID_DESC = (ORACLE_HOME =/opt/oracle/product/11.2.0) (SID_NAME = orcl) )
這一段修改SID_NAME 就可以了。
不過(guò)需要注意一點(diǎn):實(shí)例名區(qū)分大小寫(xiě)!區(qū)分大小寫(xiě)!區(qū)分大小寫(xiě)!
我寫(xiě)成了ORCL之后雖然啟動(dòng)正常了,但是用PL/SQL連的時(shí)候又給我報(bào)了個(gè)錯(cuò)**
ERROR: ORA-01034:ORACLE not available ORA-27101:shared memory realm does not exit
** 無(wú)語(yǔ)啊,這個(gè)錯(cuò)不明顯又跟SGA扯上關(guān)系了又讓我找了好一會(huì)差點(diǎn)把數(shù)據(jù)庫(kù)的內(nèi)存管理模式給改了,僅僅就是個(gè)大小寫(xiě)的問(wèn)題而已。
修改完成后重啟監(jiān)聽(tīng)這次日志就正常了:
我只配了一個(gè)orcl實(shí)例所以就啟動(dòng)一個(gè)實(shí)例打了一條日志,配多個(gè)就會(huì)啟動(dòng)多個(gè)了
再啟動(dòng)數(shù)據(jù)庫(kù)
一切就都正常了,PL/SQL也可以正常連接了。
總結(jié)
步步都是坑啊,說(shuō)多了都是淚(´Д`)y-~
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
ORACLE 常用的SQL語(yǔ)法和數(shù)據(jù)對(duì)象
ORACLE 常用的SQL語(yǔ)法和數(shù)據(jù)對(duì)象...2007-03-03Oracle數(shù)據(jù)庫(kù)中的優(yōu)化方法
這篇文章主要給大家介紹了Oracle數(shù)據(jù)庫(kù)中的優(yōu)化方法,Oracle數(shù)據(jù)庫(kù)是當(dāng)前應(yīng)用最廣泛的大型數(shù)據(jù)庫(kù)之一,其系統(tǒng)結(jié)構(gòu)復(fù)雜,性能受多方面因素影響,其中查詢操作是影響其性能的關(guān)鍵因素,需要的朋友可以參考下2023-07-07oracle修改SGA后無(wú)法啟動(dòng)問(wèn)題分析及解決方法
oracle修改SGA后無(wú)法啟動(dòng),很郁悶的一個(gè)問(wèn)題,本文搜集整理了一下,感興趣的你不妨參考下,或許對(duì)你有所幫助哈2013-02-02Oracle單行函數(shù)(字符,數(shù)值,日期,轉(zhuǎn)換)
這篇文章主要介紹了Oracle單行函數(shù)(字符,數(shù)值,日期,轉(zhuǎn)換),本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-07-07Oracle 閃回 找回?cái)?shù)據(jù)的實(shí)現(xiàn)方法
閃回技術(shù)是Oracle強(qiáng)大數(shù)據(jù)庫(kù)備份恢復(fù)機(jī)制的一部分,在數(shù)據(jù)庫(kù)發(fā)生邏輯錯(cuò)誤的時(shí)候,閃回技術(shù)能提供快速且最小損失的恢復(fù)。這篇文章主要介紹了Oracle 閃回 找回?cái)?shù)據(jù)的實(shí)現(xiàn)方法,需要的朋友可以參考下2018-09-09ORACLE出現(xiàn)錯(cuò)誤1033和錯(cuò)誤ORA-00600的解決方法
這篇文章主要介紹了ORACLE出現(xiàn)錯(cuò)誤1033和錯(cuò)誤ORA-00600的解決方法,需要的朋友可以參考下2014-07-07Oracle查看表結(jié)構(gòu)的幾種方法示例代碼
本文通過(guò)示例代碼給大家介紹了oracle查看表結(jié)構(gòu)的幾種方式,感興趣的朋友參考下吧2017-07-07