ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 从<<提问的智慧>>引发出对数据库的一套解决方案

从<<提问的智慧>>引发出对数据库的一套解决方案

原创 Linux操作系统 作者:anycall2010 时间:2008-07-24 13:42:06 0 删除 编辑

rollingpig 的<<提问的智慧>>已经在论坛发布2年多了,我觉得他的这个文章就是解决数据库的一套完整方法论.

1.遇到问题初期:

  当遇到问题的时候,如果有报错代码,我首先到metalink:  http://metalink.oracle.com ,查找报错的原因.metalink的内容其实写得很详细.

  当遇到有些参数不太理解或者想不起来的时候,我首先会到 online document: http://tahiti.oracle.com 的refenerce里面查找该参数的含义,(我个人认为在安装配置的时候,这个用的多一些).

  有些时候,当遇到语言障碍或者是METALINK解释和实际情况不符的时候,我会一下.

备注:在alert log里发现了报错信息或者在运行时发现了报错信息,那么,最  简单的做法就是将错误信息或者错误号先在google/metalink/论坛里搜索 一下。
  这里特别提一下Ora-7445/ora-600的错误,是不能单用错误号来搜索的,必须加上后面的相应信息才能找到合适的答案。
  ORA-600时,加上后面的argument,Ora-7445时,还需要打开相应的TRACE文件,并截取其中有意义的部分进行搜索。

2.如果判断是Instance 方面的问题,首先查看alerlog.

 alert log的位置,多数情况下是$ORACLE_BASE/admin/$ORACLE_SID/bdump底下,当然,确切的说应该是在 db parameter background_dump_dest定义的目录底下。如果没有定义background_dump_dest,或者$ORACLE_HOME/rdbms/log底下。

3.网络的问题:查看 listener.ora ,sqlnet.ora ,并运行lsnrctl status.然后查看client 端的的 tnsnames.ora , sqlnet.ora ,并运行tnsping .

4.DB总体性能问题: 在peak time 做 statspack,并查看statspack report。同时检查CPU/MEM配置,以及使用命令查看CPU IDLE/free menory 的情况 .

备注:1.关于statspack的如何使用,请参考eygle系列文章    (http://www.eygle.com/statspack/statspack_list.htm )

2.如何获得CPU Usage或者Free Mem的信息. unix 下通常可以通过vmstat来获得,以及根据不同的操作系统而定.

5.SQL性能问题,列出当前SQL,以及执行计划。同时应提供表结构,index情况,Table的record数。CBO/RBO,table是否analyze等信息。

备注: 执行计划的获取: 通过 EXPLAIN PLAN FOR ,并运行@?/rdbms/admin/utlxpls.sql来获取 。
 或者通过在sqlplus 里运行set autotrace 的方式来获得……;也可以通过第三方软件获得.








 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8334342/viewspace-408800/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 周末面试经历
请登录后发表评论 登录
全部评论

注册时间:2008-06-24

  • 博文量
    182
  • 访问量
    610300