提问人:Martijn 提问时间:9/14/2023 更新时间:9/14/2023 访问量:54
MySQL准备语句明显慢于查询
MySQL prepared statement significantly slower than query
问:
我遇到了一个奇怪的情况,即在 AWS RDS MySQL 8.0 实例上运行任何准备好的语句都比手动运行完全相同的查询慢得多(> 100 倍)。
例如
PREPARE stmt1 FROM "select * from customers";
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
比
select * from customers;
在本例中,它们都很快,但是对于作为查询运行 ~10 秒的查询,相同的预准备语句很容易运行超过一个小时。
事实上,我可以复制慢速准备语句的 SQL,将其作为查询运行,获取结果,返回进程列表,仍然看到准备好的语句正在运行。SHOW PROCESSLIST
这适用于任何预准备语句,无论变量的数量如何,也无论使用何种客户端。
任何想法可能导致这种奇怪的行为吗?
答: 暂无答案
评论