我的Oracle數據庫每天都會遇到一個重複出現的問題。我最近連接它,現在當我重新啓動時,它似乎失去了它。通過丟失它,我的意思是當我嘗試以普通用戶身份登錄時,收到ORA-01034錯誤以及ORA-27101錯誤。如果我嘗試使用我的SYS用戶,我得到的錯誤不足(ORA-01031)。重新啓動後無法登錄到Oracle數據庫
我發現,如果我刪除服務並重新創建它,我可以重新登錄。但是,這不可行,因爲它是我的本地環境,我傾向於通常在夜間關閉。我可以保持我的盒子和每週做,但這似乎並不是一個可行的想法。
下面是我的TNSNames和Listener文件。
的tnsnames.ora
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
BRACMIS =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.x.xx)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = BRACMIS)
(INSTANCE_NAME = BRACMIS)
)
的listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\app\chad.johnson\product\11.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:C:\app\chad.johnson\product\11.2.0\dbhome_1\bin\oraclr11.dll")
)
(SID_DESC =
(ORACLE_HOME = C:\app\chad.johnson\product\11.2.0\dbhome_1)
(SID_NAME = BRACMIS)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.x.xx)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = C:\app\chad.johnson\product\11.2.0\dbhome_1\log
)
我也注意到,當我今天早上開始了我爲11g和OracleInstanceBRACMIS服務並重Oracle服務均關閉。不知道這是否與此有關。謝謝。
編輯:我找到了一種方法來強制我的數據庫啓動。在命令提示符下,輸入我的命令:
ORADIM -startup -SID BRACMIS
這讓我開始我的數據庫,這反過來讓我登錄到它的持續多久。這並不能解決重新啓動後不能登錄的問題,但它確實爲我提供了一種至少啓動數據庫的方法,而不是刪除Oracle服務實例並將其添加回來。
我已經改變了我的Oracle實例服務設置爲自動了。 至於命令提示符,這是問題的一部分。當我嘗試以sysdba身份登錄時,收到「權限不足」的消息。我相信Oracle正在嘗試使用我給DB/SYS /系統的憑據。即使使用這些憑據,我仍然可以得到相同的響應。 – IyaTaisho
是否設置了ORACLE_HOME和ORACLE_SID? – cableload
是的,我已經設置了兩個。我確實找到了一種強制數據庫啓動的方法。使用命令oradim -STARTUP -SID BRACMIS,我的數據庫啓動了,現在我可以輸入它了。 – IyaTaisho