【问题标题】:Limited memory usage of sql server 2008 express?sql server 2008 express的内存使用有限?
【发布时间】:2009-03-17 23:33:23
【问题描述】:

我想在具有 1 GB 内存的笔记本电脑上安装 sql server 2008 express,但我的数据库包含大量二进制数据,我不想占用所有 RAM。我宁愿牺牲 sql 性能(使其成为页面)来支持其他应用程序。

是否可以限制sql server的内存占用?

【问题讨论】:

    标签: sql-server sql-server-2008-express


    【解决方案1】:

    看看herehere

    我认为基本上是 sp_configure 'max server memory'

    【讨论】:

      【解决方案2】:

      我只有 SQL Server 2005 Express,不是 2008,而是来自 SQL Server Management Studio Express,如果我右键单击树中的根节点(服务器节点)并选择“属性”,就会出现“内存”具有可设置的最小和最大内存量的页面。

      来自这些选项的文档:

      最小服务器内存(MB)
      指定 SQL Server 应该启动 至少有最少的数量 分配内存而不释放 低于此值的内存。设置这个 基于规模和活动的价值 您的 SQL Server 实例。总是 将选项设置为合理的值 以确保操作系统 不要求太多内存 SQL Server 和禁止 Windows 性能。

      最大服务器内存(MB)
      指定最大内存量 SQL Server 启动时可以分配 当它运行时。这个配置 选项可以设置为特定值 如果你知道有多个 同时运行的应用程序 作为 SQL Server 并且您想要 保证这些应用程序有 足够的内存来运行。如果这些 其他应用程序,例如 Web 或 电子邮件服务器,请求内存仅作为 需要,然后不要设置选项, 因为 SQL Server 会释放内存 根据需要给他们。然而, 应用程序经常使用任何内存 当他们开始和做时可用 如果需要,不要要求更多。如果 在此行为的应用程序 方式在同一台计算机上运行 与 SQL Server 一样,设置 选择一个值,保证 应用程序所需的内存 不是由 SQL Server 分配的。

      如果这些选项在 2008 年没有,我会感到惊讶,但您始终可以安装并尝试。

      【讨论】:

        【解决方案3】:

        您可以使用 osql 进行操作: http://kb.hs-lab.com/content/7/113/en/how-to-limit-ram-usage-for-sql-2005-express-database.html

        osql -E -S YOURSERVERNAME\PRINTLOGGER

        sp_configure 'show advanced options',1
        
        RECONFIGURE WITH OVERRIDE
        
        GO
        

        然后

        sp_configure 'max server memory',70?
        
        RECONFIGURE WITH OVERRIDE
        
        GO
        

        【讨论】:

          【解决方案4】:

          您也可以尝试将 cpu 优先级分配给您喜欢的应用程序并让 SQL 动态管理内存。它会根据其他应用程序的需要释放内存,无论优先级如何。

          希望您没有尝试在该机器上运行 Visual Studio。不会很有趣。

          【讨论】:

          • 我是,但我正在通过运行 XP 来弥补它。似乎做得还不错。
          猜你喜欢
          • 2011-12-14
          • 1970-01-01
          • 2011-02-13
          • 2012-01-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-02
          • 1970-01-01
          相关资源
          最近更新 更多