有人可以解释DBCC DROPCLEANBUFFERS
与CHECKPOINT
运营商一起使用并提供一个例子吗?
我知道在你的查询之前测试性能是有用的,但我并没有完全掌握它.此外,我不清楚与CHECKPOINT操作符结合使用.
如果我在查询之前执行它,它们需要花费更长的时间来运行,所以我猜测比较性能而不是准确评估它们是好的.
任何帮助,将不胜感激!
CHECKPOINT将已修改的数据页刷新到磁盘:
[CHECKPOINT]将当前数据库的所有脏页写入磁盘.脏页是已输入缓冲区缓存并已修改但尚未写入磁盘的数据页.通过创建保证所有脏页都已写入磁盘的点,检查点可在以后的恢复期间节省时间.
DBCC DROPCLEANBUFFERS然后删除任何非脏(低,干净)页面:
使用DBCC DROPCLEANBUFFERS使用冷缓冲区缓存测试查询,而无需关闭并重新启动服务器.
要从缓冲池中删除干净缓冲区,首先使用CHECKPOINT生成冷缓冲区缓存.这会强制将当前数据库的所有脏页写入磁盘并清除缓冲区.执行此操作后,您可以发出DBCC DROPCLEANBUFFERS命令以从缓冲池中删除所有缓冲区.
最终的结果是你开始没有缓存.