繁体   English   中英

Mysql 5.7 Innodb随机删除查询非常慢

[英]Mysql 5.7 Innodb Delete query very slow randomly

我有5个简单字段的表。 表中的总行数为cca 250。

当我将PHPmyAdmin与一个DELETE查询一起使用时,它的处理时间为0.05秒。 (总是)。

问题是我的PHP应用程序(PDO连接)在其他查询之间处理相同的查询,并且此查询非常慢(大约10秒钟)。 在表上也有5行的另一个SELECT查询(大约1秒钟)。 它只是偶尔发生! 其他查询(cca 100)始终可以正常响应时间。

应该是什么问题,或者如何找到问题所在?

表:

CREATE TABLE `list_ip` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`type` CHAR(20) NOT NULL DEFAULT '',
`address` CHAR(50) NOT NULL DEFAULT '',
`description` VARCHAR(50) NOT NULL DEFAULT '',
`datetime` DATETIME NOT NULL DEFAULT '1000-01-01 00:00:00',
PRIMARY KEY (`id`),
INDEX `address` (`address`),
INDEX `type` (`type`),
INDEX `datetime` (`datetime`) ) COLLATE='utf8_general_ci' ENGINE=InnoDB;

查询:

DELETE FROM list_ip WHERE address='1.2.3.4' AND type='INT' AND datetime<='2017-12-06 08:04:30';

正如我之前所说,表只有250行。 桌子的大小是96Kib。 我也用空表测试了它的速度。

在EXPLAIN中包装查询,看看它是否正在运行顺序选择,而不使用索引。 在确定我是否有数据模型问题时,EXPLAIN是我的第一站(坏/丢失的索引将是一个模型问题)。

关于EXPLAIN: https : //dev.mysql.com/doc/refman/5.7/en/explain.html

我推荐的另一个工具是运行“ mytop”,并在服务器停滞期间检查服务器活动/负载。 http://jeremy.zawodny.com/mysql/mytop/

网络出现问题。 我用一些网络外围设备卸载了docker app,看起来更好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM