我正在尝试在我的本地mac dev机器上关闭mysql查询缓存。
我试过CL:
SELECT sql_no_cache;
RESET query cache;
SET SESSION query_cache_type = OFF;
以及配置:
query-cache-type = 0
我是通过macports安装的。 有大约10个my.cnf文件,所以也许我甚至没有编辑正确的文件?
/private/etc/my.cnf
/Users/dj/Downloads/mysql-5.1.41-osx10.5-x86_64/mysql-test/suite/federated/my.cnf
/Users/dj/Downloads/mysql-5.1.41-osx10.5-x86_64/mysql-test/suite/ndb/my.cnf
/Users/dj/Downloads/mysql-5.1.41-osx10.5-x86_64/mysql-test/suite/rpl/my.cnf
等等......
我认为命令行的东西应该可以工作。
我想我已经尝试过我在网上找到的所有内容都无济于事。 非常感谢任何帮助
答案 0 :(得分:0)
sql_no_cache
用法是在每次选择语句(查询)时添加它。
如:
select sql_no_cache * from mytable;
您可以确定这不会被缓存。但是,从表中检索数据的过程中涉及到许多其他缓存,从硬盘和/或控制器本身到缓存常用文件的操作系统,以及mysql使用的存储引擎(例如innodb的缓冲区)。
为什么不希望缓存查询?
如果是基准测试,我建议在每次执行之前重启mysql服务器。
my.cnf应位于/etc/my.cnf
。