閃回數據庫的使用

oracle閃回技術-----使用閃回日誌來恢復用戶的邏輯錯誤,這種修復只針對用戶邏輯錯誤的恢復,而不涉及整個數據庫的恢復
					恢復更具有針對性而且恢復時間大大減少。
	對於閃回數據庫而言,閃回日誌不會被歸檔
		啓用閃回數據庫-----數據庫處於歸檔模式
			使用DB_RECOVERY_FILE_DEST參數指定的目錄作爲存儲目錄,該參數的值即爲快速恢復區
			db_flashback_retention_target,該參數的值是一個一分鐘爲單位的數字。
			通過數據字典v$flashback_database_log來評估需要的快閃恢復區空間
				select estimated_flashback_size,retention_target,flashback_size
				from v$flashback_database_log
			mount - alter database flashback on
			查看啓用狀態
				select flashback_on from v$database;
			關閉閃回數據庫
				alter database falshback off;
				禁用某個表空間的閃回特性
					alter tablespace users flashback off;
				通過數據字典V$TABLESPACE來查詢該表空間是否已經不被閃回保護
					col flashback_on for a15
					select name,flashback_on
					from v$tablespace;      
				如果要重新對錶空間啓用閃回數據庫--需要將數據庫啓動到Mount狀態
					startup mount
					alter tablespace users flashback on;
			startup mount 
			alter database flashback off;
		閃回數據庫方法
			可以使用RMAN方法也可以使用SQL指令的方法實現。
				使用RMAN閃回數據庫如下3中方法
				  1.將數據庫閃回到過去的某個時間點,通過to_date函數指定具體的時間
						flashback database to time=to_date('xxxx-xx-xx xx:xx:xx','yyyy-mm-dd hh24:mi:ss')
				  2.將數據庫閃回到過去的某個SCN,不太實際
				  		flashback database to scn =xxxxx
				  3.將數據庫閃回到特定的日誌序列號之前的狀態,不包括序列號345
				  		flashback database to sequence=345 thread=1;
				使用sql指令閃回數據庫
				   1.將數據庫閃回到時間戳指定的狀態
				   		flashback database to timestamp (sysdate-1/24)
				   2.閃回數據庫到某個過去的SCN
				   		flashback database to scn 678854
			執行閃回數據庫時,需要將數據庫切換到MOUNT狀態,在閃回數據庫結束之後,需要用resetlogs開庫,即需要重新設置重做日誌
			,使得重做日誌序列號重新計數

			使用閃回數據庫
				創建用戶,並授予相關權限
				登錄到新建用戶下,創建測試用表,插入記錄
				刪除用戶

				在閃回日誌中查看相關記錄,使用到的視圖v$flashback_database_log
					select * from v$flashback_database_log;
				使用resetlogs打開數據庫,閃回日誌仍然有效。

			監控閃回數據庫
				使用v$flashback_database_log查詢可以閃回到的最小SCN號以及可以閃回到的時間點。
					select oldest_flashback_scn,oldest_flashback_time
					from v$flashback_database_log;

				數據字典視圖v$flashback_database_stat,用於監視閃回日誌寫入閃回數據的各種開銷,
								比如記錄當前閃回記錄起止時間,閃回記錄的數據量以及重做日誌記錄的數據量等信息
					select * from v$flashback_database_stat;

				監控快閃恢復區的空間變化,在必要時候增加快閃恢復區的空間
					select name,space_limit,space_used,space_reclaimable,number_of_files
					from v$recovery_file_dest

					name 				快速恢復區的目錄
					space_limit 		空間最大使用上限
					space_used			已使用了的空間
					space_reclaimable	可以回收的空間
					
			使用閃回數據庫的限制
				1.數據文件被刪除或縮短
				2.在閃回時間範圍內復原或重建了一個控制文件
				3.在resetlogs操作之前
				4.表空間被刪除


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章