Startup

oracle 無法啟動

  • September 28, 2015

我在 oracle linux 6.7 上有 oracle 數據庫 11.2.0.4 。

我已經使用 asm 選項安裝了 oracle 數據庫單實例。

我有 2 個使用者:oracle 和 grid

我的數據庫是開放的,一切都很好!

我想安裝用於將數據庫連接到 sql server 的 oracle 網關。這個產品給我一個錯誤:你不能在 /u01/app/grid/product/11.2.0/ASM 上創建目錄。

要解決此錯誤,請執行以下命令:

chown -R 網格:oinstall /u01

chmod -R 775 /u01

執行這些命令並重新啟動伺服器後,我無法啟動數據庫。

我的磁碟組已安裝,但我無法使用 oracle 使用者啟動數據庫:

sqlplus sys/****** 作為 sysdb

sql > 啟動

ORA-01078: 處理系統參數失敗

ORA-01565: 辨識文件 ‘+DATA/orcl/spfileorcl.ora’ 時出錯

ORA-17503: ksfdopn:2 無法打開文件 +DATA/orcl/spfileorcl.ora

ORA-12547: TNS: 失去聯繫

………………….

使用網格使用者,下面的命令輸出為:

srvctl 啟動數據庫 -d orcl

PRCR-1079:無法啟動資源 orcl.db

ORA-12547: TNS: 失去聯繫

CRS-5017:資源操作“ora.orcl.db start”遇到以下錯誤:

ORA-12547: TNS: 失去聯繫

. 詳情請參考“/u01/app/grid/product/11.2.0/ASM/log/it/agent/ohasd/oraagent_grid/oraagent_grid.log”中的“(:CLSN00107:)”。

CRS-2674:在 ‘it’ 上啟動 ‘ora.orcl.db’ 失敗

ORA-12547: TNS: 失去聯繫

誰能幫我 ?

您的權限不正確。

Oracle 建議角色分離,您似乎已經遵循了創建單獨的 oracle 和網格使用者。但我願意打賭您的 ORACLE_HOME 位於 /u01/app/database 或類似目錄下,這意味著您執行的 chmod 和 chown 命令也更改了數據庫主目錄的權限和所有權。這破壞了 Oracle 預期的角色分離,您的數據庫將無法啟動。

Oracle 網格/數據庫安裝的權限結構遠比簡單的 chmod/chown 可以複製的要復雜得多。一方面,數據庫二進製文件 ($ORACLE_HOME/bin/oracle) 需要一個 setguid 位:

chmod 6751 $ORACLE_HOME/bin/oracle

您還需要對二進製文件擁有正確的所有權,在您的情況下應該是 oracle:

chown oracle:oinstall $ORACLE_HOME/bin/oracle

這兩個命令可能會解決問題,但我不相信一切都會正常執行。您很容易陷入這樣一種情況,即修復一件事只會向您顯示下一件壞事。

GRID_HOME 中的二進製文件需要特定的權限,這與應用於根目錄的通用 775 不同(並且更具限制性)。值得注意的是,如果權限和所有權不正確,偵聽器將無法正確啟動。

不幸的是,雖然可以手動修復它,但這並不簡單。您可以通過以下方式更正網格安裝中的權限:

$GRID_HOME/crs/install/rootcrs.pl

但是,從頭開始可能更容易,特別是如果您想避免將來出現問題並且沒有可執行的安裝進行比較。

最初的網關問題可能是您的環境設置不正確。網關安裝應用於數據庫首頁;您記下的路徑是網格首頁,其中包含“ASM”一詞,表明您嘗試安裝在 ASM(儲存)數據庫而不是實際數據庫中。ASM 是網格安裝的一部分,與您的工作數據庫不同。

引用自:https://dba.stackexchange.com/questions/116234