我们一直在SQL服务器上使用22000(MB)的最大服务器内存来通过SQL代理作业运行SSIS包。最近我们将内存增加到28000(MB),这导致程序包停止。 SQL作业只是在服务器上工作了好几个小时。
为什么会发生这种情况,我们该如何解决?
答案 0 :(得分:0)
为操作系统提供10到20%的内存并为SQL Server分配休息总是更好。如果SSIS在同一服务器上运行,则仅向SQL Server提供约70%。
这一切都取决于我们在SSIS上运行的程度。你真的有内存瓶颈吗?使用以下查询来检查...
SELECT
(physical_memory_in_use_kb/1024) AS Memory_usedby_Sqlserver_MB,
(locked_page_allocations_kb/1024) AS Locked_pages_used_Sqlserver_MB,
(total_virtual_address_space_kb/1024) AS Total_VAS_in_MB,
process_physical_memory_low,
process_virtual_memory_low
FROM sys.dm_os_process_memory;