遠端資料庫恢復
--遠端資料庫恢復
--測試常用程式碼!
select * from v$datafile;
select name from v$datafile;
create tablespace test3 datafile 'D:APPADMINISTRATORORADATAORCLtest3' size 30m;
create user test3 identified by test3 default tablespace test3
grant dba to test3
create table test as select * from v$datafile where 1=2
insert into test select * from v$datafile
select * from test as timestamp '2009-4-27 19:17:00'
select sysdate from dual --'2009-4-27 19:17:00'
recover tablespace test2 until time '2009-4-27 20:12:29' auxiliary destination 'd:'
delete from test
select * from test
rman target sys/sys auxiliary
run{
allocate auxiliary channel c1 device type disk;
recover tablespace test2 until time '2009-4-27 20:12:29' ;
}
--備份資料庫
--原資料庫
--rman catalog rman/rman target /
--backup database plus archivelog delete input
RMAN> run
2> {allocate channel d1 type disk maxpiecesize = 500m;
3> backup database plus archivelog delete input
4> format 'E:log_%d_%s_%p_%t';
5> release channel d1;
6> }
正在啟動全部恢復目錄的 resync
完成全部 resync
分配的通道: d1
通道 d1: SID=131 裝置型別=DISK
啟動 backup 於 2009-04-28 18:33:59
當前日誌已存檔
通道 d1: 正在啟動歸檔日誌備份集
通道 d1: 正在指定備份集內的歸檔日誌
輸入歸檔日誌執行緒=1 序列=19 RECID=29 STAMP=685364050
輸入歸檔日誌執行緒=1 序列=20 RECID=31 STAMP=685364139
輸入歸檔日誌執行緒=1 序列=21 RECID=34 STAMP=685373634
輸入歸檔日誌執行緒=1 序列=22 RECID=36 STAMP=685375270
輸入歸檔日誌執行緒=1 序列=23 RECID=38 STAMP=685375448
輸入歸檔日誌執行緒=1 序列=24 RECID=40 STAMP=685377109
輸入歸檔日誌執行緒=1 序列=25 RECID=42 STAMP=685377225
輸入歸檔日誌執行緒=1 序列=26 RECID=44 STAMP=685379404
輸入歸檔日誌執行緒=1 序列=27 RECID=46 STAMP=685387210
輸入歸檔日誌執行緒=1 序列=28 RECID=48 STAMP=685389138
輸入歸檔日誌執行緒=1 序列=29 RECID=50 STAMP=685391640
通道 d1: 正在啟動段 1 於 2009-04-28 18:34:11
通道 d1: 已完成段 1 於 2009-04-28 18:34:18
段控制程式碼=E:LOG_ORCL_50_1_685391642 標記=TAG20090428T183401 註釋=NONE
通道 d1: 備份集已完成, 經過時間:00:00:07
完成 backup 於 2009-04-28 18:34:18
啟動 Control File and SPFILE Autobackup 於 2009-04-28 18:34:18
段 handle=D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLAUTOBACKUP2009_04_28O1
_MF_S_685391660_4ZFPXMVT_.BKP comment=NONE
完成 Control File and SPFILE Autobackup 於 2009-04-28 18:34:35
RMAN>
--檔案複製和資料目錄建立
(略)
--(不同機器)
--可龍資料庫
--rman catalog rman/rman target /
--restore database
-----------使用恢復管理器檔案物理恢復
C:Documents and SettingsAdministrator>rman catalog target /
恢復管理器: Release 11.1.0.6.0 - Production on 星期二 4月 28 19:19:18 2009
Copyright (c) 1982, 2007, Oracle. All rights reserved.
已連線到目標資料庫: ORCL (DBID=1213082043, 未開啟)
連線到恢復目錄資料庫
RMAN> restore database;
啟動 restore 於 28-4月 -09
正在啟動全部恢復目錄的 resync
完成全部 resync
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=150 裝置型別=DISK
通道 ORA_DISK_1: 正在開始還原資料檔案備份集
通道 ORA_DISK_1: 正在指定從備份集還原的資料檔案
通道 ORA_DISK_1: 將資料檔案 00001 還原到 D:APPADMINISTRATORORADATAORCLSYSTE
M01.DBF
通道 ORA_DISK_1: 將資料檔案 00002 還原到 D:APPADMINISTRATORORADATAORCLSYSAU
X01.DBF
通道 ORA_DISK_1: 將資料檔案 00003 還原到 D:APPADMINISTRATORORADATAORCLUNDOT
BS01.DBF
通道 ORA_DISK_1: 將資料檔案 00004 還原到 D:APPADMINISTRATORORADATAORCLUSERS
01.DBF
通道 ORA_DISK_1: 將資料檔案 00005 還原到 D:APPADMINISTRATORORADATAORCLEXAMP
LE01.DBF
通道 ORA_DISK_1: 將資料檔案 00006 還原到 D:APPADMINISTRATORORADATAORCLTEST
通道 ORA_DISK_1: 將資料檔案 00007 還原到 D:APPADMINISTRATORORADATAORCLTEST1
通道 ORA_DISK_1: 將資料檔案 00008 還原到 D:APPADMINISTRATORORADATAORCLTEST2
通道 ORA_DISK_1: 將資料檔案 00009 還原到 D:APPADMINISTRATORORADATAORCLTEST3
通道 ORA_DISK_1: 將資料檔案 00010 還原到 D:APPADMINISTRATORORADATAORCLRMAT_
TS
通道 ORA_DISK_1: 正在讀取備份片段 E:DB_ORCL_46_1_685388997
通道 ORA_DISK_1: 段控制程式碼 = E:DB_ORCL_46_1_685388997 標記 = TAG20090428T174956
通道 ORA_DISK_1: 已還原備份片段 1
通道 ORA_DISK_1: 正在讀取備份片段 E:DB_ORCL_46_2_685388997
通道 ORA_DISK_1: 段控制程式碼 = E:DB_ORCL_46_2_685388997 標記 = TAG20090428T174956
通道 ORA_DISK_1: 已還原備份片段 2
通道 ORA_DISK_1: 正在讀取備份片段 E:DB_ORCL_46_3_685388997
通道 ORA_DISK_1: 段控制程式碼 = E:DB_ORCL_46_3_685388997 標記 = TAG20090428T174956
通道 ORA_DISK_1: 已還原備份片段 3
通道 ORA_DISK_1: 還原完成, 用時: 00:01:17
完成 restore 於 28-4月 -09
RMAN>
--下面的程式碼要在開始的時候啟動
SQL> startup nomount;
ORACLE instance started.
Total System Global Area 535662592 bytes
Fixed Size 1334380 bytes
Variable Size 201327508 bytes
Database Buffers 327155712 bytes
Redo Buffers 5844992 bytes
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01507: database not mounted
SQL> alter database mount;
Database altered.
-----------使用plsql資料庫的不完全恢復
SQL> recover database until cancel;
ORA-00279: change 1063367 generated at 04/28/2009 17:50:04 needed for thread 1
ORA-00289: suggestion :
D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLARCHIVELOG2009_04_28O1_MF_1_28_4
ZFNGLG5_.ARC
ORA-00280: change 1063367 for thread 1 is in sequence #28
Specify log: {
cancel
Media recovery cancelled.
SQL> alter database open resetlogs;
Database altered.
SQL>
--下面方法應該實用9 10 11資料庫版本!
--#########################################################################
--記住:當一開啟資料檔案,控制檔案的資訊就會改變,
-- resetlogs開啟資料庫,很多資訊都會改變!尤其是備份需要的資訊
--這種辦法雖然有點垃圾,但是勉強還是可以用的
--超級垃圾的rman複製!
--複製,控制檔案(rman資訊的儲存)(用恢復目錄應該不用複製控制檔案)
-- 日誌檔案(資料庫開啟是應用,也可以不用不過資料可能會出現不一樣)
-- rman備份檔案,恢復是應用,歸檔日誌也要複製過來
-- 可以直接開啟資料庫
--沒有日誌可以用不完全恢復的辦法!
--有一種方法可以不用日誌檔案,關鍵是要有恢復資料庫足夠的日誌資訊
--兩者結合起來可以做!但是有可能會有個別資訊的丟失!
--資訊一樣¡¤
--rman target auxiliary / 這種方法就是媽的有問題
-- 失敗的原因是控制檔案被修改 !
--總結:資料庫在開啟前對資料庫檔案不做校驗的!(校驗在資料庫開啟和重建控制檔案的時候)
--應用歸檔日誌還原資料
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9879835/viewspace-1021422/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【資料庫資料恢復】SAP資料庫資料恢復案例資料庫資料恢復
- 寶塔資料庫恢復 mysql資料庫丟失恢復 mysql資料庫刪除庫恢復 寶塔mysql資料庫恢復資料庫MySql
- 【資料庫資料恢復】Sql Server資料庫資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】透過恢復NDF檔案修復資料庫的資料恢復過程資料庫資料恢復
- 資料庫修復資料恢復資料庫資料恢復
- 【資料庫資料恢復】如何恢復Oracle資料庫truncate表的資料資料庫資料恢復Oracle
- 【資料庫資料恢復】windows server下SqlServer資料庫的資料恢復資料庫資料恢復WindowsServerSQL
- 【資料庫資料恢復】誤truncate table的Oracle資料庫資料恢復方案資料庫資料恢復Oracle
- 【資料庫資料恢復】oracle資料庫誤truncate table怎麼恢復資料?資料庫資料恢復Oracle
- 【資料庫資料恢復】linux系統下MYSQL資料庫資料恢復案例資料庫資料恢復LinuxMySql
- 【資料庫資料恢復】Oracle資料庫誤truncate table的資料恢復案例資料庫資料恢復Oracle
- 伺服器資料恢復—透過拼接資料庫碎片恢復SqlServer資料庫資料的資料恢復案例伺服器資料恢復資料庫SQLServer
- 【資料庫資料恢復】MS SQL資料庫附加資料庫出錯怎麼恢復資料?資料庫資料恢復SQL
- sybase資料庫恢復資料庫
- Sybase ASE資料庫恢復,Sybase資料恢復,資料誤刪除恢復工具READSYBDEVICE資料庫資料恢復dev
- 資料庫資料恢復—NTFS分割槽損壞如何恢復SqlServer資料庫資料資料庫資料恢復SQLServer
- 【資料庫資料恢復】sql server資料庫連線失效的資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】Oracle資料庫ASM磁碟組掉線如何恢復資料?資料庫資料恢復OracleASM
- 【資料庫資料恢復】MongoDB資料庫檔案損壞的資料恢復案例資料庫資料恢復MongoDB
- 【資料庫資料恢復】SqlServer資料庫無法讀取的資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】SQL server資料庫被加密怎麼辦?如何恢復?資料庫資料恢復SQLServer加密
- 資料庫資料恢復—SQLserver資料庫中勒索病毒被加密怎麼恢復資料?資料庫資料恢復SQLServer加密
- 資料庫資料恢復—附加資料庫錯誤823的SQL Server資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】ASM磁碟組掉線的Oracle資料庫資料恢復案例資料庫資料恢復ASMOracle
- 【資料庫資料恢復】SQL Server資料庫磁碟空間不足的資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】透過資料頁恢復Sql Server資料庫資料的過程資料庫資料恢復SQLServer
- Sybase SQL Anywhere(ASA)資料庫恢復,ASA資料恢復,資料誤刪除恢復工具ReadASADBSQL資料庫資料恢復
- 資料庫資料恢復-oracle資料庫報錯無法開啟的如何恢復資料?資料庫資料恢復Oracle
- 資料庫資料恢復-SQL SERVER資料庫MDF (NDF)或LDF損壞如何恢復資料?資料庫資料恢復SQLServer
- 【資料庫資料恢復】ASM例項不能掛載的Oracle資料庫資料恢復案例資料庫資料恢復ASMOracle
- 【資料庫資料恢復】MongoDB資料庫服務啟動失敗的資料恢復案例資料庫資料恢復MongoDB
- 【資料庫資料恢復】Sql Server資料庫檔案丟失的資料恢復過程資料庫資料恢復SQLServer
- 【資料庫資料恢復】LINUX環境下ORACLE資料庫誤刪除的資料恢復資料庫資料恢復LinuxOracle
- 資料庫備份恢復資料庫
- MySQL資料庫故障恢復MySql資料庫
- MySQL資料庫的恢復MySql資料庫
- 資料庫恢復過程資料庫
- oradim工具恢復資料庫資料庫
- 【資料庫資料恢復】斷電導致Oracle資料庫資料丟失的資料恢復案例資料庫資料恢復Oracle