如何对Oracle进行健康检查
2008-12-05 13:02:09 来源:WEB开发网由于一些健康检查需要额外的输入参数,为了简便起见,我决定只演示那里有不需要输入参数的检查。如果你想要看看那些需要输入参数的检查,你可以执行下列SQL中,我在Oracle文件中发现的:
SELECT c.name check_name, p.name parameter_name,
p.type, p.default_value, p.description
FROM v$hm_check_param p, v$hm_check c
WHERE p.check_id = c.id and c.internal_check = 'N'
ORDER BY c.name;
我不知道我已经遭遇多少次字典问题-从字典表的错误信息到锁定问题-所以我对字典完整性检查比较兴奋。字典完整性检查将检查字典的核心对象完整性,包括:tab$, clu$, fet$, uet$, seg$, undo$, ts$, file$, obj$, ind$, icol$, col$, user$, con$, cdef$, ccol$, bootstrap$, objauth$, ugroup$, tsq$, syn$, view$, typed_view$, superobj$, seq$, lob$, coltype$, subcoltype$, ntab$, refcon$, opqtype$, dependency$, access$, viewcon$, icoldep$, dual$, sysauth$, objpriv$, defrole$, 和 ecol$。这是我很关心的一个很好很长的列表,以及检查应该看看字典的条目内容,制约因素和参照完整性。
通过手动运行字典完整性检查,我们需要分配下列DBMS_HM.RUN_CHECK PL/SQL软件包—给予该操作额外的名称。在这个例子中,我将命名我的操作为DICTIONARY_CHECK_11032008。
BEGIN
DBMS_HM.RUN_CHECK('Dictionary Integrity Check',
'DICTIONARY_CHECK_11032008');
END;
/
现在,这是它得到一些有趣的。DBMS_HM.RUN_CHECK在ADR存贮其相关信息,因此使用DBMS_HM PL/SQL软件包或ADRCI功能生成的报告。对我来说,当DBMS_HM PL/SQL软件包将以HTML , XML或文本格式输出报告时,我们已经没有多少选择。 因为ADRCI功能只以XML的形式输出报告 。然而,我们通过对比这两种方法能使我们看到ADR存在的不足以及知道ADR和DBMS_HM在什么地方功能有重叠。
更多精彩
赞助商链接