【问题标题】:Sybase ASE - Tracing queries / processesSybase ASE - 跟踪查询/进程
【发布时间】:2010-10-19 21:25:22
【问题描述】:

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

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

我使用的是 Sybase ASE 15.5。而且我的监控服务器不会启动,因为一些奇怪的原因。

【问题讨论】:

    标签: sap rdbms trace sap-ase


    【解决方案1】:

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

    但是,鉴于您问题的第二部分,据我了解,您需要 (1) 了解 your 查询在做什么 (2) 监控 your 活动spid 在其他活动 spid 的上下文中,并且……如果这还不够,则 (3) 监视服务器;不是 traceall 查询。因此,我将深入探讨并推迟响应 Sybase 中可用的跟踪元素。

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

    1. SET SHOWPLAN ON 和 SET NOEXEC ON,并且 执行您的查询。这会给 你非常了解什么 你的 SQL 实际上在做,在 封面。这是必不可少的 要求,每件事 开发者应该熟悉, 并在测试前要求。每当感觉查询速度很慢时,请始终检查正在执行的 I/O:SET STATISTICS IO ON。

    2. sp_who; sp_lock;并注意你的 spid 滴答作响,挂起,等待 锁定、阻塞、哪些其他 spid 正在阻止它,等等。这是 每个开发人员的基本设置 应该一直在使用。

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

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

    七 小时是很长的时间,所以你 必须使用光标或类似的, 并处理单行而不是 比套。检查在 7 小时后进行的常规夜间批处理作业(转储、更新统计信息、重组);其中一些持有表锁。当然,如果服务器在 Windoze 上运行,各种奇怪的事情,从内存泄漏向上,都是标准票价;至少每周反弹一次。

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

    【讨论】:

    • 您好 PerformanceDBA,感谢您提供非常详细的回复!我还没有机会尝试你给我的所有 3 种策略,但 sp_who 和 sp_lock 正是我想要的。不幸的是,它并没有帮助我解决我的问题。但是,它确实告诉我 Sybase 中的 spid 处于 recv 睡眠状态。我的程序也在等待来自 Sybase 的某些东西,从而导致僵局,从而出现“奇怪的行为”。如果不是太麻烦,我还有一个问题要问你:有没有办法跟踪 Sybase ASE 客户端? (不是 DB)现在我要试试 Ribo。
    • 如果他们陷入僵局,他们正在等待一个可以很容易识别的资源;它们不会是“recv sleep”,这意味着睡眠,等待接收来自客户端的数据包。 当时检查 AWAITING COMMAND 列和 sp_lock。 Ribo 是一种追踪方法;注意输出量。另一个是审计。两者都有设置人工成本,但审计是可配置的。
    • 是的,我的进程肯定处于“recv sleep”和“AWAITING COMMAND”状态。 sp_lock 没有显示与我的进程相关的任何内容。我猜我的客户端和服务器最终会互相等待,而不是被实际的锁阻塞。如果 ASE 客户端上没有跟踪,那么我将不得不监视我的程序发送给客户端的内容,以及我的客户端发送给服务器的 SQL。我会试一试 Auditing,因为听起来它不使用中间人方法。我不知道它是可配置的,所以感谢您提供的信息:)
    • 我作为一个新手发布了这篇文章,现在我在使用 Sybase 时感觉好多了。感谢您对 PerformanceDBA 的所有帮助!
    • Ribo 对你来说可能会更容易。服务器(连接,spid)始终处于“等待”来自客户端的命令的状态,除非处于活动状态(然后您将看到状态发生变化;pio 和 cpu 增加;等等)。所以工作在晚上 7 点挂在客户端(我上面的第二段)。从 6:45 开始,到处闲逛并进行激烈的检查。如果没有 Ribo 的人工要求,那么这个结果更容易检查。不要忘记投票。
    猜你喜欢
    • 1970-01-01
    • 2017-05-13
    • 2018-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多