分享
 
 
 

从Oracle产品中的错误的诊断说开去

王朝oracle·作者佚名  2008-05-21
窄屏简体版  字體: |||超大  

针对使用DATABASE,RAC, EM, 以及Perl Script 中的出现的各类错误谈谈自己一些具体的体会.

1. 最最重要的: 日志 (LOG)

说的玄乎一些,你可以将日志看成是一个罪犯在犯罪现场留下的蛛丝马迹.有了这些蛛丝马迹,公安人员才能开展下一步的调查取证工作...程序中出现的错误或者是Exception, 只要有日志,就能进行下一步的分析和诊断。Windows系统本身不是还有dump文件吗,微软的内核开发人员肯定是基于这些dump文件来诊断系统内核中的问题。 Oracle的各种产品也不例外,从OUI 到 Database, CRS, RAC, EM, IAS 甚至Oracle Applications, 都毫无例外的提供日志作为诊断程序bug的重要辅助工具。

大部分日志文件都是随着程序的运行而产生的,但是有些日志需要用户自行指定,或者是加上一些自定义的参数,才能被记录。例如: 我们一般使用dbca来创建/删除数据库或者更改数据库的配置,如果在运行过程中出错了, 得到的有价值的日志信息很少,这种情况我们就可以加上trace,让dbca dump 更多的trace:

runInstaller -J-DTRACING.ENABLED=true -J-DTRACING.LEVEL=2

同理, 这些JAVA BASE 的工具: NETCA, VIPCA, SRVCTL都可以相同的方式激活tracing.

由日志说开去: 养成良好的监控习惯,防患于未然

数据库实例运行时的日志alert.log 大家肯定都看过, 不过大家有没有写过一些定期运行的监控脚本来定期purge 这个文件中一些不需要的或者说是垃圾信息呢?

有些时候,由于数据库本身的bug, 或者是自己配置的问题(例如 最常见的flash recovery 区域设置的太小,而此时的归档文件已经满了而无法写入目的区域;或者说是rman的备份策略有问题,没有定期删除过期的日志文件),都会导致这个文件急剧膨胀. 我曾见到过一个4G 大小的alert.log, 里面估计有上百万行,但是大部分行的信息其实都是没太大意义,无非是告诉你赶快清理不需要的文件,腾出点地方 让arc 进程继续工作 ... 因此,非常有必要写一个脚本来监控数据库实例的trace 文件,定期清理不需要的文件,备份重要的文件.(用Shell 或者Perl,JAVA, C++ 都能实现)

还有,如果启用了OS或者DB级别的审计功能,也会产生大量的,细小的audit文件,这些文件也需要进行定期的监控.

第三, 我们为了诊断某个ORA 错误或者是想发现 某个复杂sql的执行计划, 成本代价,就来激活相应的event trace , 可是有时都是开了不关, 这样也会产生大量的trace 文件.

2. 文档是利器,搜索引擎是佐料

不光是Oracle, 我相信大多数正规的软件厂商都会将文档看的很重要。用中国人的观点来看,文档就如同一件衣服的面料,好的文档就好比上等的面料,让人爱不释手.但是考虑到资源的问题,很多软件厂商的文档都没有本地化的文档。微软的MSDN就是一个典型的例子: 前两年开始微软开始重视这个问题,投入大量的资金和人力来实施本地化的翻译,因此我感觉现在微软的MSDN中文网站相比VB6,VC6时代已经很不错了。

Oracle的技术网OTN在这方面要差一点,但是也比以前提高了不少。官方文档的本地化方面则欠缺很多,这和公司的市场定位有密不可分的关系。谁让中国市场的份额少,再加上很多中小公司用的都是D版 ...

说了一段题外话,让我们来评估一下Oracle 官方文档的质量。我感觉所有的Oracle 官方文档中质量最高的应该是OCP的几十本自学材料(Student Guide), 只要静下心来细细地读读英文文档,绝对比看中文版的强。接下来就是 "Concept", 我曾经记得Tom曾经推荐过自学Oracle的过程中重点需要阅读的文档之一就是它,因为只有你对基本的构架清楚了,实验/自学/开发/安装... 才能继续往下进行. 我推荐的三个手头必备的文档是:

"Error Message"

"SQL Reference"

" Admin Guide".

第一个和第三个主要是针对DBA的,第二个则是任何用户都需要的。大部分文档中都有附录,例如RAC 的管理文档的附录就详细列出了怎样使用srvctl, 而这个工具几乎是所有使用 10G RAC的人都需要掌握的。

不可否认,有些文档的质量差一点, 我个人感觉上面推荐的"SQL Reference" 其实质量很一般,只不过经常需要使用, 要求就不用那么严格了。

再说网络,搜索引擎已经成为大多数人每天都要使用的的工具了,在你面对一些错误许久没有良策时, 用用网络,往往会事半功倍。我个人主要用Google和Baidu. 感觉百度对于常见的oracle 错误整理的非常好, 而Google中搜索出的信息往往更有价值,往往是一击中地...

2

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有