mysql - 优化 MYSQL 查询(InnoDB 表)

标签 mysql caching optimization innodb

我遇到了一个问题。我需要(出于教学目的)展示查询的优化过程(例如:2 秒没有任何索引,1 秒有索引......等等)。

我有一个 mysql 数据库,其中有 12 个表,每个表中有 1.000.000 条记录。

问题是:如果我第一次执行查询,需要 x 秒。同一个查询的第二次执行,总是需要 0 秒。我尝试了刷新表、刷新查询缓存、在选择中将查询缓存设置为 OFF、将 inno_db_buffer_pool 设置为 0M.. 什么都没有。在第一次执行查询后,MYSQL 将结果缓存在某处(我认为),因此下一次执行总是需要 0 秒。

最佳答案

如果您需要优化查询,请在 SELECT 语句中使用 SQL_NO_CACHE

关于mysql - 优化 MYSQL 查询(InnoDB 表),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16960314/

相关文章:

php - PHP 和 MySQL 中时间戳的替代方案?

mysql - 如何在 MySQL 2 中连接多个表?

java - JPA缓存未失效

java - 如何让 Infinispan 与 Camel 一起工作

c - 最大共线点数 - 优化

php - 如何在 MySQL 表中存储数组值?

mysql - 如何在 Rails 3.1 中的不同域名之间共享代码

c# - 使用 Web.config 禁用单个 JS 文件的缓存

performance - 多个 OnEdit 函数的最佳实践

c++ - c 是否优化了 for 循环的检查部分?