真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何進(jìn)行ORACLERMAN備份及還原

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何進(jìn)行ORACLE RMAN備份及還原,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

作為一家“創(chuàng)意+整合+營銷”的成都網(wǎng)站建設(shè)機(jī)構(gòu),我們在業(yè)內(nèi)良好的客戶口碑。成都創(chuàng)新互聯(lián)公司提供從前期的網(wǎng)站品牌分析策劃、網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、網(wǎng)站制作、創(chuàng)意表現(xiàn)、網(wǎng)頁制作、系統(tǒng)開發(fā)以及后續(xù)網(wǎng)站營銷運(yùn)營等一系列服務(wù),幫助企業(yè)打造創(chuàng)新的互聯(lián)網(wǎng)品牌經(jīng)營模式與有效的網(wǎng)絡(luò)營銷方法,創(chuàng)造更大的價(jià)值。

 

RMAN可以進(jìn)行增量備份:數(shù)據(jù)庫,表空間,數(shù)據(jù)文件

只有使用過的block可以被備份成backup set

表空間與數(shù)據(jù)文件對應(yīng)關(guān)系:dba_data_files / v$datafile_header

在noarchivelog模式下,可以使用RMAN備份read-only和offline的表空間

ORACLE RMAN停機(jī)備份:

備份

RMAN連接上ORACLE,WINDOWS下在命令模式下

RMAN TARGET /

連接本地?cái)?shù)據(jù)庫用的是本地認(rèn)證模式。RMAN連接數(shù)據(jù)庫必須在dedicate模式下。因此在share模式下的數(shù)據(jù)庫應(yīng)配置一個(gè)dedicate的連接用于RMAN連接。

如果要把控制文件、參數(shù)文件也一起備份

configure controfile autobackup on;//打開autobackup 
configure controfile autobackup off;//關(guān)閉autobackup
關(guān)閉數(shù)據(jù)庫
RMAN>shutdown immediate
mount 數(shù)據(jù)庫RMAN的備份必須在MOUNT模式下,這也就是控制文件備份的重要。
RMAN>startup mount
最簡單的備份
RMAN>backup database
就這一句就OK了
這樣的備份,備份集在數(shù)據(jù)庫默認(rèn)位置。%oracle_home%/ora92/database
當(dāng)然你也可以用run來靈活的定義你的備份。
RMAN>run{
>allocate chennel d1 type disk; //分配通道
>backup full database           //全備份數(shù)據(jù)庫
>include current controlfile    //包括當(dāng)前的controlfile
>format 'e:\oracle\orders\db_%d_%s_%p_%t_%T'; //備份文件位置和文件名格式
>release channel d1;//釋放通道
>}

恢復(fù)
1、數(shù)據(jù)文件損壞,而控制文件是好,或者已經(jīng)恢復(fù)
 RMAN連上數(shù)據(jù)庫
 startup mount
 restore database
 recover database noredo;
 alter database open resetlogs;
 recover database noredo該命令指示RMAN執(zhí)行最后的恢復(fù)操作以準(zhǔn)備打開這個(gè)數(shù)據(jù)庫。因?yàn)槭窃贜OARCHIVELOG模式下并且不應(yīng)用任何歸檔的重做日志并且丟失了聯(lián)機(jī)重做日志,所以要求在這條命令中使用noredo參數(shù)。

最后使用alter database open resetlogs打開數(shù)據(jù)庫。由于已經(jīng)還原了控制文件并且需要重新構(gòu)建重做日志,所以必須用resetlogs。
2、還原控制文件
startup nomount;
set dbid =
restore controlfile from autobackup ;
alter database mount;
restore database;
recover database noredo;
alter database open resetlogs;
alter database open;
在這個(gè)例子中有一個(gè)DBID這個(gè)可以
select * from v$database中查到。但是一個(gè)數(shù)據(jù)庫在控制文件壞掉了不能OPEN如何能看的到呢這就在平時(shí)把這個(gè)DBID記下來。
這是最簡單的用RMAN備份與恢復(fù)的例子,但從中可以看到RMAN備份與恢復(fù)的梗概。

ORACLE RMAN在線備份:

1. ORACLE RMAN在線備份之前需要切換日志方式為歸檔日志;

a. 關(guān)閉數(shù)據(jù)庫
SQL> shutdown immediate;

b. 啟動(dòng)數(shù)據(jù)庫到mount狀態(tài)
SQL> startup mount;

