最近我们开始监控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
当我尝试手动执行时,它会抛出错误
消息208,级别16,状态1,行1无效的对象名称 ' Databasename.sys.filetable_updates_2105058535'
使用 sys
架构而不是 dbo
有人可以提供有关此过程的见解。这是我担心的事情,我通过论坛搜索没有得到任何答案。有时一分钟执行两次以上
答案 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高可用性”选项卡。
更多信息:
如果您有任何疑虑,请告诉我们。