Heim > Datenbank > MySQL-Tutorial > Hauptteil

Oracle flashback闪回专题

WBOY
Freigeben: 2016-06-07 16:50:38
Original
813 Leute haben es durchsucht

1、flashback简介:flashback 按使用的频率,一般分下面四种: 1gt;flashback query 闪回表的记录,用于数据表记录的恢复; 2

1、flashback简介:
flashback 按使用的频率,,一般分下面四种:
  1>flashback query 闪回表的记录,用于数据表记录的恢复;
  2>falshabck Table 闪回数据表;
  3>flashback drop  回收数据库表,用于表误删除后的恢复;
  4>flashback database 闪回数据库,将数据库还原到某个时间点。
2、与flashback相关的系统字典表:
--查看回收站
SELECT * FROM DBA_RECYCLEBIN ORDER BY droptime DESC;
SELECT * FROM RECYCLEBIN ORDER BY droptime DESC;--当前用户的回收站
--查询SCN与时间的对应关系
select scn,to_char(time_dp,'yyyy-mm-dd hh24:mi:ss') from sys.smon_scn_time ORDER BY time_dp DESC;
SELECT MAX(SCN) FROM sys.smon_scn_time; --最大/最新的SCN号
SELECT CURRENT_SCN FROM V$DATABASE;--查询当前的scn
3、闪回表记录:
/*****************************FLASHBACK QUERY**************************/
--恢复表中被删除的记录
DELETE FROM yag_xtyhxx WHERE yhmc LIKE 'RZ%';--操作
SELECT COUNT(*) FROM yag_xtyhxx WHERE yhmc LIKE 'RZ%';
--表名后指定as of timestamp子句查询
SELECT COUNT(*) FROM yag_xtyhxx AS OF TIMESTAMP to_date('2014-06-12 17:24','YYYY-MM-DD hh24:mi:ss') WHERE yhmc LIKE 'RZ%';
--表名后指定as of SCN 子句查询
SELECT COUNT(*) FROM yag_xtyhxx AS OF SCN 12049699 WHERE yhmc LIKE 'RZ%';

--禁用表上的触发器
SELECT * FROM DBA_TRIGGERS WHERE instr(LOWER(trigger_name),'yag_xtyhxx')>0;
--ALTER TRIGGER XXXX DISABLE;
--恢复表上的触发器
--ALTER TRIGGER XXXX ENABLE;
--插入数据
INSERT INTO YAG_XTYHXX
  SELECT COUNT(*)
    FROM YAG_XTYHXX AS OF TIMESTAMP TO_DATE('2014-06-12 17:24', 'YYYY-MM-DD hh24:mi:ss');--to_date()也可以使用 to_timestamp()
    --FROM yag_xtyhxx AS OF SCN 12049699
  WHERE YHMC LIKE 'RZ%';
4、闪回数据表:
/*****************************FLASHBACK TABLE**************************/
DELETE FROM yag_xtyhxx WHERE yhmc LIKE 'RZ%';--操作
SELECT COUNT(*) FROM yag_xtyhxx WHERE yhmc LIKE 'RZ%';
--激活行移动特征
ALTER TABLE yag_xtyhxx ENABLE ROW MOVEMENT;
--利用闪回特性,直接恢复到删除时间点前
FLASHBACK TABLE yag_xtyhxx TO TIMESTAMP to_date('2014-06-12 16:50','YYYY-MM-DD hh24:mi:ss');--时间点可以设定
5、闪回drop:
/*****************************FLASHBACK DROP**************************/
--恢复被删除的表
DROP TABLE yag_xtyhxx;
--purge TABLE yag_xtyhxx; --清空回收站里的yag表
FLASHBACK TABLE  yag_xtyhxx TO BEFORE DROP;
6、闪回数据库:
/*****************************FLASHBACK DATABASE**************************/
使用flashback database 需满足下面条件:
1>数据库已设置 flashback闪回恢复区;
  检查是否开启闪回恢复区: SQL>show parameter db_recovery_file;
2>数据库已开启归档;
  检查是否开启归档: archive log list;
3>flashback database 已开启;
  flashback database 默认是关闭的,查看flashback database开启状态:select flashback_on from v$database;
--使用SCN恢复
flashback database to SCN SCN号;
--使用timestamp恢复
flashback database to timestamp to_date('2014-06-12 16:50','YYYY-MM-DD hh24:mi:ss'); --to_date()也可以使用 to_timestamp()

Oracle 11g Flashback Data Archive(闪回数据归档)

Oracle Flashback闪回机制

Oracle Flashback database

Flashback table快速恢复误删除的数据

Oracle 备份恢复:Flashback闪回

本文永久更新链接地址:

linux

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!