问题标签 [mysql-error-1205]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
349 浏览

python - python和mysql命令行中的mysql插入错误

我想在 mysql db 中插入一些项目。

当我在我的 python 脚本中这样做时,我得到了:

错误 1062:密钥“product_code”的重复条目“222”。product_code 是一个唯一字段。

当我在 mysql 命令行中执行此操作时,我得到:

错误1205(HY000):超过锁定等待超时;尝试重新启动事务。

mysql安装在win32上;该表的引擎是innodb。

代码:

0 投票
0 回答
771 浏览

mysql-error-1205 - MySQL错误代码1205:尝试删除具有相同ID的多行时超出锁定等待超时

尝试从我的表中删除具有相同 ID 的多行时,我收到“超过锁定等待超时错误...”消息(代码 1205)。如果我使用 SELECT 而不是 DELETE,则查询可以正常工作并返回我要删除的行。这是我的查询

我不能使用主键/索引,因为同一个 list_id 有多行。我花了几个小时试图在互联网上找到解决方案,但没有任何乐趣。有人可以帮忙吗!?谢谢

0 投票
1 回答
4761 浏览

mysql - 1205 错误:表在很长时间后仍被锁定

我有一个查询,我在自己的计算机上的 Mysql 工作台中执行,数据库在远程计算机上。

一段时间后,我收到了 2013 错误(查询期间与 MySQL 服务器的连接丢失),查询没有效果。后来我尝试了一些不同的查询,我总是得到:

这是否意味着我执行的查询(在此期间连接丢失)仍然锁定了表,如果是这样,我该如何释放表。从第一次查询到现在已经三个小时了。

show show processlist 的输出,得到 2013 错误的第一个查询是 ID 为 1205 的查询。

0 投票
2 回答
40114 浏览

mysql - MySQL 错误代码:1205。内部连接更新期间锁定等待超时

我正在尝试更新Time_Stamp表中的字段simple_pack_data,以匹配表中类似标题的字段中的值temp_data。每个表都有名为Test_Numberand的字段Time_Marker,我将其INNER JOIN用于表。Time_Marker就像阅读计数,其中Time_Stamp是从测试开始的实际时间。

我想一次更新Time_Stamp一个测试,所以我一直在尝试的代码是:

当我运行它时,它需要超过 50 秒,我得到 1205 错误。如果我运行类似结构的选择语句:

它需要不到一秒钟的时间,我知道加入工作正常。更新真的要那么久吗?如果是这样,有什么方法可以更改超时值以便它可以通过它?

0 投票
2 回答
998 浏览

mysql - SQL query times out when updating using inner join?

This query dies when I try to execute it in PHP code and in phpMyAdmin.

The error is:

1205 - Lock wait timeout exceeded; try restarting transaction

How can I prevent the lock timeout and/or solve this problem?

I can run this query in Microsoft Access correctly, and phpMyAdmin db is a copy of that Access database. Increasing the execution time is not an option for me as that will take too long for one record update.

0 投票
1 回答
4914 浏览

mysql - Magento SQLSTATE [HY000]:一般错误:1205 超过锁定等待超时;尝试重启事务

我最近制作了一个大型 32Gig 数据库的副本,用于我的开发环境。现在,当我尝试创建、删除、更新项目时出现此错误。

SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction

我在想也许副本没有正确运行并且某些表被锁定?

有问题的数据库是test_dev2我的开发环境正在使用的数据库。我尝试终止该进程test_dev2,但仍然出现同样的错误。

在此处输入图像描述

我还重新启动了 MySQL 服务,但仍然出现同样的错误。

然后我增加到innodb_lock_wait_timeout120 +--------------------------+-------+ | Variable_name | Value | +--------------------------+-------+ | innodb_lock_wait_timeout | 120 | +--------------------------+-------+

这是我运行此命令时得到的结果SHOW OPEN TABLES WHERE In_use > 0; +-----------+------------------+--------+-------------+ | Database | Table | In_use | Name_locked | +-----------+------------------+--------+-------------+ | test_dev2 | core_url_rewrite | 1 | 0 | +-----------+------------------+--------+-------------+

关于如何解决此1205 Lock wait timeout exceeded错误的任何想法?

0 投票
1 回答
538 浏览

mysql - MySql transaction lock timeout (1205) when insert into two databases which have foreign key on primary

I have two database in mysql running with innoDB and the second db has foreign key related to primary key of the first one.

In my code I need to insert in the first DB and get id for that and insert to the second one.

All goes well unless I start transaction and that locks the first DB for the new ID and second one cannot insert that ID and I am getting SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction. When I remove foreign key then it goes fine.

I need to mention that I use PHP PDO to connect to MySql and I create separate connection to each DB and I also cannot commit the first db transaction so that second one goes through because I need to make sure all transactions to all dbs goes fine in whole process and then start committing them.

Thanks Ramin

0 投票
2 回答
624 浏览

python - 使用python从大表中删除大量记录的有效方法

我有一个大表(大约 1000 万行),我需要删除“早于”10 天的记录(根据 created_at 列)。我有一个 python 脚本,我运行它来执行此操作。created_at 是一个 varchar(255) 并且具有类似于例如的值1594267202000

当我运行这个脚本并且它运行 DELETE QUERY 但是......它失败是由于:

删除失败:1205(HY000):超过锁定等待超时;尝试重启事务

我知道innodb_lock_wait_timeout当前设置为 50 秒,我可以增加它来克服这个问题,但是我宁愿不触及超时......我想基本上删除块可能吗?任何人都知道我可以在这里以我的代码为例吗?