mysql事务,如何设置自动提交autocommit属性?
发布于 作者:苏南大叔 来源:程序如此灵动~ 我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...
mysql
的InnoDB
存储引擎,其特点是支持“事务”。而“事务”的使用,首先要解决的问题就是"什么时候提交"的问题。通俗的理解是:事务就是延缓提交,延缓生效,增加一个缓冲。而默认的设置是立即提交生效,也就是autocommit
为On
。两者看起来有些冲突,这也就是本文主要讨论的问题,为mysql
事务的相关文章做点铺垫。
苏南大叔的“程序如此灵动”博客,记录苏南大叔的编程经验故事。本文测试环境:win10
,mysql@5.7.26
,mysql-front@5.3
。本文实际上记录的是:mysql
的事务功能,什么时机下触发“commit”动作的一个开关问题。
查看autocommit设置
默认情况下,autocommit
的属性是On
。可以通过下面的命令进行查看:
show variables like 'autocommit';
还可以这样查看:
select @@autocommit;
临时设置autocommit
临时关闭autocommit
:
set autocommit = 0;
set autocommit = OFF;
临时打开autocommit
:
set autocommit = 1;
set autocommit = ON;
注意:这里的设置都是临时的,重启mysql
就失效了。
永久设置autocommit
寻找my.ini
配置文件,然后修改文件,重启生效。
可以增加配置:
autocommit = 0
因为默认是On
,并且配置里面都没有这个选项,需要自己添加。
相关链接
- https://newsn.net/say/mysql-status.html
- https://newsn.net/say/mysql-mycnf-setting.html 【寻找
mysql
配置文件位置的方法】 - https://newsn.net/say/mysql-trace.html
结语
mysql
的这些高级特性,用的到的都不是普通情况,普通情况下也用不到。更多不普通情况,请参考苏南大叔的mysql
相关经验文章:
如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。