代码之家  ›  专栏  ›  技术社区  ›  Ahmed

SQL Server 2008占用大量内存?

  •  11
  • Ahmed  · 技术社区  · 17 年前

    4 回复  |  直到 15 年前
        1
  •  27
  •   Greg Beech    17 年前

    SQL Server旨在使用尽可能多的内存,通过在内存中缓存大量内容来提高性能。建议为SQL Server使用专用机器,这使其成为一种完全有效的方法,因为它不希望其他人需要内存。所以你不应该担心这个;这完全正常。

        2
  •  4
  •   Jason Plank Maksim Kondratyuk    15 年前

    事实上,有一个巧妙的小技巧可以得到你想要的东西。问题是如何让SQL Server“暂时”放弃它可能不需要的内存,然后让它根据需要重新使用。

    为此,请运行以下脚本:

    EXEC sys.sp_configure N'show advanced options', N'1'
    
    RECONFIGURE WITH OVERRIDE
    
    GO
    
    EXEC sys.sp_configure N'max server memory (MB)', N'{low water mark}'
    
    GO
    
    RECONFIGURE WITH OVERRIDE
    
    GO
    
    EXEC sys.sp_configure N'max server memory (MB)', N'{High water mark}'
    
    GO
    
    RECONFIGURE WITH OVERRIDE
    
    GO
    
    EXEC sys.sp_configure N'show advanced options', N'0'
    
    RECONFIGURE WITH OVERRIDE
    
    GO
    

    为{低水位线}和{高水位线}输入自己的值(MB)。

    这将迫使内存降至最低限度,然后如果SQL Server需要/想要它,请立即重新打开。

    建议:

    如果SQL Server使用不频繁,请尝试每6小时自动运行一次。如果使用频繁,每24小时跑步一次(比如在半夜或刚开始一天之前)。您的用法会有所不同。

        3
  •  1
  •   SQLChicken    17 年前

    推荐文章