c. 啟用歸檔模式
SQL> alter database archivelog;

d. 查看修改后的數(shù)據(jù)庫備份和恢復(fù)策略及歸檔文件的位置
SQL> archive log list;

注意:修改成archive模式之后,之前所有的數(shù)據(jù)庫備份均無效。

e. 修改相應(yīng)的初始化參數(shù)
Oracle10g之前,你還需要修改初始化參數(shù)使數(shù)據(jù)庫處于自動(dòng)歸檔模式。
可用SQL> show parameter log_archive_start;查看
NAME                                 TYPE        VALUE
------------------------------------ ----------- --------------
log_archive_start                    boolean     FALSE
SQL> alter system set log_archive_start=true scope=spfile;
重啟數(shù)據(jù)庫此參數(shù)生效,此時(shí)數(shù)據(jù)庫處于自動(dòng)歸檔模式。

當(dāng)然你也可以不做第5步,直接
SQL>archive log start
使數(shù)據(jù)庫啟用自動(dòng)歸檔,但是重啟后數(shù)據(jù)庫仍然處于手工歸檔模式。

2. 運(yùn)行:RMAN target /

3. RMAN信息保存:默認(rèn)保存在control file中,保存周期7天

調(diào)整:alter system set control_file_record_keep_time=天數(shù);

4. 搭建獨(dú)立數(shù)據(jù)庫保存RMAN備份信息

由于只有一個(gè)數(shù)據(jù)庫,就建在本身數(shù)據(jù)庫上

a. 創(chuàng)建表空間RC:create tablespace rc datafile size 10M autoextend on next 1M

b. 創(chuàng)建用戶RC:

CREATE USER rc IDENTIFIED BY rc TEMPORARY TABLESPACE temp DEFAULT TABLESPACE  rc QUOTA UNLIMITED ON rc;

c. 授權(quán)RC: GRANT RECOVERY_CATALOG_OWNER TO rc;

d. 搭建:

rman catalog rc/rc@orcl

RMAN>create catalog;

RMAN>exit

rman target / catalog rc/rc@orcl

RMAN>register database;

e. 使用:

rman target / catalog rc/rc@orcl

這種連接方式后,數(shù)據(jù)就會在控制文件和catalog各存一份

5. 全局參數(shù)配置:

查看:show all;

修改:configure 參數(shù)名稱 具體設(shè)置

例如:修改是否自動(dòng)保存control file:configure controlfile autobackup on;

恢復(fù)默認(rèn)值:configure 參數(shù)名稱 clear;

關(guān)鍵參數(shù):

a. 保存周期:retention policy

默認(rèn)是redundancy 1:保留一個(gè)備份;

可用值:recovery window of 7 days:保留可以滿足7天恢復(fù)周期的備份

根據(jù)條件檢查:report obsolete:RMAN會根據(jù)保存周期參數(shù)來列出可以刪除的備份

刪除多于備份:delete obsolete

b. 優(yōu)化備份:backup optimization:RMAN會自動(dòng)忽略已經(jīng)備份過的內(nèi)容(數(shù)據(jù)文件,歸檔日志,備份塊)

前提:備份指定同一個(gè)channel

c. 默認(rèn)備份渠道:default device type to disk:默認(rèn)備份到磁盤,路徑為flash recovery area

渠道類型:

disk:文件系統(tǒng)路徑

flash recovery area:默認(rèn)路徑

sbt:磁帶設(shè)備

修改到磁盤其他路徑:configure channel device type disk format '路徑/%U';

例如:configure channel device type disk format '/tmp/movedata/%U';

6. 備份結(jié)果

backupset:backup (as backupset) 備份內(nèi)容,里面分割成一個(gè)或多個(gè)backup piece,只有該類型備份可以進(jìn)行壓縮。

copy:backup as copy 備份內(nèi)容

按類型查看:

backupset 查看:list backup summary(list backupset summary)

查看詳情:list backupset BS

copy查看:list copy

按內(nèi)容查看:

整個(gè)數(shù)據(jù)庫:list backup of database;

tablespace:list backup of tablespace users;

數(shù)據(jù)文件:list backup of datafile n;

控制文件:list backup of controlfile;

歸檔日志:list archivelog all;

按規(guī)則查看:

查看根據(jù)保存規(guī)則可刪除文件:report obsolete;

查看根據(jù)保存規(guī)則需要備份內(nèi)容:report

