炫意html5
最早CSS3和HTML5移动技术网站之一

mysql数据库,为什么无法执行for update?

如下所示,我查询一条记录,然后主动上锁,但是总是失败,为什么?
没有其它会话。
隔离级别是默认的 repeatable-read

mysql> select * from account where id = 5;
+----+-----------+---------+
| id | NAME      | balance |
+----+-----------+---------+
|  5 | zhangsang | 1000.00 |
+----+-----------+---------+
1 row in set (0.00 sec)
mysql> select * from account where id = 5 for update;
ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction

回答

其实你可以直接搜这个报错,翻译过来: ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction。
一般都是锁争用引起的,查查数据库线程情况,看下里面是否有正在锁定的事务线程,把它干掉。

炫意HTML5 » mysql数据库,为什么无法执行for update?

Java基础教程Android基础教程