gpt4 book ai didi

mysql - 无法对特定记录运行查询

转载 作者:行者123 更新时间:2023-11-29 17:49:31 26 4
gpt4 key购买 nike

我正在尝试在 mysql 工作台中运行查询。但它继续无休止地运行,最后抛出 1205 错误。最有趣的是我可以更新具有 statusID=5 的另一条记录的相同字段。

update `catalog`.`order_status` 
set `Status` = 'CONFIRMED'
where `StatusID` = '4'

最佳答案

1205 表示“锁定等待超时”。您正在尝试更新可能已锁定的记录。它可以在更新大量记录时被锁定/然后遇到例如 300 秒的超时错误(取决于您用来触发查询的应用程序的配置。)

修复 1:找出实际问题: 运行(在 MySQL 中) show full processlist; 并确定正在运行的查询并锁定一个/某些行。 然后 kill query <process id>;

您还可以检查表的引擎 - InnoDB 允许记录锁定,MyISAM 将锁定整个表(推荐:InnoDB)

修复2:如果上述方法不起作用,轻松获胜:重新启动 mysql 服务。这将释放所有锁定。

选项 3:使用“where”子句对 StatusID 字段进行索引,以便更快地搜索;但这不太可能是问题所在。

关于mysql - 无法对特定记录运行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49506351/

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