sql-server - 禁用 Sql 2008 缓存?

标签 sql-server sql-server-2008 disable-caching

我的应用程序会发出不同的查询并产生不同的结果,因此在我的情况下缓存是有害的。

这意味着没有通用数据可供sql直接从内存中获取结果而不是访问硬盘。

最佳答案

从您的评论来看,您似乎不希望 SQL 使用太多内存,因为您认为这毫无意义,因为您运行的任何查询实际上都是随机的。

首先,此内存可能用于存储索引和查询计划,而不是您想要返回的实际数据,因此您可能会发现此缓存比您想象的有用得多。

其次,使用如此内存量的 SQL 不太可能导致真正随机的未见查询的性能下降。如果 SQL Server 需要访问磁盘来获取任何信息,那么它使用的内存量几乎不相关。

但是,可以减少 SQL Server 使用的内存量。 (我不知道该选项在 SQL 2008 中的位置,但我认为它非常相似)在 Management Studio 中,右键单击“服务器”并执行“属性”。在那里你将有一个内存页面。在这里您可以选择 SQL 将使用的最小值和最大值。这将根据您的值(而不是物理服务器限制)有效地限制任何缓存 sql。

不过,我真的认为您不会看到任何性能提升。根据我的经验,SQL 最好总是让它自己做事。

关于sql-server - 禁用 Sql 2008 缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/903309/

相关文章:

sql-server - 避免在查询中重复 SQL 片段?

c# - INSERT/SELECT 查询中的 SQL Server 和汉字

sql-server - SQL 数据透视问题

SQL 执行返回的结果与直接在 MS SQL Server Management Studio 中执行不同

c++ - SetOaNoCache 在哪里定义的?

javascript - 在谷歌浏览器中禁用 JavaScript 缓存

caching - Sencha 触摸2 : Cannot disable the disableCache mechanism - app does not run offline

c# - 在 C# WPF 中连接到 SQL Server 的最佳方法

java - 如何防止Hibernate公式注释在保留字前添加表名?

sql - EXEC sp_who2 - LastBatch?