使用 ADODB 的 SQL Server 和 DMO

发布于 2025-01-06 16:47:47 字数 262 浏览 0 评论 0原文

我正在维护一个旧服务器应用程序,该应用程序从 SQL Server 视图生成 DMO 文件。

有时服务器崩溃是因为SQL Server耗尽了所有CPU资源。

使用 SQL Server 监视器,我发现问题出在 SQLDMO 连接中,该连接消耗了所有 cpu 时间并阻塞了服务器。

我不明白其中的原因,因为 dmo 连接处于 TRANSACTION LEVEL READ UNCOMMITTED 并且这些 SQL 在数周内永远不会完成。唯一的解决办法是关闭服务器。

I'm maintaining a legacy server app that generate DMO files from SQL Server views.

Sometimes the server crashes because SQL Server consumes all cpu resources.

Using the SQL Server monitor I see that the problem is in SQLDMO connections that are consuming all cpu time and blocking the server.

I don't understand the reason of that because the dmo connection is with TRANSACTION LEVEL READ UNCOMMITTED and these SQLs never finish, during weeks. The only solution is to shutdown the server.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

顾北清歌寒 2025-01-13 16:47:47

我建议查看代码为什么这些连接没有关闭。我猜最后没有适当的结束或类似的东西。

如果这不是一个选择,您可以考虑运行一个计划作业,如果这些特定作业的运行时间超过 24 小时,则该作业会经常终止。

I would suggest looking into the code why these connections are not closed. I'm guessing there's no proper closing at the end or something along those lines.

If that is not an option, you could consider running a scheduled job that kills off these specific jobs every so often if they ran for longer than say, 24 hours.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文