Windows 10 上的 Oracle12c R2 僅啟動兩個實例之一。LRM-00109 中的手動啟動結果
我在本地 Windows 10(64 位)機器上安裝了 Oracle 12c R2。對於安裝,我選擇只安裝軟體。
安裝後,我使用安裝附帶的工具來創建數據庫。創建並啟動第一個數據庫後,我能夠毫無問題地連接到它。
但是在我創建了第二個數據庫並重新啟動機器之後,只啟動了新創建的數據庫。
第一個數據庫未在啟動時啟動,我無法使用 sqlplus 啟動它。我得到錯誤
SQL> startup ORA-01078: failure in processing system parameters LRM-00109: Parameterdatei 'D:\ORACLE\PRODUCT\12.2.0\DBHOME_1\DATABASE\INITDBNAME.ORA' konnte nicht ge┐ffnet werden
上述文件實際上並不存在。但是其他數據庫也不存在這樣的文件。該目錄包含
SPFILE<DBNAME>.ORA
兩個數據庫的內容。據我所知,oracleSPFILE<DBNAME>.ORA
在啟動數據庫時使用這種模式。如果找不到所述文件,則繼續使用INIT<DBNAME>.ORA
.我創建了一個 INITDBNAME.ORA 文件並添加了內容:
SPFILE = 'D:\SPFILEDBNAME.ORA'
並嘗試使用啟動數據庫,
startup pfile = 'D:\INITDBNAME.ORA'
但結果是ORA-00205: Fehler beim Identifizieren der Kontrolldatei
錯誤。同樣令人困惑的是,如果 pfile 在 Oracle 目錄中,則命令失敗,說它無法訪問該文件。
編輯 在我刪除了兩個實例後,重新啟動並再次創建了兩個實例,我目前可以同時訪問它們。
當我嘗試登錄到第一個實例時,出現以下錯誤:
ERROR: ORA-01116: Fehler beim Íffnen der Datenbankdatei 5 ORA-01110: Datendatei 5: 'D:\ORACLE\ORADATA\INSTANCE\DATAFILE\O1_MF_UNDOTBS1_DPKMRD6L_.DBF' ORA-27041: Datei kann nicht ge÷ffnet werden OSD-04002: Datei kann nicht ge÷ffnet werden O/S-Error: (OS 5) Zugriff verweigert
編輯 Mirosoft 服務管理器將兩個 inscantec 報告為 runngin。
設置 ORACLE_SID 沒有任何區別。安裝兩個實例後,我可以通過
sqlplus sys@instance1 as sysdba or sqlplus sys@instance2 as sysdba
但這只會在短時間內順利進行。幾分鐘後,當我連接到第一個實例時,它開始拋出 ORA-01110。
數據文件沒有失去。它們位於 Oracle 報告它們失去的位置。
我發現問題是 Windows 服務管理器啟動的數據庫是由似乎沒有足夠權限的使用者啟動的。
這很令人困惑,因為我在安裝時選擇了預設設置以使用 Oracles 虛擬使用者。此虛擬使用者似乎對數據庫的某些文件沒有寫權限。
我已將啟動服務的使用者從 Oracle 虛擬使用者更改為 Windows“本地系統”選項。因為這兩個數據庫執行似乎都很好。
我遇到了同樣的問題。數據庫未隨服務啟動。首先,我使用適用於 Windows 的 Oracle 管理助手檢查了服務的設置,並將數據庫配置為隨服務啟動而啟動(順便說一下,我更喜歡在服務關閉時立即關閉數據庫)。
但是讓數據庫在服務啟動時打開並沒有解決問題。接下來我發現該文件夾
%ORACLE_HOME%\database
是只讀的,我沒有成功使用Windows資源管理器中的屬性對話框清除該屬性。該attrib
程序沒有顯示 R 標誌,但是…也無法從 sqlplus 以 SYSDBA 的形式啟動數據庫 - 我遇到了相同的 LRM-00109 錯誤。所以我將它複製
SPFILE
到一個INIT<INSTANCE>.ora
文件並進行了編輯。啟動也是不可能的,除非我使用startup open pfile='(ORACLE_HOME)\database\init(Instance).ora'
我終於將服務從作為虛擬帳戶執行更改為作為本地系統執行 - 這有效……
我使用的 Oracle 版本是 12.2.0.1 - 我想它有一些問題。