起因:

在oracle测试过程中,不小心执行了delete user$ 命令,导致oracle当前实例所有的用户信息丢失,包括sys用户。

第一次使用DUL工具数据恢复:失败

下载ParnassusData_PRMForOracle 工具,使用方法参考http://jingyan.baidu.com/article/624e7459ad30ed34e8ba5a2a.html,有交互界面,需要安装java环境,选择oralce系统目录下的system01.dbf等文件和业务dbf文件,加载分析,该工具就能把该实例下所有用户的表读取出来。如果用户信息不是误删的情况下,这种恢复方式是比较方便的,但我的情况是所有用户都没了,所有表信息也无法读取。

第二次使用AUL工具数据恢复:失败

下载aul工具,使用方法参考http://blog.csdn.net/daxiang12092205/article/details/17994665,没有交互界面,根据用户使用说明要求加载文件分析后,会生成aulusr.txt, aulobj.txt,aultab.txt, aulcol.txt;

aulusr.txt:存的内容是所有的用户名信息

aulobj.txt:存的内容是所有表名信息 其中第2列意思是指 该表对应的用户id,跟aulusr.txt中的用户id对应。

aulcol.txt:  存的内容是所有表的表结构信息。

由于所有用户已经删除, aulusr.txt中的信息是空的,但是aulobj.txt中的表信息都是全的,我通过已知的某个表名名称,在aulobj.txt中进行查找,找到了对应的用户ID,然后根据这个用户ID在aulusr.txt中构建一条记录用户信息记录,然后执行还原表数据命令,数据还原出来了,但我需要的表的表字段存在NVARCHAR和CLOB字段,NVARCHAR字段会乱码,而CLOB字段压根就还原不出来。

第三次使用ODU工具数据恢复:成功

下载ODU工具,使用方法参考http://files.cnblogs.com/files/hewenhaotc/ODUUserGuide_cn.pdf,也可以查看http://www.oracleodu.com/cn/上的技术支持,没有交互界面,根据用户使用说明要求加载文件分析后,也会生成lob.odu、obj.odu、tab.odu、user.odu;文件代表的信息跟AUL工具类似,根据用户说明进行还原数据后,乱码问题解决了,CLOB的字段也导出来,但问题来了,COLB字段包含回车,导出的数据进行命令导入到数据库是,无法正常导入,使用sqlldr命令导入时,会把回车当做一条记录的结束。

查了资料后,发现该工具底下的config.txt文件中的“lob_storage”是可以控制CLOB字段作为单独的文本输出,字段说明参考:http://blog.163.com/scott_guo/blog/static/181026083201211105107102/。修改了配置,还原数据,再导入到数据库,成功,无乱码问题,无丢失字段问题!

以上三种工具的方法比较参考文章ORACLE恢复神器之ODU/AUL/DUL:http://www.cnblogs.com/oracle-dba/p/3873870.html

oracle 执行 delete user$ 误删所有用户信息后的数据恢复流程的更多相关文章

  1. .NET 实现自定义ContextUser的Identity和Principal实现自定义用户信息,权限验证。

    备用收藏,http://blog.csdn.net/msdnxgh/article/details/6894885 .NET 实现自定义ContextUser的Identity和Principal 在 ...

  2. SoringCloud(四) - 微信获取用户信息

    1.项目介绍 2.微信公众平台 和 微信开放文档 2.1 微信公众平台 2.1.1 网址链接 https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?ac ...

  3. Oracle安装前用户信息设置

    如果是重复安装,首先需要清除已经存在的软件安装记录: rm -fr /usr/local/bin/*oraenv rm -fr /usr/local/bin/dbhome rm -fr /usr/tm ...

  4. 查询oracle中所有用户信息 禁用用户

    ----查询oracle中所有用户信息 ----1.查询数据库中的表空间名称 ----1)查询所有表空间 select tablespace_name from dba_tablespaces; se ...

  5. ORACLE查询当前连接的用户信息及操作的SQL语句

    ORACLE--查询当前连接的用户信息及操作的SQL语句    select sid,      status,      v$session.username 用户名,      last_call ...

  6. Oracle执行计划 explain plan

    Rowid的概念:rowid是一个伪列,既然是伪列,那么这个列就不是用户定义,而是系统自己给加上的. 对每个表都有一个rowid的伪列,但是表中并不物理存储ROWID列的值.不过你可以像使用其它列那样 ...

  7. 转:Oracle 执行计划(Explain Plan) 说明

    Oracle 执行计划(Explain Plan) 说明 原贴地址:http://blog.csdn.net/tianlesoftware/article/details/5827245   如果要分 ...

  8. Oracle 执行报错表空间或临时表空间不足,降低水位线方法

    Oracle 执行语句插入临时表报表空间不足,在增加表空间到最大后依然报错,经分析应该为创建的临时表水位线未清除导致,查询降低水位线方法如下: 原文地址:http://blog.itpub.net/2 ...

  9. 使用Oracle执行计划分析SQL性能

    执行计划:一条查询语句在ORACLE中的执行过程或访问路径的描述.即就是对一个查询任务,做出一份怎样去完成任务的详细方案. 如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的 ...

随机推荐

  1. Python实例1

    1.有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 错解: 正解: 源码: #!/usr/bin/python for i in range(1,5): for j in ...

  2. css技术

    CSS是英语Cascading Style Sheets(层叠样式表单)的缩写,它是一种用来表现HTML或 XML 等文件式样的计算机语言. CSS 目前最新版本为CSS2,能够真正做到网页表现与内容 ...

  3. linux之基础命令大全

    作为测试人员对linux系统命令必须非常熟悉,尤其对于高级测试工程师,从事性能方面测试,就更需要对linux命令了如指掌,这里只对部分常用命令做解释,想深入学习请关注后续文章 ctrl z  终止当前 ...

  4. flume 不报错但是不能正常使用

    flume-ng agent --conf ./conf/ --conf-file ./conf/test1.conf --name a1 -Dflume.root.logger=INFO,conso ...

  5. Myeclipse添加外部Tomcat出现启动故障的问题解决

    故障: 1.java.lang.IllegalStateException: No output folder 分析:work文件夹无写权限 解决:找到tomcat的安装文件夹,右键点击work文件夹 ...

  6. 10天学会phpWeChat——第二天:hello world!我的第一个功能模块

    今天我们开始进入<10天学会phpWeChat>系列教程的第二天:创建我的第一个hello world! 功能模块. 1.登录后台,进入 系统设置--自定义模块,如图: 自定义模块参数说明 ...

  7. VR定制 AR定制 就找北京动软VR开发团队(VR案例 AR案例)

    我们长期承接丰交互软件.游戏项目外包: VR/AR内容应用定制.VR.AR游戏项目外包(有主流测试硬件设备) VR全景应用.视频外包 请提供贵公司的信息,我们将提供高大上的VR案例欢迎联系我们给您提供 ...

  8. NFinal中增加生成页面自动带入js和css

    增加在WebCompiler.aspx页面中的application.CreateCompile(true);方法里. //写aspx页面的自动提示层 #region 插入js&css com ...

  9. RAID磁盘阵列笔记

    磁盘阵列RAID是服务器维护的必备知识,以前不太关心服务器维护方面的知识.目前要负责维护机房里的几台服务器,所以要关注这方面的内容. 磁盘阵列是用多块独立磁盘组成,提供两个方面的作用:数据安全冗余 和 ...

  10. linux下对进程按照内存使用情况进行排序

    linux下对进程按照内存使用情况进行排序的命令为:ps aux --sort -rss 详细解说参见 http://alvinalexander.com/linux/unix-linux-proce ...