1、shutdown normal
正常方式關閉數據庫。
2、shutdown immediate
立即方式關閉數據庫。
在SVRMGRL中執行shutdown immediate,數據庫並不立即關閉,
而是在Oracle執行某些清除工作后才關閉(終止會話、釋放會話資源),
當使用shutdown不能關閉數據庫時,shutdown immediate可以完成數據庫關閉的操作。
3、shutdown abort
直接關閉數據庫,正在訪問數據庫的會話會被突然終止,
如果數據庫中有大量操作正在執行,這時執行shutdown abort后,重新啟動數據庫需要很長時間
--------------------------------------------------------
shutdown abort 的時候,跟kill 進程是一樣的效果
數據庫立即關閉,這個時候文件狀態可能不一致
因為正常關閉數據庫會同步校驗各文件,使得重新啟動的時候文件時間點一致並且不用進行崩潰恢復
若檢查點信息一致,則做崩潰恢復
若檢查點信息不一致(正好在更新文件頭)則需要做介質恢復
這些問題都好處理,最怕的問題是這個時候系統有大量IO,結果這樣造成寫的突然中斷,碰巧造成文件塊的邏輯壞塊,那麻煩比較大一些,尤其是系統表空間的block損壞
雖然shutdown abort 出錯的幾率很小,1000個人可能只有一個人碰到,但是我們還是要小心。
正確的處理流程是,shutdown immediate ,若數據庫遲遲不能down下來,在os上觀察IO狀況,幾乎沒有io的時候,另開一窗口shutdown abort ,幾乎不會出問題了
--------------------------------------------------------
http://www.itpub.net/showthread.php?threadid=180315&pagenumber=
先用IMMEDIATE來DOWN,實在不行了,看一下數據庫文件上沒IO了,再用ABORT
------------------------------------------------------------------------------
你可以嘗試先在系統級殺掉非后台Oracle進程,在連接shutdown immediate就安全多了
在Oracle8i里,當數據庫失去響應以后,你在操作系統上殺掉用戶進程后,一般數據庫就可以恢復正常了
-------------------------------------------------------------------------------
先 shutdown immediate 應該是首選
然后不行再重新shutdown abort
其實起不來也是因為os的緣故,在文件正在寫的時候出現問題導致文件不一致或者損壞……