问题描述
|
是否存在与MysqL关键字
sql_NO_CACHE
(或sql Serverdbcc drop clean buffers
)等效的postgresql,即可以将其简单地包含在sql语句中或作为脚本的一部分?
更新:这个问题
是否查看并清除Postgres缓存/缓冲区?
似乎说答案是“否”,尽管它已经两年了。 postgresql 9.0中有任何相关更改吗?
解决方法
您所说的两件事根本不相等。
MySQL \的SQL_NO_CACHE不会阻止引擎使用缓存的数据。这意味着查询未缓存在MySQL查询缓存中。
查询缓存与引擎可能具有的任何磁盘缓存都不相同,因为该引擎缓存查询结果,而不是磁盘中的块(或表中的行等)。因此,它将缓存文本语句的结果。
使用SQL_NO_CACHE的原因是,您知道您将要执行不经常使用的查询,该查询返回大量数据(因此将占用大量缓存空间)。
但是现在建议大多数MySQL安装关闭查询缓存,以为页面缓存等腾出更多内存(请参阅http://dom.as/tech/query-cache-tuner/)
,不需要,PostgreSQL中的缓存工作原理大不相同,并且100%可靠。