0
我在我的表中有一列,不断变化非常频繁。如何在特定的表上实现缓存,我应该将此列移动到不同的表中?我应该如何避免缓存失效?如何避免MySQL innodb表中的缓存失效如果我有一个频繁更改列?
我在我的表中有一列,不断变化非常频繁。如何在特定的表上实现缓存,我应该将此列移动到不同的表中?我应该如何避免缓存失效?如何避免MySQL innodb表中的缓存失效如果我有一个频繁更改列?
做query_cache_type关闭,你可以通过执行下面的语句来完成。
query_cache_type=OFF;
用于永久条目在my.cnf或my.ini文件中添加以下行。
query_cache_type=0;
后,它MySQL不会缓存查询数据 -
但是,如果你希望缓存查询和一些特定的查询创建问题,那么您可以在这些查询添加以下语法,而不禁用查询缓存。
例如您的查询是 -
select col1, col2 from mytable where col1=3;
然后将其更改为 -
select sql_no_cache col1, col2 from mytable where col1=3;
我应该如何处理与经常变化enteries特定列的问题?我应该将列移动到其他表并缓存表中的其余部分? –
如果某些列值经常发生变化,那么您不能在应用程序结束时缓存该数据,就像solr等一样,如果您在另一个表中移动列,并且任何查询都使用该列,那么也会得到相同的行为....所以要么完全关闭查询缓存或使用sql_no_cache此列在选择查询中使用... –
有道理!感谢Zafar。此外,由于这种查询缓存并不总是有效,你能告诉我应该寻找哪些参数来调整和增强mysql性能? –