暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Oracle误删除存储过程快速恢复技巧

原创 IT邦德 2021-11-17
1951
作者:IT邦德

中国DBA联盟(ACDU)成员,目前从事DBA及程序编程(Web\java\Python)工作,主要服务于生产制造
现拥有 Oracle 11g  OCP/OCM、Mysql、Oceanbase(OBCA)认证
分布式TBase\TDSQL数据库、国产达梦数据库以及红帽子认证
从业8年DBA工作,在数据库领域有丰富的经验
B站主播Oracle、Mysql、PG实战课程,请搜索:jeames007

微信:jem_db
QQ交流群:168797397
更多内容请关注B站(搜索jeames007)

前言
如果生产上误删除存储过程,在没有备份的情况下,请使用以下方法恢复

1.找回ID

SELECT obj#
FROM obj$ AS OF TIMESTAMP TO_TIMESTAMP('2020-07-24 14:30:00', 'YYYY-MM-DD HH24:MI:SS')
WHERE NAME = 'PKG_JEAMES';

注:1.请登录服务器,以sys用户执行
    2.PKG_JEAMES为存储过程,或者包

2.通过ID反查

SELECT source
FROM source$ AS OF TIMESTAMP TO_TIMESTAMP('2020-07-24 14:30:00', 'YYYY-MM-DD HH24:MI:SS')
where obj# = 138324;

3.输出脚本命令
vi flashbak.sql

set echo off;
set feedback off;
set verify off;
set term off;
set trimspool on;
set linesize 3000;
set newpage none;
set heading off;
spool /oracle/scr/wpp.sql;   --输出到指定的文件中
@/home/oracle/scr/test.sql;   --执行SQL脚本(此脚本包括sql语句查询)

4.执行脚本恢复

SQL> @/home/oracle/scr/flashbak.sql

总结:

通过以上命令即可立刻恢复误删除的存储过程

本次分享到此结束啦~

如果觉得文章对你有帮助,点赞、收藏、关注、评论
你的支持就是我创作最大的动力。

❤️ 技术交流可以 关注公众号:IT邦德 ❤️

微信:jem_db
QQ交流群:168797397
更多内容请关注B站看直播(搜索jeames007)

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论