RMAN和OS結(jié)合檢查:corsscheck 內(nèi)容;

7. 備份方式

full:全備;

Incremental:增量備份

可以增量備份的類型:數(shù)據(jù)庫,數(shù)據(jù)文件,表空間

a. 首先需要做level 0備份作為基礎(chǔ)。例如:backup incremental level 0 備份內(nèi)容;(備份內(nèi)容:所有使用過的data block,和image copy不同)

b. 增量類型:

累計(jì)增量:backup cumulative level 1 備份內(nèi)容;

差異增量:backup incremental level 1 備份內(nèi)容;

區(qū)別:累計(jì)增量始終是基于level 0的備份;

第一次差異增量是基于level 0的備份;從第二開始就是基于前一次增量備份

c. Image備份增量方式:

第一次:以Image全備為基礎(chǔ);

第二次:基于全備,做增量備份;完成后合成成一個(gè)Image全備

第三次:基于第二次的Image全備,做增量備份;完成后合成成一個(gè)Image全備

實(shí)現(xiàn):

例如:針對tablespace example

RUN {
   RECOVER COPY OF tablespace example WITH TAG 'incr_update';
   BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG 'incr_update'
       tablespace example;
   }

d. 開啟參數(shù)"block change tracking",可以提高速度

查看狀態(tài):SELECT status FROM v$block_change_tracking;

默認(rèn)值:DISABLED

開啟:ALTER DATABASE ENABLE BLOCK CHANGE TRACKING;(默認(rèn)存放路徑OMF中的DB_CREATE_FILE_DEST)

設(shè)置文件路徑:

ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE '/u01/oradata/MYSID/rman_change_track.f' REUSE;

關(guān)閉:ALTER DATABASE DISABLE BLOCK CHANGE TRACKING;

備份并檢查:bakcup check logical 備份內(nèi)容;

不備份只是檢查文件:backup validate 備份內(nèi)容;

如果檢查有報(bào)錯(cuò),查看:v$backup_corruption;v$copy_corruption

8. 備份內(nèi)容:

整個(gè)數(shù)據(jù)庫:RMAN>backup database;

經(jīng)典整庫備份:backup as compressed backupset database include current controlfile plus archivelog delete input;

tablespace:RMAN>backup tablespace 名字;

數(shù)據(jù)文件:RMAN>backup datafile n; (n:具體的數(shù)據(jù)文件編號select file_name,file_id,tablespace_name from dba_data_files;)

控制文件:RMAN>backup current controlfile;

或者RMAN>backup database include current controlfile;

日志文件:RMAN>backup archivelog all;

或者RMAN>backup database plus archivelog;

參數(shù)文件:RMAN>backup spfile;

9. 還原

a. 完全恢復(fù)

方法一:從最近的備份集恢復(fù)整個(gè)數(shù)據(jù)庫,數(shù)據(jù)庫會自動(dòng)運(yùn)行redo和archive日志(完全恢復(fù)):

SQL>shutdown immediate

SQL>startup mount

RMAN>restore database;

RMAN>recover database;

RMAN>sql 'alter database open';

方法二:從tag恢復(fù)整個(gè)數(shù)據(jù)庫,數(shù)據(jù)庫也會運(yùn)行redo 和archive 日志(完全恢復(fù)),結(jié)果與上面的腳本一樣:

1. 查看標(biāo)簽:

RMAN> list backupset summary;
Key     TY LV S Device Type Completion Time #Pieces #Copies Compressed Tag
------- -- -- - ----------- --------------- ------- ------- ---------- ---
25      B  A  A DISK        25-JUL-11       1       1       NO         TAG20110725T104634
28      B  0  A DISK        25-JUL-11       1       1       NO         TAG20110725T104645
29      B  A  A DISK        25-JUL-11       1       1       NO         TAG20110725T104711
30      B  F  A DISK        25-JUL-11       1       1       NO         TAG20110725T104713
31      B  A  A DISK        25-JUL-11       1       1       NO         TAG20110725T105333
32      B  A  A DISK        25-JUL-11       1       1       NO         TAG20110725T105350
33      B  1  A DISK        25-JUL-11       1       1       NO         TAG20110725T105353
34      B  A  A DISK        25-JUL-11       1       1       NO         TAG20110725T105408
35      B  F  A DISK        25-JUL-11       1       1       NO         TAG20110725T105411
36      B  A  A DISK        25-JUL-11       1       1       NO         TAG20110725T111403
37      B  1  A DISK        25-JUL-11       1       1       NO         TAG20110725T111405
38      B  A  A DISK        25-JUL-11       1       1       NO         TAG20110725T111421
39      B  F  A DISK        25-JUL-11       1       1       NO         TAG20110725T111423

