码迷,mamicode.com
首页 > 数据库 > 详细

oracle闪回的使用

时间:2018-02-05 00:27:42      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:配置   max   闪回查询   ack   parameter   user   data   除了   操作   

1、闪回查询(原理:依赖于UNDO表空间)
查询当前SCN号
select current_scn from v$database;
误删数据以后
select * from table_name as of scn 删除数据前的SCN号;
将数据重新插入表中
insert into table_name select * from table_name as of scn 删除数据前的SCN号;
2、闪回drop(原理:利用回收站recyclebin)
查看是否启用回收站
show parameter recyclebin
如果启用了回收站功能drop掉的非系统空间的表,都会保留在回收站中
show recyclebin
拿回误删的表
flashback table table_name to before drop;
3、闪回table(对表数据进行了错误的修改,回退到原数据)(undo)
flashback table table_name to scn 修改数据前的SCN号;
改变表,使行可以movement
alter table table_name enable row movement;
4、闪回version query(闪回版本查询)
查询你对表操作的所有记录
select versions_xid,versions_operation,versions_startscn,versions_starttime,versions_endscn,versions_endtime,id,name
from table_name versions between scn minvalue and maxvalue;
5、闪回transaction query(闪回事务查询)
select * from flashback_transaction_query where xid=‘34查询到的versions_xid‘;
找到undo_sql,复制执行就可以了
6、闪回database
查询数据库是否支持闪回数据库
select flashback_on from v$database;
启用闪回数据库功能,需要数据在mount状态下(归档模式)启动,然后
alter database flashback on;
然后确认启用恢复区
show parameter db_recovery
保证db_recovery_file_dest配置的有值
查询相关视图
select * from v$flashback_database_logfile;
select * from v$flashback_database_log;
删除了某个数据库用户,然后闪回
flashback database to scn 需要闪回的SCN号;
然后查看当前数据库有哪些用户,看一下被删除的用户是否撤回
select username from dba_users;

oracle闪回的使用

标签:配置   max   闪回查询   ack   parameter   user   data   除了   操作   

原文地址:https://www.cnblogs.com/qinjf/p/8414647.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!