谁有解决字典表误Truncate故障的成功恢复案例?
谁有解决字典表误Truncate故障的成功恢复案例?
之前,成功帮助客户恢复了一个故障数据库。故障的原因是技术人员将数据库中的几个数据字典表Truncate掉,这直接导致了数据库不可用。 数据库环境为Oracle 9。2。0。7 RAC环境。由于数据库的事务量巨大,所以数据库没有备份。 现场检查确认,主要被截断的表有这样一些:SQL> select object_name,object_type from dba_objects where object_name like 'IDL%'; OBJECT_NAME OBJECT_TYPE------------------------------ ------------------IDL_CHAR$ TABLEIDL_SB4$ TABLEIDL_UB1$ TABLEIDL_UB2$ TABLE 关于IDL_UB1$表,我以前讨论过,这是非常重要的字典表,一旦出现故障,数据库会出现大量的ORA-00600错误,所有事务不能进行: ORA-00600: internal error code, arguments: [17069], [0xC0000000DDDFA690], [], [], [], [], [], [] ORA-600 17069错误是最头疼的,客户当时数据库的一个跟踪日志已经暴涨到5G左右。
IDL系列字典表是记录数据库对象编译信息的,丢失了其中的数据,所有过程、Package等都将无法执行。 摘引一点关于这几个字典表作用的说明:IDL_UB1$ is one of four tables that hold compiled PL/SQL code:IDL_UB1$IDL_CHAR$IDL_UB2$IDL_SB4$"PL/SQL is based on the programming language Ada。
As a result, PL/SQL uses avariant of Descriptive Intermediate Attributed Notation for Ada (DIANA), whichis a tree-structured intermediate language。
It is defined using a meta-notationcalled Interface Definition Language (IDL)。 DIANA provides for communicationinternal to compilers and other tools。
"At compile time, PL/SQL source code is translated into machine-readablem-code。Both the DIANA and m-code for a procedure or package are stored in thedatabase。
At run time, they are loaded into the shared (memory) pool。 The DIANA isused to compile dependent procedures; the m-code is simply executed。
"These four tables hold the DIANA and the so-code m-code。 I think "m-code" isshort for machine-dependent byte code but there is a sizable machine-indenpendent part as well。
If you have a look at sql。bsq, you can seethat Oracle documents the "type" column of these tables as follows:part number not null,/* part: 0 = diana, 1 = portable pcode, 2 = machine-dependentpcode */ 更严重的情况可能会导致大量系统DBMS包失效,其重新编译将更加复杂。
恢复进行了6个小时,成功帮助用户恢复了数据库,消除了所有ORA-600错误。 恢复最主要的是通过运行相关的脚本,重建和重新编译所有Procedure/Trigger/Package等对象,重新生成这些对象的DIANA和so-code m-code,这些主要的脚本包括catlog。
sql,catproc。sql等。 当然最重要的是,一些ORA-00600错误需要解决,这可能会花费大量的时间。 这一案例的恢复过程并不重要,重要的是DBA应该学会永远不要让我们的数据库置于这样的危险境地。 完成 丢弃。
答:手表上发条故障部位大约分三种情况:发条中段折断条外钩处折断,内圈处折断可采用“断条复接”的修理方法。发条折断在内钩处后,可用镊指钳将发条内圈钳勒展开。手表发条接...详情>>
问:深度技术 Windows 7 快速安装版 V2015(64位) 下载好在电脑 如...
答:硬盘安装(适合无光驱或者不想浪费光盘的用户,但是需要你有一个可以使用的Windows系统) 请提取ISO中的“WINXPSP3.GHO”和“GHO镜像安装器.E...详情>>
答:电子政务内网安全保密内容与特征根据电子政务内网安全性产品推荐要求,涉及网络安全的产品主要有防火墙、入侵检测系统、安全审计系统、漏洞扫描系统、安全隔离与信息交换系...详情>>