前言
最近安裝Oracle11g,重啟電腦后,無法登陸數據庫,到sqlplus登陸時就報錯,沒有例程。。。等等(忘記截圖了),去看了下服務,監聽器和實例服務都是開着的,就是無法啟動數據庫,到網上找了一些教程,通過 sqlplus / as sysdba 這種方式登錄數據庫,然后輸入 startup 命令啟動數據庫就報了這兩個錯誤。
個人分析,應該是監聽器配置出現了問題,如果有知道的園友,麻煩告知一二。
解決步驟
1.先以 sqlplus / as sysdba 方式啟動sqlplus
sqlplus / as sysdba
2.創建pfile
create pfile from spfile
3.找到新建立的pfile,新建的pfile根據OS不同保存位置可能不一樣(根據個人的Oracle安裝路徑查找)
windows::\oracle\product\11.2.0\dbhome_1\database\init$sid.ora
UNIX:D:\oracle\product\11.2.0\dbhome_1\database\INIT$sid.ora
($sid:是你的實例名,默認是orcl)
4.修改INIT$sid.ora文件
*.local_listener='(ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))'
(如果沒有 local_listener ,自行添加)
5.到sqlplus這邊以pfile重新啟動
startup pfile='\oracle\product\11.2.0\dbhome_1\database\init$SID.ora';
(這里的$SID是配置的環境變量,是數據庫實例名,要根據個人的情況填寫)
6.根據pfile重新創建spfile
create spfile from pfile;
7.重啟數據庫
1 shutdown immediate (關閉) 2 startup (打開)
參考鏈接