oracle 增量備份恢復驗證
首先把備份檔案傳到目標端,解壓,如下所示是每天的備份,其中20190816是0級別的差異增量備份
,其餘的都是1級的差異增量備份。
[oracle@beijing-fuli-hadoop-03 /data/backup/oracle]$ ll
total 0
drwxr-xr-x 2 oracle oinstall 332 Aug 18 18:39 20190816
drwxr-xr-x 2 oracle oinstall 298 Aug 18 18:41 20190817
drwxr-xr-x 2 oracle oinstall 298 Aug 18 18:44 20190818
1.恢復引數檔案(引數檔案會在自動備份控制檔案的時候進行備份)
RMAN>restore spfile from '/data/backup/oracle/20190818/db2_lev1_c-2174667026-20190818-1a';
然後建立成pfile,進行相應的修改,
create pfile from spfile;
2.恢復控制檔案(選擇最後一次備份的控制檔案即可)
RMAN> restore controlfile from '/data/backup/oracle/20190818/controlfile20190818184413.bak';
Starting restore at 18-AUG-19
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=129 device type=DISK
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/data/u01/app/oracle/oradata/db2/control01.ctl
output file name=/data/u01/app/oracle/fast_recovery_area/db2/control02.ctl
Finished restore at 18-AUG-19
3.恢復資料檔案並藉助歸檔日誌實現資料一致性
3.1告訴rman備份檔案在哪裡:
RMAN> catalog start with '/data/backup/oracle';
3.2具體恢復,基於時間的恢復,選擇一個比較大的時間,就是肯定在備份時間之後的時間!
run {
set until time "to_date('2019-08-28 20:30:13','yyyy-mm-dd hh24:mi:ss')";
restore database;
recover database;
}
3.3開啟資料庫:
SQL> alter database open resetlogs;
Database altered.
如果你還有更多的 歸檔日誌,可以把日誌傳輸到目的端,然後再進行前面的步驟三,至於到底需要傳那幾個歸檔,需要你來判斷,就是說只要包含最近一次備份完成後的那個點(scn)即可,然後都是oracle自動去識別哪些是需要應用的archive log,不需要你認為的指定,所以原則是竟可能多傳輸archive,千萬別少傳輸!
首先在完成最後一次增量備份後,再主庫insert一條資料,
SQL> insert into liuwenhe.test values (1010101);
SQL>commit;
SQL> alter system ARCHIVE LOG CURRENT;
然後把最近的archive log傳給目的端,
[oracle@beijing-fuli-hadoop-02 archive]$ scp 1_32* oracle@10.9.21.115:/data/backup/oracle
The authenticity of host '10.9.21.115 (10.9.21.115)' can't be established.
RSA key fingerprint is b4:c6:cf:53:53:6e:b6:9d:0b:a1:cf:45:67:ec:b9:57.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.9.21.115' (RSA) to the list of known hosts.
oracle@10.9.21.115's password:
1_320_1013795224.dbf 100% 1024 1.0KB/s 00:00
1_32_1011211412.dbf 100% 27MB 26.9MB/s 00:00
1_32_1012767360.dbf 100% 27MB 27.0MB/s 00:00
1_321_1013795224.dbf 100% 75KB 75.0KB/s 00:00
1_322_1013795224.dbf 100% 2048 2.0KB/s 00:00
1_323_1013795224.dbf 100% 1024 1.0KB/s 00:00
1_324_1013795224.dbf 100% 3343KB 3.3MB/s 00:00
1_325_1013795224.dbf 100% 18KB 18.0KB/s 00:00
1_326_1013795224.dbf 100% 12KB 12.0KB/s 00:00
1_327_1013795224.dbf
把最近的歸檔傳給目的地,然後告訴rman備份檔案以及最近的歸檔在哪裡:
RMAN> catalog start with '/data/backup/oracle';
具體恢復,基於時間的恢復,選擇一個比較大的時間,就是肯定在備份時間之後的時間!
run {
set until time "to_date('2019-08-28 20:30:13','yyyy-mm-dd hh24:mi:ss')";
restore database;
recover database;
}
3.3開啟資料庫:
SQL> alter database open resetlogs;
Database altered.
發現最近的歸檔下已經應用了:發現1010101這條資料已經存在了,
SQL> select * from liuwenhe.test;
ID
----------
100
100
1
2
22
1010101
6 rows selected.
至此完成了增量備份的恢復!
RMAN不完全恢復的主要操作命令!
a、基於TIME 引數不完全恢復
run {
shutdown immediate;
startup mount;
set until time "to_date('2019-04-28 20:30:13','yyyy-mm-dd hh24:mi:ss')";
restore database;
recover database;
alter database open resetlogs;
}
b、基於SCN 引數不完全恢復
run {
shutdown immediate;
startup mount;
set until scn 3400;
restore database;
recover database;
alter database open resetlogs;
}
c、基於SEQUENCE 引數不完全恢復:
run {
shutdown immediate;
startup mount;
set until sequence 12903;
restore database;
recover database;
alter database open resetlogs;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29654823/viewspace-2654316/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- rman 增量備份恢復
- 用增量備份來快速恢復dg
- 【Xtrabackup】Xtrabackup全備、增量備份及恢復示例
- Oracle 備份 與 恢復 概述Oracle
- Oracle 備份恢復之 FlashbackOracle
- ORACLE備份&恢復案例(轉)Oracle
- 備份與恢復oracle_homeOracle
- Oracle 備份和恢復介紹Oracle
- ORACLE備份&恢復案例三(轉)Oracle
- ORACLE備份&恢復案例二(轉)Oracle
- ORACLE本地磁碟備份恢復Oracle
- dg丟失歸檔,使用rman增量備份恢復
- oracle基於SCN增量恢復Oracle
- Oracle 12c 備份與恢復Oracle
- Oracle 備份恢復篇之RMAN catalogOracle
- ORACLE DG從庫 Rman備份恢復Oracle
- oracle資料庫備份之exp增量備份Oracle資料庫
- RAC備份恢復之Voting備份與恢復
- 備份與恢復:polardb資料庫備份與恢復資料庫
- MySQL備份與恢復——基於Xtrabackup物理備份恢復MySql
- DBV:冷備份的校驗和恢復
- 基於percona xtrabackup 2.4.14的增量備份恢復還原mysql 5.6MySql
- oracle冷備恢復Oracle
- mydumper備份恢復
- Mysql備份恢復MySql
- 備份和恢復
- LINUX下ORACLE增量備份的步驟LinuxOracle
- oracle10g RMAN增量備份策略Oracle
- 【ASK_ORACLE】Oracle 12c之CDB與PDB的備份與恢復(二)備份恢復之前你需要知道的Oracle
- PostgreSQL12中實現增量備份與任意時間點恢復SQL
- 詳解叢集級備份恢復:物理細粒度備份恢復
- MySQL備份與恢復——基於MyDumper/MyLoader 邏輯備份恢復MySql
- Oracle 11g R2 備份與恢復Oracle
- oracle drop table purge無備份bbed恢復(3/3)Oracle
- oracle drop table purge無備份bbed恢復(1/3)Oracle
- oracle drop table purge無備份bbed恢復(2/3)Oracle
- Oracle邏輯備份與恢復選項說明Oracle
- Mysql備份與恢復(1)---物理備份MySql