ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle性能诊断一例

Oracle性能诊断一例

原创 Linux操作系统 作者:husthxd 时间:2008-10-28 09:56:48 0 删除 编辑

§1.1    问题和现象

2008年10月25日,信息部相关人员在后台进行批量的栏目增,删,改并发操作时,出现凡是涉及到权限的操作都变得很慢。

§1.2    诊断过程和解决方案

通过驻现场开发人员了解到,2008年10月25日出现问题后,前台或后台与权限表T相关的查询操作都很慢,而且在后台管理系统中执行删除栏目信息操作时发现应用一直在等待,没有任何响应。据此,首先建立与T表结构一样的表T_X,SQL语句中用T_X代替T后,发现相关的SQL变正常。同时,在执行栏目删除操作时,查询数据库的锁定信息:

SELECT t2.object_name,t3.*

FROM v$locked_object t1,dba_objects t2,v$session t3

WHERE t1.OBJECT_ID = t2.OBJECT_ID

AND t1.session_id = t3.sid;

可以看到权限表T被其他应用进程锁定,资源一直释放,导致删除操作一直在等待。

由此可推断,是因为表T被锁定的原因影响查询、删除等操作,这种情况,一般可通过重启数据库的方式释放资源,但为保证应用系统7X24的运行,生产数据库不能重启。同时发现数据库是RAC架构,后台管理系统连接到其中的一个数据库实例5.3上,由于锁定与实例相关与数据库无关,尝试把数据库连接转换到另外一个实例5.4上,执行测试栏目数据的删除操作,可以很快的完成,相关的查询亦很正常,顺利解决资源的锁定问题。


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

下一篇: 影片-wanted
请登录后发表评论 登录
全部评论
ITPUB数据库版块资深版主,对Oracle、PostgreSQL有深入研究。

注册时间:2007-12-28

  • 博文量
    1602
  • 访问量
    4380120