首页 > 数据库 > Oracle > 正文
oracle的PACKAGE恢复过程-闪回
2017-07-12 16:44:56       个评论    来源:黑色幽默  
收藏    我要投稿

oracle 的PACKAGE恢复过程

今天在修改package的时候,无意中用旧版本覆盖了新版本,导致了package编译错误,想到用flashback来恢复,

以前用flashback恢复表,还没用恢复过package,今天有机会了,可还没等我开始恢复,同事就已经修正了,非常

快。下面记录下大概的过程

需要sysdba,时间需是最近的时间

首先查询对象的obj#号是多少

SELECT obj#

FROM obj$ AS OF TIMESTAMP TO_TIMESTAMP('2011-09-08 15:25:00', 'YYYY-MM-DD HH24:MI:SS')

WHERE NAME = 'TEST_PACKAGE';

SQL> SELECT obj#

2 FROM obj$ AS OF TIMESTAMP TO_TIMESTAMP('2011-09-08 15:25:00', 'YYYY-MM-DD HH24:MI:SS')

3 WHERE NAME = 'DATA_SYNC';

OBJ#

----------

76389

76390

有两个值,一个是包头,一个是包体;然后再用如下的sql查询有正确值时间点的数据

SELECT source

FROM source$ AS OF TIMESTAMP TO_TIMESTAMP('2011-09-08 15:25:00', 'YYYY-MM-DD HH24:MI:SS')

where obj# = 76390;

SELECT source

FROM source$ AS OF TIMESTAMP TO_TIMESTAMP('2011-09-08 15:25:00', 'YYYY-MM-DD HH24:MI:SS')

where obj# = 76389;

通过如上两个sql结果内容就可以恢复了

点击复制链接 与好友分享!回本站首页
上一篇:Oracle中的三种循环(For、While、Loop)
下一篇:Oracle调试经验-查看当前数据库的实例名
相关文章
图文推荐
文章
推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做实用的IT技术学习网站