SQL Server Profiler中的filetable_updates表

时间:2016-10-13 06:17:26

标签: sql sql-server sql-server-2012 sqlprofiler

最近我们开始监控SQL Profiler以捕获在服务器中执行的查询。

奇怪的是,我们观察到数据库中每一分钟执行的以下查询。

SELECT table_id,
       item_guid,
       oplsn_fseqno,
       oplsn_bOffset,
       oplsn_slotid
FROM   [Databasename].[sys].[filetable_updates_2105058535] WITH (readpast)
ORDER  BY table_id 

enter image description here

当我尝试手动执行时,它会抛出错误

  

消息208,级别16,状态1,行1无效的对象名称   ' Databasename.sys.filetable_updates_2105058535'

使用 sys 架构而不是 dbo

有人可以提供有关此过程的见解。这是我担心的事情,我通过论坛搜索没有得到任何答案。有时一分钟执行两次以上

1 个答案:

答案 0 :(得分:2)

如果您的数据库有文件流/文件表,您会看到系统偶尔会运行这些查询:

            select table_id, item_guid, oplsn_fseqno, oplsn_bOffset, oplsn_slotid
            from [database].[sys].[filetable_updates_<some_id>] with (readpast) order by table_id

因此,您可能希望在上述查询中添加其他过滤以过滤掉这些过滤 (只要过滤器不会意外地过滤掉你关心的查询)。这可能是该派生表的安全补充:

            AND t.[text] NOT LIKE N'%oplsn_fseqno%'

还有一个是 必须先为服务器实例“xxxxx \ SQL2K12”启用AlwaysOn功能,然后才能在此实例上创建可用性组。 要启用AlwaysOn,请打开SQL Server配置管理器,选择“SQL Server服务”,右键单击“SQL Server实例名称”,选择“属性”,然后使用“SQL Server属性”对话框中的“AlwaysOn高可用性”选项卡。

更多信息:

1。System process queries

2。2012 AlwaysON Setup

如果您有任何疑虑,请告诉我们。