有没有办法限制Microsoft OSQL执行的查询,以便它在后台以较低的优先级运行,同时最低限度地影响服务器的性能?
我正在运行一个单个大型过滤的SELECT
语句(不是多个GO的多个语句),这些语句将提取大量行并使其在OSQL中正常运行,并且已经很好了一个预定的过程来启动它。该过程有时会与其他进程(被触发的用户和自动进程)冲突,并为I / O (主要是我无法立即解决的磁盘)进行争夺这会减慢两个进程并触发其他进程的超时。
我希望它在其他数据库函数的最低优先级下运行,而不会中止或终止进程。
我知道有-t
OSQL参数我相信如果你没有设置它,它将不会因超时而终止。除了-a
数据包大小参数之外,它还讨论了性能,但不确定它在限制和接缝方面的效果,甚至可能产生相反的效果。
我们在系统上运行应用程序白名单,很难获得任何可能实现此目的的其他工具,因此我尝试专注于Microsoft提供的工具。
问题:
是否有内置 Microsoft SQL Server 2008,Windows 2008或部分支持的Microsoft套件(包括MSDN)或更高版本的SQL Server标准安装功能和SSRS将促进 SQLCMD 命令的某种限制,或者它可能执行的存储过程?或者,如果OSQL中有一个函数执行此操作,请提供示例和说明。