gpt4 book ai didi

sql-server-2008 - 无法终止 SQL 服务器作业,状态保持终止/回滚

转载 作者:行者123 更新时间:2023-12-04 07:04:42 25 4
gpt4 key购买 nike

我无法终止某些 SQL Server 代理作业。任务状态继续运行,命令保持在 KILLED/ROLLBACK。该作业通过 OLEDB 链接服务器和 Oracle 对 OSI 的 PI 系统执行查询。到目前为止,我发现杀死这些作业的唯一方法是重新启动 SQL 服务器(不是首选方法)。

最佳答案

我找到了以下文章
https://connect.microsoft.com/SQLServer/feedback/details/187192/openquery-to-linked-server-hangs-leaving-spid-with-open-tran-that-cannot-be-killed-then-templog-ldf-grows-without-limit-requires-sql-server-restart-on-production-servers

显然,有几个人通过非 SQL Server 的链接服务器使用 openquery 遇到了这个问题。我正在重新发布 BReuter 在上述文章中发布的解决方法:

BReuter 于 2007 年 1 月 30 日下午 2:21 发表
*我已经体验了确切的行为,并找到了稳定我们环境的软件组合。

我发现了三个关键成分:

1) 确保您没有任何使用 Microsoft OLEDB Provider for Oracle 的链接服务器,而是使用 Oracle Provider for Oracle(版本 9.2.0.4 是我在生产中使用的)。

2) 不允许链接服务器在“进程中”运行。这需要一些研究,但可以按照以下说明在 SQL 内存空间之外运行链接服务器。

3) 我在 W2K3 上运行 SQL 2005 SP1,但我相信 OLEDB 提供程序是关键,而不是操作系统或数据库版本。
默认安全设置太严格,无法在进程外运行 Oracle OLEDB 提供程序 (OraOLEDB)。此外,MS DTC 的默认设置不允许网络通信。

  • 控制面板-> 管理工具-> 组件服务
  • 钻取到组件服务-> 计算机

    一种。右键单击我的电脑-> 属性
  • MSDTC 选项卡 -> 安全配置按钮(下面的截图)

    一种。网络 DTC 访问 - 选中。

    湾允许入站/出站 - 选中。

    C。无需身份验证 - 这模拟了 Windows 2000 安全设置。

    d.启用 XA 事务 - OraOLEDB 提供程序实现的事务类型。
  • 钻取到组件服务-> 计算机-> 我的电脑-> DCOM 配置

    一种。右键单击 MSDAINITALIZE-> 属性
  • 安全选项卡(下面的屏幕截图)

    一种。访问权限 -> 自定义。

    湾按“访问权限”编辑按钮。

    C。授予 SQL Server 服务帐户“本地访问”权限。

    d.重复“启动和激活”。*
  • 关于sql-server-2008 - 无法终止 SQL 服务器作业,状态保持终止/回滚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10950296/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com