执行count时慢 | mysql | mysql 技术论坛-380玩彩网官网入口

服务器环境:centos7 mysql8
10多条数据,执行```sql
select count(*) from hy_dept
``竟然耗时时间300多ms,这种情况怎么排查和优化呢?

create table `hy_dept` (
  `id` int not null auto_increment,
  `pid` int default null comment '上级组织',
  `uid` int default null,
  `dept_type` int default null comment '单位类别',
  `ordering` smallint default '10001' comment '排序',
  `dept_name` varchar(100) default null comment '组织名称',
  `principal` varchar(100) default null comment '负责人',
  `tel` varchar(11) default null comment '联系电话',
  `pathint` varchar(500) character set utf8mb4 collate utf8mb4_0900_ai_ci default ':',
  `createtime` timestamp null default current_timestamp comment '创建时间',
  primary key (`id`)
) engine=innodb auto_increment=20036 default charset=utf8mb4 collate=utf8mb4_0900_ai_ci
讨论数量: 9

服务器啥配置啊,和mysql关系不大吧

9个月前
(楼主) 9个月前
(作者) 9个月前

我本地测试也是0.01s,但服务器上执行就是300ms多.在mysql控制台里执行的,是不是和my.cnf配置有关,有什么调优工具吗?谢谢!

file

9个月前
9个月前
9个月前
9个月前

数据库不是服务器本地的吧,跨地区访问数据库就是慢

3个月前

innodb 是内存表, 一般是没行数记录的, 你可以看phpmyadmin上显示也是~ (约等号) 可以增加搜索条件来加快速度. select count(*) from hy_dept where pid > 0

当然最好的办法是增加个字段 如 tad 全部入 1 sql写成 select count(*) from hy_dept where tad = 1
速度将最快.

1个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
网站地图