2016-06-08 68 views
0

我的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服務實例並將其添加回來。

回答

1

看起來,當您重新啓動時,oracle服務未啓動。 (這基本上意味着您的Oracle數據庫未啓動。)

轉到您的Windows服務,並找到您的Oracle服務並將服務的啓動類型更改爲自動。這將確保Oracle數據庫在重新啓動後啓動。

同時打開命令提示符...請執行下列操作..

C:\> set oracle_sid=your_sid 
C:\>sqlplus/as sysdba 
SQL>Startup; 

這將啓動您的實例...

+0

我已經改變了我的Oracle實例服務設置爲自動了。 至於命令提示符,這是問題的一部分。當我嘗試以sysdba身份登錄時,收到「權限不足」的消息。我相信Oracle正在嘗試使用我給DB/SYS /系統的憑據。即使使用這些憑據,我仍然可以得到相同的響應。 – IyaTaisho

+0

是否設置了ORACLE_HOME和ORACLE_SID? – cableload

+0

是的,我已經設置了兩個。我確實找到了一種強制數據庫啓動的方法。使用命令oradim -STARTUP -SID BRACMIS,我的數據庫啓動了,現在我可以輸入它了。 – IyaTaisho

相關問題