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

时间:2017-01-11 04:08:07

标签: mysql magento blocked-threads mysql-error-1205

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

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

我想也许副本没有正确使用,有些表被锁定了?

有问题的数据库是test_dev2,我的开发环境正在使用它。我试图删除test_dev2的过程,但仍然是同样的错误。

enter image description here

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

然后我将innodb_lock_wait_timeout增加到120 +--------------------------+-------+ | 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错误的任何想法?

1 个答案:

答案 0 :(得分:0)

  1. 询问您的系统管理员您安装此版本的服务器是否有能力处理此大型数据库。

  2. 通过删除/减少条目条目来修剪数据库 - 删除客户入口,登录入口,报价等。

  3. 确保索引正确完成。

  4. 您的Mysql缓冲区内存大小设置也可能导致临时表创建,这会导致执行速度变慢,从而导致超时。