ORA-01034: 、ORA-01078: 和 LRM-00109: 的解決方案
環境:Linux 5.4 Oracle 11.2.0.3 在Linux上串連Oracle時遇到報錯: SQL> show parameter sgaORA-01034: ORACLE not availableProcess ID: 0Session ID: 0 Serial number: 0 SQL> startupORA-01078: failure in processing system parametersLRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/db_1/dbs/initorcal.ora' 上面的'../initorcal.ora'報錯說明當前Oracle資料庫識別的資料庫執行個體名(即SID)為:orcal;可能是安裝Oracle時的SID的設定和環境變數裡設定的SID不一致造成的。 解決方案: 1.查詢當前的資料執行個體名(SID)[oracle@oradb ~]$ echo $ORACLE_SIDorcal 2.查看環境變數的SID配置[oracle@oradb ~]$ cat .bash_profile# .bash_profile # Get the aliases and functionsif [ -f ~/.bashrc ]; then . ~/.bashrcfi # User specific environment and startup programs PATH=$PATH:$HOME/bin export PATHexport ORACLE_SID=orcl 發現系統識別的執行個體名orcal和環境變數設定的為orcl不一致,這時我們需要修改執行個體名SID 3.修改oracle使用者的ORACLE_SID環境變數,如將orcal修改為orcl[oracle@oradb ~]$ vi /home/oracle/.bash_profileexport ORACLE_SID=orcl 4.修改/etc/oratab檔案,將sid名由orcal修改為orcl[oracle@oradb ~]$ vi /etc/orataborcl:/u01/app/oracle/product/11.2.0/db_1:N 5、進入到$ORACLE_HOME/dbs目錄,如我的 /u01/app/oracle/product/11.2.0/db_1/dbs將所有檔案名稱中包含原來的sid的修改為對應的新sid的[oracle@oradb ~]$ cd /u01/app/oracle/product/11.2.0/db_1/dbs[oracle@oradb dbs]$ lshc_orcal.dat init.ora lkORCAL orapworcal spfileorcal.ora [oracle@oradb dbs]$ mv hc_orcal.dat hc_orcl.dat [oracle@oradb dbs]$ mv lkORCAL lkORCL[oracle@oradb dbs]$ mv orapworcal orapworcl[oracle@oradb dbs]$ mv spfileorcal.ora spfileorcl.ora 6.啟動資料庫[oracle@oradb dbs]$ sqlplus / as sysdba SQL> startupORACLE instance started. 資料庫成功啟動!!