使用bcb开发的信息系统,数据库采用sql server 2000。运行大概四五天后出现”未能执行所请求的操作因为可用内存少于最小查询内存请减小 'min memory per query' 服务器配置选项的配置值“,又要重启服务器。不知这是什么原因引起的。
直接缓解问题的办法如下:
如何设置最小查询内存(企业管理器)
1.展开一个服务器组。
2.右击一个服务器,再单击"属性"。
3.单击"内存"选项卡。
4.在"最小查询内存"框中,键入或选择一个介于 512 到 2147483647 KB 之间的值。
默认值为 1024 KB。
想解决问题,最好还是要检查一下程序是否存在数据库连接未及时关闭,SQL语句是否可在优化,数据库中是否存在比较消耗资源的计划任务或者触发器
先用跟踪分析sql执行情况,然后针对具体优化(比如:频繁执行的sql可否缓等)。
sql server 的查询优化,减少数据库请求次数(缓存)。
是不是你每次查询结果的记录非常多造成的?
这种问题,我觉得单纯的设置min memory per query这种参数可能治标不治本的,
应该结合业务考虑一下,你的程序是否需要一次性查询出这么多结果吗?
减小“每次查询占用的最小内存”服务器配置选项的配置值,或者减少服务器的查询负载。
下面的列表概述了有助于解决内存错误的一般步骤:
以下操作可以使更多内存可供 SQL Server 使用:
运行以下 DBCC 命令以释放几个 SQL Server 内存缓存。
如果问题仍存在,则您将需要进一步调查,可能需要减小工作负荷。