脫機物理備份:數據庫在關閉的情況下,對數據庫文件進行備份。
這些文件必須包括:
所有數據文件(v$datafile)
所有控制文件(v$controlfile)
日誌文件redo Log(v$logfile)
備份步驟:
列出備份文件的清單(數據文件 控制文件 日誌文件 參數文件)
正常關閉(shutdown)數據庫
備份清單中的文件
重啓數據庫
回覆步驟:
關閉數據庫
導入最新脫機備份的紋理文件
啓動數據庫
優缺點:操作簡單,單必須關閉數據庫,且只能回覆到備份點。
----------------------------------------------------------------
聯機備份,又叫熱備份
前提條件:必須爲歸檔日誌模式下 archivelog mode。
archive log list命令或sql語句select name,log_mode from v$database;可以查看當前的模式。
歸檔模式切換:
改變非歸檔模式到歸檔模式:
1)SQL>SHUTDOWN NORMAL/IMMEDIATE;
2)SQL>START MOUNT;
3)SQL>ALTER DATABASE ARCHIVELOG;
4)SQL>ALTER DATABASE OPEN;
【5)SQL>做一次完全備份,因爲非歸檔日誌模式下產生的備份日誌對於歸檔模式已經不可用了.這一步非非常重要!】
【改變歸檔模式到非歸檔模式:
1)SQL>SHUTDOWN NORMAL/IMMEDIATE;
2)SQL>START MOUNT;
3)SQL>ALTER DATABASE NOARCHIVELOG;
4)SQL>ALTER DATABASE OPEN;
自動歸檔;
啓用自動歸檔: LOG_ARCHIVE_START=TRUE
歸檔模式下,日誌文件組不允許被覆蓋(重寫),當日志文件寫滿之後,如果沒有進行手動歸檔,那麼系統將掛起,知道歸檔完成爲止.
這時只能讀而不能寫.
手動歸檔
手動歸檔: LOG_ARCHIVE_START=FALSE
歸檔當前日誌文件
SQL>ALTER SYSTEM ARCHIVE LOG CURRENT;
歸檔序號爲052的日誌文件
SQL>ALTER SYSTEM ARCHIVE LOG SEQUENCE 052;
歸檔所有日誌文件
SQL>ALTER SYSTEM ARCHIVE LOG ALL;
改變歸檔日誌目標
SQL>ALTER SYSTEM ARCHIVE LOG CURRENT TO '&PATH';】
在線備份,以備份用戶表空間爲例:
conn system/system as sysdba;
alter tablespace user_data beigin backup;//設置開始備份標記
host copy d:\orcl\database\usrlorcl.ora e"\backup;
alter tablespace user_data end backup;
---------------------------
邏輯備份:通過讀取數據記錄集,寫入二進制文件實現的。
備份方法:
export
OEM
導出備份的模式:
用戶模式;導出用戶所有對象以及對象中的數據;
表模式:導出用戶所有表或指定的表;
整個數據庫:all對象。
備份的類型:
完全型:完全備份
積累型:備份上一次積累備份所改變的數據;
增量型:備份上一次備份後改變的數據;
例子:
exp scott/scott file=scott.dmp tables(emp,dept) 導出scott用戶的emp和dept表
exp system/system@mydb file=system owner=scott 導出scott用戶的所有對象//owner時指定的用戶
exp system/system@mydb file=fulldb.dmp full=y 全數據導出
exp -help可以查看幫助。
導入是導出的逆向過程。
imp scott/scott@mydb file=scott.dmp tables(emp,dept)
imp system/system@mydb file=scott.dmp fromuser=scott touser=scott;
imp system/system@mydb file=fulldb.dmp full=y;
------------------------------------------------
RMAN(Recover Manager)