数据库常问的两个问题看看专家们怎么答

文章作者 100test 发表时间 2008:01:28 09:27:09
来源 100Test.Com百考试题网


  这两天找了几个人作面试,基本都问到了两个问题:

  1。 如果用户告诉你,程序突然慢了,该如何着手……

  2。 如果用户告诉你,程序突然无法连到database,该如何着手……

  大家讨论一下?

  Q: 如果用户告诉你,程序突然慢了,该如何着手……

  A: 1 > 向问题提出者提出以下问题:

  1 是否经做过数据库对象的分析 dba_tables(last_analyze)

  2 是否经历过批量dml操作 (影响执行计划)

  3 是否经历过数据库版本升级 (新的bug?)

  4 用操作系统命令查看磁盘I/O是否异常,当然还有网络是否被其他资源占用 (硬件故障)

  5 是不是有新的应用上线

  6 有没有抱错信息 (如果有抱错信息可以缩小故障范围)

  2> 下面开始问题诊断 诊断的接口就是v$session_wait

  第一个问题:

  1、查看客户端进程,确认是否客户端本身有病毒或程序有问题

  2、查看服务器进程/线程运行情况

  3、如果服务器不正常,找到相应进程/线程,kill

  Q 2。 如果用户告诉你,程序突然无法连到database,该如何着手……

  A:

  1 有报错信息最好 没有查看alert_xxx.log 和相关.trc

  2 数据库有关连接的配置 show parameter process ,show parameter session

  操作系统层看看: ps -ef|grep LOCAL |wc -l

  ps -ef|grep ora |wc -l

  3 v$session_wait

  4 开始怀疑应用中没有做conn.close() 可以根据v$open_cusro(sid)做group by 找到有问题的session

  5 有可能是应用没有commit 或者bitmap索引造成enqueue阻塞数据库对象访问 又没有ora--00060报错等等

  6 是不是app server的Connect pool调整了min Capability参数 使得Oracle不支持这么多长连接


相关文章


无线入侵检测系统的应用及其优缺点
入侵中快速获得Web根目录的技巧
有防火墙的网站整个入侵过程
解读IDS入侵检测系统术语
数据库常问的两个问题看看专家们怎么答
SQLServer分布式分区视图分解数据表
构造SQLServer安全门
数据库中如何分类、分组并总计SQL数据
ORACLE数据库的统计数据及其生成方式
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