--oracle啓動3個過程
nomount--->mount--->open
startup nomount只是啓動了實例而沒有啓動數據庫,startup mount啓動了實例,並加載了數據庫,可是數據庫沒有打開,startup是最全的,實例,數據庫加載,數據庫打開都完成
啓動的步驟:
startup nomount
alter database mount
alter database open
關閉:
shutdowm immediate|abort | transactional | normal (shutdown不帶參數將缺省爲normal)
(1)數據庫處於「NOMOUNT」狀態。啓動實例 讀取參數文件$ORACLE_HOME/dbs/下的參數文件spfile,分配SGA內存並啓動後臺進程。數據庫尚未掛栽不可以使用。動態性視圖收集的信息來源只有是SGA,而不會從控制文件中收集相關的信息。因此,動態性能視圖的數量要少得多。
SYS@orcl >show parameter spfile;
(2)當數據庫處於MOUNT狀態時,數據庫會讀參數文件中描述的控制文件
/u01/app/oracle/flash_recovery_area/orcl/,校驗控制文件的正確性,控制文件中有數據文件和日誌文件的信息。因此,當例程處於Mount狀態時,動態性能視圖其收集到的信息就要第一個狀態多的多。由於此時,動態性能視圖還會去收集控制文件的相關信息。不過,此時動態性能視圖所收集到的資料還不是最全的。
在 alter database mount 的過程當中,oracle會 檢查controlfile文件中 block size of controlfile ,並與初始化參數中,DB_BLOCK_SIZE 的值進行比較,如果這二者不一致,則會報錯:
ORA-00218: block size 4096 of controlfile does not match DB_BLOCK_SIZE (8192)
(3)當用戶打開數據庫時,讀控制文件中描述的數據文件/u01/app/oracle/oradata/orcl/,驗證數據文件的一致性,若是不一致,使用日誌文件將數據庫文件恢復到一致的狀態。此時,數據庫管理員除了能夠從 SGA和控制文件中獲取信息的動態性能視圖外,還可能訪問與Oracle數據庫性能相關的動態性能視圖,如會話等待時間等視圖。另外須要注意一點,就是隻有在這個狀態時,咱們纔可以訪問數據庫的數據字典視圖。
另外:
STARTUP FORCE選項:
若是在用正常方式啓動數據庫時遇到了困難,能夠使用STARTUP FORCE選項。STARTUP FORCE選項首先異常關閉數據庫,而後從新啓動它。
STARTUP RESTRICT選項:
STARTUP RESTRICT選項啓動數據庫並把它置入OPEN模式,但只給擁有RESTRICTED SESSION權限的用戶賦予訪問權。
查詢控制文件
SYS@orcl >select * from v$controlfile;
STATUS NAME IS_ BLOCK_SIZE
------- -------------------------------------------------- --- ----------
FILE_SIZE_BLKS
--------------
/u01/app/oracle/oradata/orcl/control01.ctl NO 16384
594
/u01/app/oracle/flash_recovery_area/orcl/control02 NO 16384
.ctl
594
//獲取控制文件內容
備份controlfile 到trace
SYS@orcl >alter database backup controlfile to trace;
查詢trace文件位置
SYS@orcl >select * from v$diag_info where name='Default Trace File';
INST_ID NAME
---------- --------------------------------------------------
VALUE
--------------------------------------------------------------------------------
1 Default Trace File
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_30452.trc
數據庫