【oracle11g,13】表空间管理2:undo表空间管理(调优),闪回原理(七)

2014-11-24 09:08:40 · 作者: · 浏览: 1
回状态 SQL> select name , flashback_on from v$database;
NAME FLASHBACK_ON --------- ------------------

二.闪回的种类:(重点)

1.闪回drop 闪回drop利用回收站闪回删除的表. #首先要开启回收站 10g可以用:alter system set recyclebin=off; 和alter system set recyclebin=on;来关闭和开启 11g可以用:alter system set recyclebin=off deferred; 和alter system set recyclebin=on deferred;
注意:system表空间的表不进回收站。
2.闪回表和闪回查询利用undo数据闪回表,如果数据被覆盖就不能查询。
例:闪回查询: SQL>set time on;
SQL> delete from emplx; SQL> commit; #闪回查询(时间点) SQL>select * from emplx as of timestamp to_timestamp('2014-6-26 15:49:29','yyyy-mm-dd hh24:mi:ss');
#可以利用闪回恢复数据: SQL> insert into emplx select * from emplx as of timestamp to_timestamp('2014-6-26 15:49:29','yyyy-mm-dd hh24:mi:ss');

3.闪回数据库:闪回数据库是利用闪回日志进行闪回。开启闪回时,会启动一个进程(rvwr)写闪回日志,记录ddl操作, [oracle@master ~]$ ps -ef| grep ora_ oracle 5249 1 0 15:33 00:00:00 ora_pmon_prod oracle 5251 1 0 15:33 00:00:00 ora_vktm_prod oracle 5255 1 0 15:33 00:00:00 ora_gen0_prod oracle 5257 1 0 15:33 00:00:00 ora_diag_prod oracle 5259 1 0 15:33 00:00:00 ora_dbrm_prod oracle 5261 1 0 15:33 00:00:00 ora_psp0_prod oracle 5263 1 0 15:33 00:00:01 ora_dia0_prod oracle 5265 1 0 15:33 00:00:00 ora_mman_prod oracle 5267 1 0 15:33 00:00:00 ora_dbw0_prod oracle 5269 1 0 15:33 00:00:00 ora_lgwr_prod oracle 5271 1 0 15:33 00:00:01 ora_ckpt_prod oracle 5273 1 0 15:33 00:00:00 ora_smon_prod oracle 5275 1 0 15:33 00:00:00 ora_reco_prod oracle 5277 1 0 15:33 00:00:01 ora_mmon_prod oracle 5279 1 0 15:33 00:00:00 ora_mmnl_prod oracle 5324 1 0 15:34 00:00:00 ora_rvwr_prod oracle 5332 1 0 15:34 00:00:00 ora_arc0_prod oracle 5334 1 0 15:34 00:00:00 ora_arc1_prod oracle 5336 1 0 15:34 00:00:00 ora_arc2_prod oracle 5338 1 0 15:34 00:00:00 ora_arc3_prod oracle 5340 1 0 15:34 00:00:00 ora_qmnc_prod oracle 5357 1 0 15:34 00:00:00 ora_q000_prod oracle 5359 1 0 15:34 00:00:00 ora_q001_prod oracle 5564 1 0 15:44 00:00:00 ora_smco_prod oracle 6192 1 0 16:14 00:00:00 ora_w000_prod oracle 6325 4752 0 16:20 pts/2 00:00:00 grep ora_

4.闪回归档(flashback archive) falshback archive 只能在assm的tablespace上建立。闪回归档:利用快照。

三.truncate 不能用闪回查询:

四.闪回区的作用:

1.flashback log为了对数据库进行后滚操作而设立的,为了存放flashback log ,oracle建立了闪回区。 2.闪回数据库是用flashacklog ,当数据库方式ddl等变化就记录。 3.开启闪回后,oracle 会在share pool 中添加一个flashback buffer。 4.闪回区存放的文件有: 控制文件 归档日志文件 (归档默认放置的位置) 闪回日志 控制文件和spfile自动备份 rman 备份集 数据文件拷贝 5.数据启动闪回后,rvwr进程就会启动,该进程会向flash recovery area 中写入flashback log;

五.查询闪回区空间使用情况:

#查询闪回区空间使用情况: SQL> select name,space_limit/1024/1024 space_limit, space_used/1024/1024, space_used,space_reclaimable, number_of_files from v$recovery_file_dest;
NAME SPACE_LIMIT SPACE_USED/1024/1024 SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES -------------------------- ----------- -------------------- ---------- ----------------- ---------------
/home/oracle/prodfalshback 1024 7.8125 8192000 0 1