幾種場景的資料庫恢復
先簡單說明兩種使用者管理的備份方式
1.冷備份
shutdown immediate/normal/transactional
copy/cp備份所有的檔案
alter database open
2.熱備份--必須在歸檔模式下
alter tablespace tbs_name begin backup
備份(copy/cp)tbs_name表空間對應的所有檔案
alter tablespace tbs_name end backup
或者
alter database datafile 檔案號 或 '
備份對應的資料檔案
alter database datafile 檔案號 或 '
下面具體說明幾種場景的恢復
1)關閉資料庫的恢復
a)系統表空間壞了,會自動關閉資料庫
b)undo表空間壞了,會自動關閉資料庫
c)所有資料檔案壞了
這三種情況只能關閉資料庫恢復,同時可以考慮:是不是歸檔模式,有沒有歸檔模式的備份,否則就有資料丟失了
模擬: shutdown immediate,刪除system表空間對應的檔案
startup; --報錯,檢視狀態為mount,select status from v$instance
select * from v$backup --可以查詢哪個檔案丟失(status=active)
restore(copt/cp)丟失的檔案
--在mount狀態下執行
recover datafile 檔案號 或 '檔名'
alter database open
2)Open 狀態下資料檔案恢復,必須在歸檔模式下
a)某個普通資料檔案損壞 b)shutdown以後出現普通檔案損壞
模擬a: 建立一個表空間test,備份,alter system switch logfile
alter tablespace test offline
刪除test對應的檔案
--檢視那些檔案需要恢復
select * from v$recover_file;
--欄位ERROR,'OFFLINE NORMAL'表示不要恢復,NULL表示未知原因,
'FILE NOT FOUNT'等
select * from v$backup; //Status = Active
--不用關閉資料庫,直接將備份檔案複製到資料檔案目錄下
recover tablespace test;
alter tablespace test online;
b)先啟動,使壞了的表空間offline,再恢復
3)沒有任何備份的恢復
條件:必須是在歸檔模式起用後再建立的檔案和所有之後的歸檔都存在
模擬:已起用歸檔模式
create tablespace test datafile '.... est.dbf' size 5M;
create table t(id int, mc varchar2(10)) tablespace test;
insert into values(1,'test');
commit;
alter system switch logfile;
alter system switch logfile;
--多做幾次,確保歸檔
--破壞資料檔案,沒有備份
alter tablespace test offline;
刪除檔案 test.dbf
alter tablespace test online;
報錯
--恢復
alter database create datafile 檔案號 或 '檔名'
recover datafile 檔案號 或 '檔名'
--或recover tablespace test;
alter tablespace test online
--如果是drop了,就只能做不完全恢復了(時間點等)
4)將檔案移到另一個磁碟
只要rename (比如檔案存放的磁碟損壞時使用)
alter tablespace test offline
將備份的檔案複製到另一個地方
alter database rename file '檔名' to '新資料夾檔名'
recover datafile 檔案號 或 '檔名'
alter tablespace test online
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-84777/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 11g 資料庫恢復-場景5:部分檔案損壞恢復,開庫狀態,低可用恢復方式Oracle資料庫
- Oracle 11g 資料庫恢復-場景4:部分檔案損壞恢復,開庫狀態, 高可用恢復方式Oracle資料庫
- Oralce 11g資料庫恢復-場景3:部分檔案損壞恢復,關庫狀態,高可用恢復方式資料庫
- 歸檔模式下四種完全恢復的場景模式
- 無備份恢復各種場景的處理
- Oracle 11g資料庫恢復:場景11:資料檔案損壞,不能恢復到原來的位置, 恢復到新的路徑Oracle資料庫
- Oracle 11g 資料庫恢復:場景12續:將資料檔案恢復回原來正確的位置Oracle資料庫
- 資料庫資料恢復-ORACLE資料庫的常見故障&各種故障下的資料恢復可能性資料庫資料恢復Oracle
- 幾種主要的oracle資料庫問題發生後資料恢復的成功概率分析Oracle資料庫資料恢復
- 【資料庫資料恢復】SAP資料庫資料恢復案例資料庫資料恢復
- 【資料庫資料恢復】透過恢復NDF檔案修復資料庫的資料恢復過程資料庫資料恢復
- 寶塔資料庫恢復 mysql資料庫丟失恢復 mysql資料庫刪除庫恢復 寶塔mysql資料庫恢復資料庫MySql
- 【資料庫資料恢復】如何恢復Oracle資料庫truncate表的資料資料庫資料恢復Oracle
- 【資料庫資料恢復】windows server下SqlServer資料庫的資料恢復資料庫資料恢復WindowsServerSQL
- Oracle 11g 資料庫恢復-場景7:部分檔案損壞Oracle資料庫
- 【資料庫資料恢復】Sql Server資料庫資料恢復案例資料庫資料恢復SQLServer
- 一種快速恢復資料庫的方法——Flashback DB資料庫
- 【資料庫資料恢復】Oracle資料庫誤truncate table的資料恢復案例資料庫資料恢復Oracle
- 【資料庫資料恢復】誤truncate table的Oracle資料庫資料恢復方案資料庫資料恢復Oracle
- 伺服器資料恢復—透過拼接資料庫碎片恢復SqlServer資料庫資料的資料恢復案例伺服器資料恢復資料庫SQLServer
- 資料庫修復資料恢復資料庫資料恢復
- 恢復資料庫資料庫
- 12C PDB使用RMAN的4種完全恢復場景
- 【資料庫資料恢復】SqlServer資料庫無法讀取的資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】sql server資料庫連線失效的資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】MongoDB資料庫檔案損壞的資料恢復案例資料庫資料恢復MongoDB
- MySQL資料庫的恢復MySql資料庫
- Oracle資料庫備份與恢復的三種方法Oracle資料庫
- Dedecms資料庫恢復與備份的兩種方法資料庫
- 【資料庫資料恢復】ASM磁碟組掉線的Oracle資料庫資料恢復案例資料庫資料恢復ASMOracle
- 【資料庫資料恢復】SQL Server資料庫磁碟空間不足的資料恢復案例資料庫資料恢復SQLServer
- Oracle 11g RMAN恢復-場景1:所有的資料檔案損壞,資料庫CLOSEOracle資料庫
- 使用恢復建議恢復資料庫資料庫
- 【資料庫資料恢復】oracle資料庫誤truncate table怎麼恢復資料?資料庫資料恢復Oracle
- 【資料庫資料恢復】透過資料頁恢復Sql Server資料庫資料的過程資料庫資料恢復SQLServer
- 【資料庫資料恢復】Sql Server資料庫檔案丟失的資料恢復過程資料庫資料恢復SQLServer
- 【資料庫資料恢復】MongoDB資料庫服務啟動失敗的資料恢復案例資料庫資料恢復MongoDB
- 資料庫資料恢復—附加資料庫錯誤823的SQL Server資料恢復案例資料庫資料恢復SQLServer