在 Analysis Services 服务器上断开用户和会话连接

Analysis Services 的管理员可能希望终止用户活动,以便进行工作负荷管理。 可以通过取消会话和连接来实现这一点。 会话可以在查询运行时自动形成(隐式),或者由管理员在创建时命名(显式)。 连接是打开的管道,可以通过这些连接运行查询。 会话和连接都可以在它们处于活动状态时结束。 例如,如果处理时间过长,或者对正在执行的命令是否正确存在疑问,管理员可能希望结束该会话的处理。

结束会话和连接

若要管理会话和连接,可以使用动态管理视图(DMV)和 XMLA:

  1. 在 SQL Server Management Studio 中,连接到 Analysis Services 实例。

  2. 将以下任一 DMV 查询粘贴到 MDX 查询窗口中,以获取当前正在执行的所有会话、连接和命令的列表:

    Select * from $System.Discover_Sessions

    Select * from $System.Discover_Connections

    Select * from $System.Discover_Commands

  3. 按 F5 执行查询。

    DMV 查询在表格结果集中返回会话和连接信息,该信息更易于读取和复制。

使查询窗口保持打开状态。 在下一步中,需要返回到此页面以复制要断开连接的会话的 SPID。

若要结束会话,请打开第二个 XMLA 查询窗口。

  1. 将以下语法粘贴到 MDX 查询窗口中,将 ConnectionID、SessionID 或 SPID 占位符替换为从上一步复制的有效值。

    <Cancel xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">  
    
       <ConnectionID>111</ConnectionID>  
       <SessionID>222</SessionID>  
       <SPID>333</SPID>  
    
    <CancelAssociated>1</CancelAssociated>  
    </Cancel>  
    
    
  2. 按 F5 执行 cancel 命令。

结束连接会取消所有会话和 SPID,关闭主机会话。

结束会话会停止作为该会话的一部分运行的所有命令(SPID)。

结束 SPID 会取消特定的赞扬。

在极少数情况下,如果 Analysis Services 无法跟踪与连接关联的所有会话和 SPID(例如,在 HTTP 方案中打开多个会话时),Analysis Services 将不会关闭连接。

有关本主题中引用的 XMLA 的详细信息,请参阅 Execute 方法 (XMLA)Cancel 元素 (XMLA)。

另请参阅

管理连接和会话 (XMLA)
BeginSession 元素(XMLA)
EndSession 元素 (XMLA)
Session 元素 (XMLA)