共计 834 个字符,预计需要花费 3 分钟才能阅读完成。
自动写代码机器人,免费开通
丸趣 TV 小编给大家分享一下怎么解决 navicat 事务自动提交遇到的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
最近在使用 navicat 编辑数据库表的时候遇到了一些问题,记录下~~
问题:编辑完数据之后点击“✔”提交的时候 navicat 卡了,然后提示“MySql Lock wait timeout exceeded”,截图现在没有了,总之意思就是超时了。
原因:后来查了好多资料,原来是 navicat 的自动提交事务关闭了,导致了修改数据之后事务一直未提交,所以再修改数据的时候就得等之前的事务,但是事务一直未提交,所以就超时了
解决原因:可以先看一下事务是否是自动提交的。
show variables like autocommit
如图,如果查出来是 ON,表明事务是自动提交的,修改数据之后不用自己提交。如果是 OFF 的话,就需要把自动提交先先打开了。
set autocommit=on;
这样的话再修改数据的时候就不出出现超时的问题了~~~
ps:下面看下 Navicat Premium 设置 update 和 delete 操作不自动提交事务的问题
首先查看 MySQL 设置:
show variables like autocommit
结果应为:
然后执行:
set autocommit = 0;
delete from table1 where id =xxx;
commit; or rollback;
这时再查询:show variables like‘autocommit 其结果应为:
需要注意:这种操作设置,在当前查询窗口有效,重新打开 Navicat 或者新建查询页都需要重新设置。
以上是“怎么解决 navicat 事务自动提交遇到的问题”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!
向 AI 问一下细节