2. 還原數(shù)據(jù)庫:

SQL>shutdown immediate;
SQL>startup mount;
RMAN>restore database from tag TAG20110725T104645;

RMAN> recover database from tag TAG20110725T104645;

RMAN> alter database open;

b. 不完全恢復(fù):

SQL>shutdown immediate;
SQL>startup mount;
RMAN>restore database from tag TAG20110725T104645;

RMAN>recover database until time "to_date('2011-08-04 15:37:25','yyyy/mm/dd hh34:mi:ss')";

RMAN>alter database open resetlogs;
注意:使用后所有的備份集都無效了,確保安全需要重新對數(shù)據(jù)庫進(jìn)行全備(ORACLE10G之后,resetlog之前的備份還是可以用的)

關(guān)鍵表空間恢復(fù)(system / undotbs1 / sysaux):

SQL>shutdown abort

SQL>startup mount

RMAN>restore tablespace 名字;

RMAN>recover tablespace 名字;

RMAN>sql 'alter database open';

非關(guān)鍵表空間恢復(fù)(example / users ):

select * from v$datafile_header; 表空間與數(shù)據(jù)文件對應(yīng)關(guān)系

SQL>alter database datafile 數(shù)字 offline;

RMAN>restore tablespace 名字;

RMAN>recover tablespace 名字;

SQL>alter database datafile 數(shù)字 online;

10. 刪除備份

所有backup備份集:delete backup;

所有copy備份機(jī):delete copy;

特定備份機(jī):delete backupset 19;

刪除根據(jù)保存規(guī)則可刪除文件:delete obsolete;

刪除過期的備份:

delete expired backupset;

delete expired copy;

11. RUN塊

例如:

RMAN> RUN {
          ALLOCATE CHANNEL c1 DEVICE TYPE sbt;
          ALLOCATE CHANNEL c2 DEVICE TYPE sbt;
          ALLOCATE CHANNEL c3 DEVICE TYPE sbt;
          BACKUP
         INCREMENTAL LEVEL = 0
         FORMAT '/disk1/backup/df_%d_%s_%p.bak'
         (DATAFILE 1,4,5 CHANNEL c1)
         (DATAFILE 2,3,9 CHANNEL c2)
        (DATAFILE 6,7,8 CHANNEL c3);
          ALTER SYSTEM ARCHIVE LOG CURRENT;
       }
12. 外部變量:

語言:set nls_lang=american

日期:set nls_date_format=yyyy-mm-dd....

13. RMAN sciprt

前提條件:有catalog

寫法:(global表示可以由多個(gè)數(shù)據(jù)庫調(diào)用)

create global script. 名

comment "備注說明"

{腳本內(nèi)容}

例如:

create global script. abc

comment "test"

{backup current controlfile;}

調(diào)用:run {execute script. 名}

例如:run {execute script. abc;}

查看:print script. 名

改寫:

replace global script. 名

comment "備注說明"

{腳本內(nèi)容}

刪除:delete script. 名;

14. 永久保留備份

條件是備份不能保留在flash recovery area中;

a. 創(chuàng)建備份:

RUN

{
ALLOCATE CHANNEL c1 DEVICE TYPE disk format '/tmp/autobackup/%U';
BACKUP tablespace example;
}

b. 查找該備份:

list backupset of tablespace example;

c. 修改屬性為永久

change backupset 編號 keep forever nologs;

15. 建立多個(gè)固定大小的備份

例如:example 測試備份大小是大于50M

run

{

allocate channel c1 device type disk maxpiecesize 10M format '/tmp/autobackup/%U';

backup tablespace example;

}

/tmp/autobackup目錄下有六個(gè)文件

16.運(yùn)行腳本:backup recovery area

備份內(nèi)容:

a. control file autobackup;

b. incremental backup sets

17.block change tracking

a. 針對整個(gè)數(shù)據(jù)庫;

b. 默認(rèn)存放路徑:background_dump_dest

上述就是小編為大家分享的如何進(jìn)行ORACLE RMAN備份及還原了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)頁標(biāo)題:如何進(jìn)行ORACLERMAN備份及還原
本文地址:http://weahome.cn/article/pcpspg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部