问个小问题,为什么查询语句第二次比第一次快,是走了缓存?我现在优化查询性能,所以搞不清楚了,如何设置查询不走缓存?我百度了一下 全是些qc的,但好像qc在8.0后就取消了吧,真是一窍不通。
SELECT SQL_NO_CACHE * FROM 表;
查询语句第二次比第一次快,通常是因为MySQL的查询缓存或者存储引擎缓存已经缓存了查询结果或者数据页,导致数据无需再次从磁盘中读取,而是从缓存中获取,从而提高了查询性能。
如果想要设置查询不走缓存,可以在查询语句中使用SQL_NO_CACHE选项。SELECT SQL_NO_CACHE * FROM 表table。这样可以禁止查询缓存,从而在每次执行查询时都从磁盘中读取数据,避免由于缓存带来的误导。