首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >innodb表计数优化

innodb表计数优化
EN

Stack Overflow用户
提问于 2014-11-04 15:12:10
回答 2查看 441关注 0票数 1

我有一个包含10.000.000行的大innodb表

这个来自table_name的查询SELECT count(id)需要4-6秒来执行

我需要减少查询执行时间

1)有人可以建议如何在不将表更改为MyIsam的情况下实现这一点吗

2)如果我们需要使用MySQL缓存,我们如何在服务器上打开它?

EN

回答 2

Stack Overflow用户

发布于 2014-11-04 23:14:48

在应用程序中的计数上撒谎。真的,在极少数情况下,你需要确切的数字。近似行计数(但与MyISAM中的select计数(*)一样快),您可以从

代码语言:javascript
运行
复制
SELECT MAX(id) - MIN(id) AS count FROM table

如果您仍然需要确切的数字,则可以使用计数数字创建一个表,并使用INSERT和DELETE时的触发器对其进行更新

票数 2
EN

Stack Overflow用户

发布于 2014-11-04 15:20:58

如果您的表不经常更改,那么使用MySQL查询缓存是一个很好的解决方案。

代码语言:javascript
运行
复制
[mysqld]
query_cache_type = 1
query_cache_size = 10M

如果字段'id‘不存在,也要添加索引。此外,如果您在插入或更新时在单独的表中编写应用程序商店计数。这很方便。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26729528

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档