Oracle备份恢复之闪回技术,熬夜爆肝总结,强烈建议收藏

##执行数据删除操作:

delete from scott.fb_1;

commit;

##闪回表到数据删除之前

开启被闪回表的行迁移:

14:42:45 SYS@PROD> alter table scott.fb_1 enable row movement;

闪回查询确认数据:

select * from scott.fb_1 as of scn 1071438;

执行闪回,可以执行多次闪回操作:

flashback table scott.fb_1 to scn 1071438;

或者

flashback table scott.fb_1

to timestamp to_timestamp(‘2021-09-11 10:17:27’,‘yyyy-mm-dd hh24:mi:ss’);

验证数据:

SYS@PROD> select * from scott.fb_1;

ID


10

##关闭行迁移

SYS@PROD> alter table scott.fb_1 disable row movement;

3.闪回数据库


##设置闪回区

conn / as sysdba

show parameter recover

alter system set db_recovery_file_dest_size=4G;

alter system set db_recovery_file_dest=‘/u01/app/oracle/fast_recovery_area’;

##开启归档模式

查看归档模式

archive log list;

开归档

conn / as sysdba

shutdown immediate

startup mount

alter database archivelog;

alter database open;

##开启闪回及闪回日志保留数据的时间

目的:生成闪回日志

conn / as sysdba

验证是否开启了闪回

select flashback_on from v$database;

开启闪回

alter database flashback on;

如果为yes表示开启

闪回日志保留两天的数据,默认是一天(1440)

alter system set db_flashback_retention_target=2880;

SYS@PROD> show parameter retention_target

##模拟业务及误操作

连接scott用户:

conn scott/tiger

创建业务表:

create table fbdb_scn as select * from emp;

select count(*) from fbdb_scn;

COUNT(*)


14

反馈回14条记录

查询当前的SCN或时间:

conn / as sysdba

SCN:select current_scn from v$database;

CURRENT_SCN


1065436

时间:select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss’) from dual;

TO_CHAR(SYSDATE,'YY


2021-09-11 07:16:45

删除fbdb_scn的信息:

delete from scott.fbdb_scn;

commit;

SYS@PROD> drop user scott cascade;

闪回数据库到业务表有14条记录的状态:

关闭数据库:

shutdown immediate

启动到Mount状态:

startup mount

闪回数据库:

SYS@PROD> flashback database to SCN 1065436;

或者

flashback database

to timestamp to_timestamp(‘2021-09-11 07:16:45’,‘yyyy-mm-dd hh24:mi:ss’);

以只读方式打开数据库,可以先验证是否是我们想要闪回的状态:

alter database open read only;

conn scott/tiger

select count(*) from fbdb_scn;

如果反馈是14条记录那么说明闪回成功,

如果不是14条记录,那么我们可以继续重复前两个步骤进行闪回,

直到是我们想要的状态。

重新关闭数据库:

conn / as sysdba

shutdown immediate

startup mount

alter database open resetlogs;

注:为不可逆操作

SYS@PROD> select GROUP#,SEQUENCE#,MEMBERS,STATUS from v$log;

GROUP# SEQUENCE# MEMBERS STATUS


1 1 1 CURRENT
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

面试题总结

其它面试题(springboot、mybatis、并发、java中高级面试总结等)

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!
pringboot、mybatis、并发、java中高级面试总结等)**

[外链图片转存中…(img-T396MOan-1712054654702)]

[外链图片转存中…(img-4rsitsgW-1712054654702)]

[外链图片转存中…(img-k5m3S37W-1712054654703)]

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值