談談Oracle資料庫的關閉,Oracle資料庫關閉

來源:互聯網
上載者:User

談談Oracle資料庫的關閉,Oracle資料庫關閉

之前說過了Oracle資料庫的啟動,今天再來說說Oracle資料庫的關閉。
一、資料庫關閉的三個階段Oracle資料庫啟動過程包括三個步驟: NOMOUNT -> MOUNT -> OPEN,資料庫的SHUTDOWN實際也是有三個步驟: CLOSE -> DISMOUNT - > SHUTDOWN。SQL> SHUTDOWN;  Database closed.
Database dismounted.
ORACLE instance shut down.

也可從STARTUP狀態,按照CLOSE -> DISMOUNT - > SHUTDOWN的順序逐步關閉。1、資料庫關閉命令:SQL> alter database close;

Database altered.

Elapsed: 00:00:02.20警示日誌(Alert Log):Sat Nov 15 11:48:35 2014
alter database close
Warning: ALTER DATABASE CLOSE is not a publicly supported command.
Sat Nov 15 11:48:35 2014
Stopping background process CJQ0
Sat Nov 15 11:48:35 2014
SMON: disabling tx recovery
Stopping background process QMNC
All dispatchers and shared servers shutdown
CLOSE: killing server sessions.
CLOSE: all sessions shutdown successfully.
SMON: disabling cache recovery
Sat Nov 15 11:48:37 2014
Shutting down archive processes
Archiving is disabled
Sat Nov 15 11:48:37 2014
ARCH shutting down
ARC3: Archival stopped
Sat Nov 15 11:48:37 2014
ARCH shutting down
ARC2: Archival stopped
Sat Nov 15 11:48:37 2014
ARCH shutting down
ARC1: Archival stopped
Sat Nov 15 11:48:37 2014
ARCH shutting down
ARC0: Archival stopped
Thread 1 closed at log sequence 4
Successful close of redo thread 1
Completed: alter database close
2、資料庫卸載命令:SQL> alter database dismount;

Database altered.

Elapsed: 00:00:00.05警示日誌:Sat Nov 15 11:49:40 2014
idle dispatcher 'D000' terminated, pid = (17, 1)
Sat Nov 15 11:50:04 2014
alter database dismount
Shutting down archive processes
Archiving is disabled
Completed: alter database dismount3、關閉資料庫執行個體命令:SQL> shutdown;
ORA-01507: database not mounted

ORACLE instance shut down.
SQL> 警示日誌:Sat Nov 15 11:51:22 2014
Shutting down instance (normal)
Shutting down instance: further logons disabled
Stopping background process MMNL
Stopping background process MMON
License high water mark = 4
All dispatchers and shared servers shutdown
ALTER DATABASE CLOSE NORMAL
ORA-1507 signalled during: ALTER DATABASE CLOSE NORMAL...
ARCH: Archival disabled due to shutdown: 1090
Shutting down archive processes
Archiving is disabled
Sat Nov 15 11:51:25 2014
Stopping background process VKTM
ARCH: Archival disabled due to shutdown: 1090
Shutting down archive processes
Archiving is disabled
Sat Nov 15 11:51:27 2014
Instance shutdown complete
二、資料庫關閉的四種選項

1、SHUTDOWN NORMAL
這是資料庫關閉SHUTDOWN命令的預設選項。也就是說如果你發出SHUTDOWN這樣的命令,也即是SHUTDOWN NORNAL的意思。
發出該命令後,任何新的串連都將再不允許串連到資料庫。在資料庫關閉之前,Oracle將等待目前串連的所有使用者都從資料庫中退出後才開始關閉資料庫。採用這種方式關閉資料庫,在下一次啟動時不需要進行任何的執行個體恢複。但是由於Normal方式要等所有使用者中斷連線後才能關閉資料庫,所有等待時間可能超長; 在生產環境中,這種方式幾乎無法關閉有大量使用者串連的資料庫,所以很少被採用。

2、SHUTDOWN IMMEDIATE
這是最為常用的一種關閉資料庫的方式,使用這個命令時,當前正在被Oracle處理的事務立即中斷,未提交的事務將全部復原,系統不等待串連到資料庫的使用者退出,強制斷開所有的串連使用者。然後執行檢查點,將變更資料全部寫回資料檔案,關閉資料庫。使用這種方式關閉資料庫,下次啟動資料庫時不需要進行執行個體恢複,是一種安全的資料庫關閉方式。但是注意,如果資料庫系統繁忙,當前有大量事務執行,那麼使用此選項關閉資料庫也可能需要大量時間。

3、SHUTDOWN TRANSACTIONAL
該選項僅在Oracle 8i後才可以使用。該命令常用來計劃關閉資料庫,它使當前串連到系統且正在活動的事務執行完畢,運行該命令後,任何新的串連和事務都是不允許的。在所有活動的事務完成後,資料庫將和SHUTDOWN IMMEDIATE同樣的方式關閉資料庫。

4、SHUTDOWN ABORT
最不推薦採用的資料庫關閉方式,使用此選項,資料庫會立即終止所有使用者串連、中斷所有事務、關閉資料庫,使用這種方式關閉資料庫,未完成事務不會復原,資料庫也不會執行檢查點,所以下次啟動市,資料庫必須執行執行個體恢複,執行個體恢複可能會需要大量的時間,資料庫啟動也因此可能需要等候很長時間。 ABORT方式關閉資料庫,就類似於資料庫伺服器突然斷電,可能會導致不一致的情況出現,所以除非不得已,輕易不要使用這種方式關閉資料庫。


參考:談談Oracle資料庫的啟動 Remote DBA team- Oracle Database Startup & Shutdown Process




相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.