移动工作负载组

适用于:SQL ServerAzure SQL 托管实例

可以使用 SQL Server Management Studio 或 Transact-SQL 将资源调控器工作负荷组移到其他资源池。

如果存在挂起的资源调控器配置操作,则无法移动工作负载组。

局限性

  • 如果存在挂起的资源调控器配置操作,则无法移动工作负载组。 可以通过查询 sys.dm_resource_governor_configuration 动态管理视图来获取 is_configuration_pending 列的当前值,以确定是否存在挂起的配置。
  • 如果工作负载组中包含活动会话,当执行 ALTER RESOURCE GOVERNOR RECONFIGURE 语句来应用更改时,将它移动到其他资源池会失败。 若要避免此问题,可以执行以下操作之一:
    • 等待受影响组中的所有会话断开连接,然后执行 ALTER RESOURCE GOVERNOR RECONFIGURE 语句。
    • 使用 KILL T-SQL 命令显式停止受影响组中的会话,然后执行 ALTER RESOURCE GOVERNOR RECONFIGURE 语句。 如果确定不想显式停止会话,请将组移动到原始资源池。
    • 重启服务器。 服务器重启时,移动组使用新的资源池分配。

权限

移动工作负载组需要 CONTROL SERVER 权限。

使用 SQL Server Management Studio 移动工作负荷组

若要使用 SQL Server Management Studio移动工作负荷组,请执行以下操作:

  1. 在对象资源管理器中,将 管理 节点向下扩展到 资源调控器
  2. 打开 资源调控器 上下文菜单,然后选择 属性。 这将打开 “资源管理器属性” 页面。
  3. 资源池 网格中,选择包含要移动的工作负荷组的资源池。 工作负荷组 网格现在列出了该资源池中的工作负荷组。
  4. 工作负荷组 网格中,打开要移动的工作负荷组的上下文菜单,然后选择 移动到。 这会打开“移动工作负载组”窗口
  5. 在窗口中显示可用的资源池。 选择要将工作负载组移动到的资源池,然后选择“确定”
  6. 选择 “OK” 以执行 ALTER RESOURCE GOVERNOR RECONFIGURE 语句。
  7. 如果创建或重新配置资源池或工作负荷组的操作失败,错误消息摘要将显示在属性页标题下方。 若要查看详细的错误消息,请选择错误消息上的向下箭头。

使用 Transact-SQL 移动工作负载组

使用 Transact-SQL 移动工作负荷组:

  1. 执行 ALTER WORKLOAD GROUP 语句,该语句指定要移动的工作负荷组的名称及其应移动到的资源池。
  2. 执行 ALTER RESOURCE GOVERNOR RECONFIGURE 语句。

以下示例将名为 groupAdhoc 的工作负荷组移动到 default 资源池。

ALTER WORKLOAD GROUP groupAdhoc USING [default];

ALTER RESOURCE GOVERNOR RECONFIGURE;