Sap Sybase ASE-跟踪查询/进程

Sap Sybase ASE-跟踪查询/进程,sap,rdbms,trace,sap-ase,Sap,Rdbms,Trace,Sap Ase,如果有任何Sybase ASE专家,我想知道是否有办法让Sybase跟踪它收到的所有查询 我目前有一个程序在运行,通常在启动7小时后开始显示一些奇怪的行为。我想了解Sybase目前正在做什么,以便解决问题 我使用的是Sybase ASE 15.5。由于某种奇怪的原因,我的监控服务器将无法启动。是的,有几种方法可以跟踪Sybase接收到的所有查询 然而,根据我的理解,考虑到问题的第二部分,您需要(1)了解您的查询在做什么(2)在其他活动spid的上下文中监视活动spid,并且。。。如果这还不够,那

如果有任何Sybase ASE专家,我想知道是否有办法让Sybase跟踪它收到的所有查询

我目前有一个程序在运行,通常在启动7小时后开始显示一些奇怪的行为。我想了解Sybase目前正在做什么,以便解决问题


我使用的是Sybase ASE 15.5。由于某种奇怪的原因,我的监控服务器将无法启动。

是的,有几种方法可以跟踪Sybase接收到的所有查询

然而,根据我的理解,考虑到问题的第二部分,您需要(1)了解您的查询在做什么(2)在其他活动spid的上下文中监视活动spid,并且。。。如果这还不够,那么(3)监视服务器;不跟踪,以及所有查询。因此,我将对此进行探讨,并推迟对Sybase中可用的跟踪元素的响应

您与ASE的连接是服务器进程Id或spid

  • 打开SHOWPLAN并打开NOEXEC,以及 执行您的查询。这将给 你对什么有很好的了解 您的SQL实际上是在 封面。这是一个基本的问题 要求,每一件事 开发者应该熟悉, 并在测试前提出要求。每当您觉得查询速度慢时,请始终检查正在执行的I/O:打开统计信息IO

  • 世卫组织;sp_锁;小心你的spid 滴答滴答、挂断、等待 锁、阻塞、其他哪些插口阻碍了它等。这是 每个开发人员都需要的基本设置 应该一直使用

  • sp_系统监控(整个) 服务器。它可以通过两种方式使用: 作为一种持续的监控工具,例如 抓取一个小时的统计数据,这是 服务器配置的基础 变化;作为快照,如抓取 5分钟的服务器快照 当您的进程正在运行并且 如果不是,则检查 差异。一般来说,这是为了 有经验的DBA,而不是开发人员,您需要sa_角色

  • 这些都在手册中,包括在线和PDF

    七 小时是很长的时间,所以你 必须使用光标或类似工具, 而不是处理单行 比设置。检查在7小时标志处进行的常规夜间批处理作业(转储、更新统计、重新排序);有些人拿着桌子锁。当然,如果服务器运行在Windoze上,所有奇怪的事情,从内存泄漏到内存泄漏,都是标准费用;至少每周弹跳一次箱子


    按照处理负担的顺序,您应该密切关注事务日志和tempdb的使用情况。

    Hi PerformanceDBA,感谢您极其详细的回复!我还没有机会尝试你给我的三种战术,但我要找的正是斯普·谁和斯普·洛克。不幸的是,它没有帮助我解决我的问题。但是,它确实告诉我Sybase中的SPID处于recv睡眠状态。我的程序也在等待来自Sybase的东西,导致了僵局,因此出现了“奇怪的行为”。如果不太麻烦的话,我还有一个问题要问你:有没有办法跟踪Sybase ASE客户端?(不是DB)现在我要尝试Ribo。如果他们陷入僵局,他们正在等待一个可以很容易识别的资源;它们不会是“recv sleep”,这意味着在等待从客户端接收数据包时处于睡眠状态。此时检查等待命令列和sp_锁。核糖是一种示踪方法;注意输出量。二是审计。两者都有设置人工成本,但审计是可配置的。是的,我的进程肯定处于“recv睡眠”和“等待命令”状态。sp_lock不显示任何与我的进程相关的内容。我猜我的客户端和服务器最终会互相等待,而不是被实际的锁阻塞。如果ASE客户机上没有跟踪,那么我必须监视程序发送给客户机的内容,以及客户机发送给服务器的SQL。我将尝试一下审计,因为它听起来好像没有使用中间人的方法。我不知道它是可配置的,所以谢谢你提供的信息:)我把它作为一个完全的新手发布,现在我对在Sybase周围机动感觉好多了。谢谢你的帮助PerformanceDBA!核糖对你来说可能更容易。服务器(连接,spid)始终处于“等待”来自客户端的命令的状态,除非处于活动状态(然后您将看到状态更改;pio和cpu增加;等等)。因此,工作是挂在客户端在晚上7点(我的第二个最后一段以上)。从6点45分开始,在附近闲逛,做一些疯狂的检查。在没有Ribo所需劳动力的情况下,该端更容易检查。别忘了投票。