Oracle數據庫啟動分為三個步驟:
nomount,找到初始化文件pfile或者spfile,創建SGA并啟動后臺進程但不允許訪問數據庫。
mount,根據初始化文件找到控制文件(Control File),為某些DBA活動裝載數據庫但不允許用戶訪問數據庫。
open,根據控制文件找到數據文件(Data File),重做日志文件(Redo File),使用戶可以訪問數據庫。
關閉數據庫的4個不同命令
shutdown normal(等于shutdown)
正常是關閉的缺省方式正常的數據庫關閉在下列情況下進行
• 不允許新的連接
• 等待會話結束
• 等待事務結束
• 做一個檢查點并關閉數據文件
• 下一次啟動時將不要求實例恢復
shutdown transactional
事務處理關閉防止客戶丟失工作事務處理數據庫關閉在下列情況下進行
• 不允許新的連接
• 不等待會話結束
• 等待事務結束
• 做一個檢查點并關閉數據文件
• 下一次啟動將不要求實例恢復
shutdown immediate
立即關閉數據庫在下列情況下進行
• 不允許新的連接
• 不等待會話結束
• 不等待事務結束
• 未結束的事務自動回滾(rollback)
• 做一個檢查點并關閉數據文件
• 下一次啟動將不要求例程恢復
shutdown abort
如果正常和立即關閉選項不起作用可以中止當前數據庫例程中止例程可以在下列情況下進行
• 不允許新的連接
• 不等待會話結束
• 不等待事務結束
• 不做檢查點且沒有關閉數據文件
• 下一次啟動將要求實例恢復
啟動數據庫相關命令
startup(默認啟動到open狀態)
startup nomount
startup mount
alter database mount;
alter database open;
初始化文件
pfile,文本文件,可以手工編輯該文件
spfile,二進制文件,不能手工修改里面的參數,只能使用數據庫命令進行修改,數據庫啟動默認使用spfile
查看初始化文件路徑
show parameter spfile;
根據spfile創建pfile文件
create pfile from spfile;
create pfile='/u01/app/pfile.ora' fromspfile;
create spfile from pfile='/u01/app/pfile.ora';
查看控制文件的路徑
select name from v$controlfile;
查看控制文件的內容,可以根據ctl.trc重建控制文件
alter database backup controlfile to trace as '/u01/app/ctl.trc';
查看數據文件的位置
select name from v$datafile;
查看重做日志文件的位置
select member from v$logfile;
數據庫的密碼文件
Windows,$ORACLE_HOME/database/PWDorcl.ora
Linux/Unix,$ORACLE_HOME/dbs/orapworcl
密碼文件的作用是允許數據庫的sysdba、sysoper用戶通過口令來遠登陸
查看數據庫是否允許用戶遠程登陸數據庫
show parameter remote_login_passwordfile;
如果remote_login_passwordfile為EXCLUSIVE則表示允許遠程連接數據庫
如果remote_login_passwordfile為NONE則表示不允許遠程連接數據庫
禁止用戶遠程登陸數據庫(需要重啟數據庫生效)
alter system set remote_login_passwordfile=none scope=spfile;
表空間
select * from dba_tablespaces;
數據文件
select * from dba_data_files;
重做日志文件
select * from v$logfile;
重做日志文件的狀態
STALE表示數據已經提交到數據庫中,空白狀態表示正在使用該文件