加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – SQL查询性能和dropcleanbuffers

发布时间:2020-12-12 08:51:05 所属栏目:MsSql教程 来源:网络整理
导读:有一个“最佳实践”,你必须运行 DBCC FREESESSIONCACHEDBCC FREEPROCCACHEDBCC DROPCLEANBUFFERS 在对SQL查询执行性能分析之前. 然而,例如,后来的一个DROPCLEANBUFFERS: Use DBCC DROPCLEANBUFFERS to test queries with a cold buffer cache without shutti
有一个“最佳实践”,你必须运行
DBCC FREESESSIONCACHE
DBCC FREEPROCCACHE
DBCC DROPCLEANBUFFERS

在对SQL查询执行性能分析之前.

然而,例如,后来的一个DROPCLEANBUFFERS:

Use DBCC DROPCLEANBUFFERS to test queries with a cold buffer cache
without shutting down and restarting the server.

To drop clean buffers from the buffer pool,first use CHECKPOINT to
produce a cold buffer cache. This forces all dirty pages for the
current database to be written to disk and cleans the buffers. After
you do this,you can issue DBCC DROPCLEANBUFFERS command to remove all
buffers from the buffer pool.

我猜,这意味着您将测试您的查询,就像它是在服务器中运行的第一个查询一样,因此查询的实际“现实生活”影响将会更低.

运行这三个命令以了解查询成本是否真的是可取的,还是让您获得与实时环境中实际查询时间无关的实证结果?

解决方法

我不同意这是最好的做法,很少使用它.

我调用的查询应该是受欢迎的,经常运行的.这给了我最大的鼓舞我的钱.对于任何一个计划或数据,都应该很少运行“冷”.

我正在测试查询执行:不是磁盘读取系统或查询优化器编译

以前曾经在DBA.SE问过.请看这些

> https://dba.stackexchange.com/a/10820/630
> https://dba.stackexchange.com/a/7870/630

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读