现场环境客户要求删数据(界面没法直接操作),于是直接在数据库进行查询删除了,删完发现界面依然能查到删除后的数据,又用sql语句进行删除,发现报了错:Lock wait timeout exceeded; try restarting transaction(锁等待超时)。上网查了一波发现是删除后没有提交事务造成的(当前事务在等待其它事务释放锁资源造成的)。所以在此纪录下解决方法:

方法一:在mysql查询中执行以下指令

select * from information_schema.innodb_trx,会查询到正在运行的事务

kill trx_mysql_thread_id,然后在查询中kill掉就行

方法二:修改配置文件(没尝试)

innodb_lock_wait_timeout 锁定等待时间改大

my.ini文件:

#innodb_lock_wait_timeout = 50

修改为

innodb_lock_wait_timeout = 500

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-05-22
  • 2021-11-15
  • 2022-12-23
猜你喜欢
  • 2021-10-08
  • 2021-12-02
  • 2021-08-26
  • 2021-11-06
相关资源
相似解决方案