關閉實例的方法:1、使用“shutdown normal;”語句;2、使用“shutdown transactional;”語句;3、使用“shutdown immediate;”語句;4、使用“shutdown abort;”語句。
本教程操作環境:linux5.9.8系統、Oracle 11g版、Dell G3電腦。
Oracle實例指的是由Oracle內存結構(SGA)和Oracle進程組合在一起的統稱。我們常說的Oracle數據庫指的是Oracle數據庫管理系統,它是由Oracle 數據庫(數據存儲)和管理數據庫的實例組成的。
Oracle實例就是Oracle利用后臺內存結構(SGA)和進程來管理oracle數據庫,同時提供服務。
oracle怎么關閉實例
Oracle關閉數據庫實例也分為三個步驟:
-
關閉數據庫
-
卸載數據庫
-
關閉Oracle實例
1、NORMAL方式:正常關閉方式,如果對關閉數據庫的時間沒有限制,通常會使用這種方式來關閉數據庫。
shutdown normal;
講解:正常方式關閉數據時,Oracle執行如下操作:
(1)阻止任何用戶建立新的連接。
(2)等待當前所有正在連接的用戶主動斷開連接(此方式下Oracle不會立即斷掉當前用戶的連接,這些用戶仍然操作相關的操作)
(3)一旦所有的用戶都斷開連接,則立即關閉、卸載數據庫,并終止實例。(所以,一般以正常方式關閉數據庫時,應該通知所有在線的用戶盡快斷開連接)
2、TRANSACTINOAL方式:事務關閉方式,首要任 務是能夠保證當前所有的活動事務都可以被提交,并在盡可能短的時間內關閉數據庫。
shutdown transactional;
講解:這種方式介于正常關閉方式跟立即關閉方式之間,響應時間會比較快,處理也將比較得當。執行過程如下:
(1)阻止任何用戶建立新的連接,同時阻止當前連接的用戶開始任何新的事務。
(2)等待所有未提交的活動事務提交完畢,然后立即斷開用戶的連接。
(3)直接關閉、卸載數據庫,并終止實例。
3、IMMEDIATE方式:立即關閉方式,這種方式能夠在盡可能短的時間內關閉數據庫。
shutdown immediate;
講解:
(1)阻止任何用戶建立新的連接,同時阻止當前連接的用戶開始任何新的事務。
(2)Oracle不等待在線用戶主動斷開連接,強制終止用戶的當前事務,將任何未提交的事務回退。(如果存在太多未提交的事務,此方式將會耗費很長時間終止和回退事務)
(3)直接關閉、卸載數據庫,并終止實例。
4、ABORT方式:終止關閉方式,終止關閉方式具有一定的強制性和破壞性。
shutdown abort;
講解:這是比較粗暴的一種關閉方式,當前面3種方式都無法關閉時,可以嘗試使用終止方式來關閉數據庫。但是以這種方式關閉數據庫將會丟失一部份數據信息,當重新啟動實例并打開數據庫時,后臺進程SMON會執行實例恢復操作。一般情況下,應當盡量避免使用這種方式來關閉數據庫。執行過程如下:
(1)阻止任何用戶建立新的連接,同時阻止當前連接的用戶開始任何新的事務。
(2)立即終止當前正在執行的SQL語句。
(3)任何未提交的事務均不被退名。
(4)直接斷開所有用戶的連接,關閉、卸載數據庫,并終止實例。
推薦教程:《Oracle教程》