oracle數據庫備份


1. 文件查看

數據文件、控制文件、日志文件查看如下:

select file#, status, enabled, name from V$datafile;--查看數據文件
select * from v$controlfile;--控制文件
select * from v$logfile;--日志文件

 

2. 三種備份方法

  1)導入/導出(import/export)

    1.支持類型: table, user, tablespace, full database

    2. 導入導出例子:

exp system/manager@TEST file=d:\export.dmp full=y--將數據庫TEST完全導出(全庫備份),用戶名system 密碼manager 導出到D:\daochu.dmp中

exp system/manager@TEST file=d:\export.dmp owner=(system,sys)--將system和sys的表導出

exp aichannel/aichannel@TEST file= d:export.dmp tables= (tab1,tab2)--將tab1表和tab2表導出

 

imp system/manager@TEST file=d:\export.dmp tables=(tab1,tab2);--將export.dmp中tab1表和tab2表導入

imp system/manager@TEST file=d:\export.dmp;

  3. 注意:若用戶權限不夠時需要修改權限

--先以system/manager登錄

--授予權限

grant exp_full_database, imp_full_database to username;

 

 

  2)冷備份(非歸檔模式)

    1. 步驟:shutdown數據庫---> copy文件---> start數據庫

    2.  例子:

connect tigger/sccot as sysdba;

shutdown immediate;

cp d:/test*.dbf d:export   --cp 文件  目標文件夾    數據文件

cp d:/test*.ctl d:export   --控制文件

cp d:/test*.log d:export   --日志文件

startup; 

 

 

 

  3)熱備份(歸檔模式)

    1. 說明:前提條件是數據庫運行在歸檔模式(oracle數據庫安裝默認運行在非歸檔模式)

    2. 將數據庫轉換為歸檔模式如下:(注意數據庫必須已裝載到此實例並且不在任何實例中打開)

--需先關閉數據庫並加載數據庫
shutdown immediate; startup mount;--(startup nomount 啟動實例;startup mount 啟動實例加載數據庫; startup 啟動實例加載數據庫打開數據庫) alter database archivelog;--數據庫必須已裝載到此實例並且不在任何實例中打開

    3. 歸檔相關操作

archive log list;--查看是否出於歸檔模式;

alter system set log_archive_start =true scope =spfile; --啟用主動歸檔

select name from v$archived_log; --查詢歸檔日志

alter system set log_achive_start=false scope=spfile;--將數據庫切換為歸檔模式

archive log stop;

archive log start;

    4. 熱備份具體步驟如下:

shutdown immediate;

startup mount;

alter database archivelog;

alter database open;

alter tablespace users begin backup; --設置備份模式;

host copy d:\oracle\*.dbf d:\export;--拷貝

alter tablespace users end backup ;--結束備份狀態

alter system switch logfile--切換日志,使用當前日志歸檔

    5. 不足之處:不能出錯

    6. 優點:備份時數據庫仍然可以使用,備份時間短

 

3.RMAN備份和恢復工具(rocovery manager)

1)說明:

  1.RMAN是 ORACLE提供的一個備份與恢復的工具,可以用來執行完全或不完全的數據庫恢復。

  2.RMAN不能用於備份初始化參數文件和口令文件。

  3. 與傳統工具相比,RMAN具有獨特的優勢:跳過未使用的數據塊。當備份一個RMAN備份集時,RMAN不會備份從未被寫入的數據塊,而傳統的方式無法獲知那些是未被使用的數據塊。

  4. RMAN可以進行增量備份(增量備份是針對於上一次備份(無論是哪種備份):備份上一次備份后,所有發生變化的文件

 

2)例子:

--准備工作:

 connect tiger/sccot;
 startup mount
 alter database archivelog
 alter database open

--查看備份相關信息

list backupset;

--備份全庫
backup database;

--備份表空間
backup tablespace tp1;

--備份全庫刪除舊的歸檔日志
backup databse plus archivelog delete input;--備份全庫及控制文件、服務器參數文件與所有歸檔的重做日志,並刪除舊的歸檔日志

--備份表空間刪除舊的歸檔日志
backup tablespace system plus archivelog delete input;

--備份歸檔日志
backup archivelog all delete input;

--查看備份信息
list of backup sets;

--0增量備份(等於全備份)
backup incremental level=0(level 0) database;

--1級增量備份
backup incremental level 1 database;

注意:0級增量備份和完全備份唯一的區別,0級增量備份能作為增量備份的基礎,而全備份不能作為增量備份的基礎

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM