gpt4 book ai didi

MySQL:更新太慢

转载 作者:搜寻专家 更新时间:2023-10-30 22:03:55 25 4
gpt4 key购买 nike

以下是我必须运行的一系列查询的基准。如您所见,UPDATE 比其他查询慢得多。 我可以做些什么来加快它们的速度?

0.0002  LOCK TABLE category WRITE; 
0.0004
SELECT
@myLeft := left_id
FROM
category
WHERE
`amazon_browse_node_id` = 2675;

0.0184 UPDATE category SET right_id = right_id + 2 WHERE right_id > @myLeft;
0.0161 UPDATE category SET left_id = left_id + 2 WHERE left_id > @myLeft;
0.0007 INSERT INTO category(`name`, `amazon_browse_node_id`, `category_seo_friendly_url`, `left_id`, `right_id`) VALUES('Training', 2697, 'training-2697/', @myLeft + 1, @myLeft + 2);
0.0004 UNLOCK TABLES;

此问题与以下问题(以及我对解决方案的尝试)有关,我也在 SO 中发布了这些问题:

  1. MySQL: nested set is slow?
  2. MySQL trigger in order to cache results?

更新:

CREATE TABLE IF NOT EXISTS `category`
(
`category_id` INT(11) NOT NULL AUTO_INCREMENT,
`name` CHAR(255) DEFAULT NULL,
`category_seo_friendly_url` CHAR(255) DEFAULT NULL,
`left_id` INT(11) DEFAULT '1',
`right_id` INT(11) DEFAULT '2',
PRIMARY KEY (`category_id`),
UNIQUE KEY `seo_friendly_url_UNIQUE` (`category_seo_friendly_url`),
KEY `category_id` (`category_id`),
KEY `left_id` (`left_id`),
KEY `right_id` (`right_id`)
)

最佳答案

你可能在表上有一个索引

  1. 加速 SELECT 查询
  2. 减慢 UPDATE 查询,因为需要更新索引

INSERT 语句只添加一条记录,这意味着比更新 N 条记录更快。

关于MySQL:更新太慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5049385/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com