在我的应用程序中,我遇到了有时SELECT语句遇到异常的问题。可悲的是,我无法创建一个例子,因为情况非常复杂。所以问题只是关于一般理解。java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
一点背景信息:我正在使用具有READ_COMMITED隔离级别的MySQL(InnoDB)。
实际上,我不明白SELECT如何通过该设置遇到锁定超时。我以为SELECT永远不会锁定,因为它只会返回最新的提交状态(由MySQL管理)。无论如何,根据正在发生的事情,这似乎是错误的。那么它到底是怎么回事呢?
我已经读过这个 https://dev.mysql.com/doc/refman/8.0/en/innodb-locking.html 但这并没有真正给我一个线索。没有或类似的东西被使用。SELECT ... FOR UPDATE
撒科打诨
慕妹3146593
一只名叫tom的猫
随时随地看视频慕课网APP
相关分类