社区
MySQL
帖子详情
innodb方式查询慢
yzbsd
2017-02-23 09:58:12
现在表中有3万多条数据,表引擎是innodb,用count查询总数时大约花费2秒时间,改成myisam引擎,很快就能查出总数,用不了0.01秒。要在使用事务的情况下使用innodb引擎,应该怎么优化该表的查询效率呢?
...全文
296
5
打赏
收藏
innodb方式查询慢
现在表中有3万多条数据,表引擎是innodb,用count查询总数时大约花费2秒时间,改成myisam引擎,很快就能查出总数,用不了0.01秒。要在使用事务的情况下使用innodb引擎,应该怎么优化该表的查询效率呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ACMAIN_CHM
2017-02-25
打赏
举报
回复
你的查询语句是什么? 以
文本方式
贴出(
不要贴图!
)
explain select ....
及
show index from
以供分析
今天晴
2017-02-24
打赏
举报
回复
尽量别用count(*),尽量用上索引
rucypli
2017-02-23
打赏
举报
回复
如果不要求精确 可以从information_schema.tables里面取大概的行数 另外在一个小字段加索引也可以通过索引加快统计行数
lamking
2017-02-23
打赏
举报
回复
myisam精确的记录了行数,innodb没有,所以在myisam上不加条件的count很快,因为并不是全表扫描,而是直接读取的,innodb没有这个记录,只有估算值(不是精确值),就是1楼说的那个,如果对数量要求不严格,可以使用,如果需要精确数量,那只能从程序角度,去处理了,例如专门弄个字段或者缓存,记录记录数。
comfortable1024
2017-02-23
打赏
举报
回复
可以 explain 这条SQL,看看执行计划
mysql(
innodb
)
慢
查询
问题定位实践
背景 最近对线上的
慢
查询
做了一个分析和优化,这里做一下总结,使用的引擎规定都是
innodb
,架构是三主集群,半自动同步,需三台机都写入成功才返回
慢
查询
问题分析 问题一:每日0点左右,数据库写入时间很长,甚至十几秒 分析:经过排查,发现是0点左右会有一些数据备份的操作,删除N天之前的备份数据,新增前一天的新备份数据,数据量达到百万级别,这样一删一增,三主之间还需要同步数据,这个时间持续了几分钟,在...
为什么 select count(*) from t,在
InnoDB
引擎中比 MyISAM
慢
?
统计一张表的总数量,是我们开发中常有的业务需求,通常情况下,我们都是使用 select count(*) from t SQL 语句来完成。随着业务数据的增加,你会发现这条语句执行的速度越来越
慢
,为什么它会变
慢
呢? 为什么会变
慢
?想要得到答案就需要知道 MySQL 是如何统计总数量的,先说一个前提吧,count(*) 的具体实现是由存储引擎实现的,也就是说不同的存储引擎实现的
方式
不一样。 标题:为什么select count( * ) from t,在
InnoDB
引擎中比 MyISAM
慢
?也是高频
mysql
innodb
count(*)速度
慢
的几个解决方案
mysql
innodb
count(*)速度
慢
且不准确的解决办法
innodb
引擎在统计方面和myisam是不同的,Myisam内置了一个计数器,所以在使用 select count(*) from table 的时候,直接可以从计数器中取出数据。而
innodb
必须全表扫描一次方能得到总的数量。要初步解决这个问题,需要做不同于myisam的一些工作: 1、使用第二索引(一般不使用主键索引),并且添...
InnoDB
与 MyISAM对比
1)
InnoDB
支持事务,MyISAM不支持,这一点是非常之重要。事务是一种高级的处理
方式
,如在一些列增删改中只要哪个出错还可以回滚还原,而MyISAM就不可以了。 2)MyISAM适合
查询
以及插入为主的应用,
InnoDB
适合频繁修改以及涉及到安全性较高的应用 3)
InnoDB
支持外键,MyISAM不支持 4)从MySQL5.5.5以后,
InnoDB
是默认引擎 5)
InnoDB
不支持FULLTEXT类型的索引 6)
InnoDB
中不保存表的行数,如select count() from table时,Inno
【MySQL优化(八)】
InnoDB
查询
优化理论与实践(SQL优化)
如果SQL写的很糟糕,即使表结构再合理,索引再适合也无法实现高性能
MySQL
56,687
社区成员
56,710
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章