萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> oracle教程 >> Oracle 9i數據庫異常關閉後的啟動

Oracle 9i數據庫異常關閉後的啟動

Oracle shutdown的時候突然斷電,導致使用sql/plus啟動時無法連接到數據庫,具體描述為:

connection can not permitted, shut in progress.

到dos 提示符 鍵入:

c:\> sqlplus /nolog

顯示:

sql/plus: Realease9.0.2……..all rights reserved

sql> connect /as sysdba

顯示已連接至空閒例程

sql>startup 顯示shutdown in progress.

到sqlplus 裡面連接:

sys/manager@orcl92 顯示信息連接成功。

Sql: select * from tab;

顯示norows selected;

表明:沒有啟動數據庫。

查閱資料後得出的解決辦法:

到dos 提示符 鍵入:

c:\> sqlplus /nolog

顯示 sql/plus: Realease9.0.2……..all rights reserved

sql> connect /as sysdba

顯示已連接至空閒例程

sql> startup force

顯示:已啟動。數據庫已正常啟動。

也可以先將 windows services中將oraclehome92 service 停止,再啟動oracle enterprise manager console,選擇獨立啟動,選擇數據庫,點擊orcl(全局數據庫名),彈出對話框,輸入用戶名system密碼password,連接身份: sysdba,選擇例程,配置,在一般信息標簽下將例程狀態先改為關閉,在打開。如果提示oraclehome92 service 停止,則將這個服務啟動起來,再啟動數據庫,也可解決問題。 startup force 強制啟動一個沒有關閉或沒能正常啟動的數據庫;過程:先關閉實例,再啟動。 Startup restrict 以限制模式啟動數據庫,從而限制訪問數據庫,只有具有 restricted session 權限的用戶能與數據庫連接。 alter system [enable/disable] restricted session 在數據庫打開後,該語句啟動或關閉訪問限制功能。如果相對主結構做更改或想得到導出一致性,應將數據庫設置為限制模式。 只有具有alter system權限,才可以用alter system [enable/disable] restricted session 命令改變數據庫的可用性。

當一個實例以nomount狀態啟動時,只能訪問sga讀取數據的視圖。關於v$thread,v$controlftle等信息從sga 讀取數據的詞典視圖。當數據庫被裝配時,關於 v$thread,v$controlftle等信息從控制文件中被讀出。分析,當數據庫異常關閉時,shutdown在程序裡沒有退出,因此啟動實例時檢測到shutdown,則系統報錯。因此需要先關閉數據庫,再啟動數據庫。

copyright © 萬盛學電腦網 all rights reserved