1. 程式人生 > >ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist的解決辦法

ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist的解決辦法

我的電腦上安裝的是oracle 12C的版本。

出問題的原因:電腦搬回宿舍以後連過校園網,再搬回實驗室上課連上實驗室的網路就提示我連線不上了。

首先在sql developer中連線時提示我監聽服務有問題。重建,修改監聽服務及監聽檔案以後(注意,到這裡為止監聽服務那邊的問題處理完畢),就開始報錯:

ORA-01034: ORACLE not available

ORA-27101: shared memory realm does not exist

這裡我搜了很多解決辦法,大多數都是說,在sqlplus下使用conn /as sysdba連線之後再啟動資料庫就好了。但是!我的就是連不上!一度十分絕望!

搜尋詞換了大概百十來遍,終於找到下面這篇,但裡面寫的其實沒有完全解決我的問題,不過也是從這裡受到了啟發(感謝大佬!):

首先我當初建庫的時候使用的是DBCA建庫,自動生成的pfile檔案,它的檔名很奇怪,是init.ora.(後面一大串數字)。受上面的部落格啟發,我把檔案字尾那一長串數字去掉把spfile移走到桌面

然後再嘗試連線conn /as sysdba,提示成功連線到空閒歷程。接下來我使用

startup pfile="D:\app\ABC\product\12.1.0\dbhome_1\database\init.ora"

命令開啟資料庫時仍然報錯,提示說找不到監聽服務“LINTENER_FORUM0”,雖然我的資料庫例項名的確是forum0,但是我的監聽服務名並不是這個名字

,然後我在老師(自己的任課老師)的提示下查看了init.ora,發現裡面有指定了監聽服務名的語句,於是直接刪掉,再儲存。重新使用pfile檔案開啟資料庫,成功了!

問題到此為止完美解決,激動的我沒有開始寫實驗,而是寫了篇部落格!我覺得需要分享出來!

也不想寫總結了,只想感謝上面那篇博文的大佬,以及我的老師!非常感謝!