mysql数据库InnoDB存储引擎(默认情况下是自动控制提交事务)与其他关系型数据库在默认事务处理与其他关系型数据库略有不同,之前已经习惯Oracle数据库的手动提交事务的处理方式,mysql数据库只有innoDB存储引擎支持事务处理操作。

现在设置mysql数据库也是手动提交事务。方法有两种:①临时生效(只对当前客户端有效),②永久生效

临时生效(只对当前客户端有效)

set @@autocommit=0 (0为关闭状态,1为开启状态)

如下图命令行所示:此方式只对本次客户端有效,关闭后自动恢复自动提交事务状态。

通过第三方客户端也可以同时达到此效果:

②永久生效(通过修改配置文件参数设置)

一、在Linux系统中:

通过修改配置文件my.cnf文件,通过vim编辑my.cnf文件,在[mysqld](服务器选项下)添加:

autocommit=0

保存,然后重启mysql服务即可生效。

二、在Windows系统中:但是在my.ini文件添加autocommit=0,重启mysql生效参数过程,数据库不能正常启动服务;

如下图所示:命令行启动提示:错误文件中提示:no variables autocommit=0(MySQL server 5.1版本,但是安装了MySQL server 5.6版本后直接使用autocommit=0即可使用,猜测可能是MySQL高版本(MySQL server5.5版本完美使用了原生的innoDB存储引擎)对Windows系统支持了此参数)

Windows系统中(MySQL server5.1版本)设置该参数生效方法:

需要借助init_connect参数:服务器为每个连接的客户端执行的字符串。字符串由一个或多个SQL语句组成。要想指定多个语句,用分号间隔开.

通过修改配置文件my.ini文件,编辑my.ini文件,在[mysqld](服务器选项下)添加:

 init_connect='SET AUTOCOMMIT=0'

保存,然后重启mysql服务即可生效。

或者使用下列方法也可以达到:

1、命令行下:
mysql>SET GLOBAL init_connect='SET autocommit=0';
2、启动mysqld时带上--init_connect='SET autocommit=0'

Windows系统中(MySQL server5.1版本)当我们以Super权限(root)登录mysql数据库服务时,show variables like '%autocommit%'查得结果还是:
autocommit  ON,
这是因init_connect(手册中有对其解释)以Super用户登录是不被加载的,这是mysql出于安全考虑,而后用普通用户登录,
show variables like '%autocommit%' 显示的结果如下:

autocommit OFF

来源:https://blog.csdn.net/xiaoyi23000/article/details/51690601

mysql数据库永久设置手动提交事务(InnoDB存储引擎禁止autocommit默认开启)相关推荐

  1. MySQL数据库中的MyISAM和InnoDB存储引擎对比

    一.InnoDB和MylSAM存储引擎对比 MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM(Indexed Sequential Access Method:有索引的顺序访 ...

  2. MySQL技术内幕(一) InnoDB存储引擎

    文章目录 1. InnoDB 体系架构 1.1 后台线程 1.2 内存 1.3 Checkpoint 技术 1.5 Master Thread 工作方式 1.6 InnoDB 关键特性 1.6.1 插 ...

  3. MySQL数据库的索引、事务和存储引擎

    目录 一.索引 1.1 索引的概念 1.2 索引的作用 1.3 创建索引的原则 1.4 索引的分类 1.5 索引的创建 1.5.1 普通索引 1.5.2 唯一索引 1.5.3 主键索引 1.5.4 组 ...

  4. mysql数据库应用模式与特点_MySQL存储引擎的实际应用以及对MySQL数据库中各主要存储引擎的独特特点的描述...

    MySQL存储引擎的实际应用以及对MySQL数据库中各主要存储引擎的独特特点的描述: 1.MySQL有多种存储引擎: MyISAM.InnoDB.MERGE.MEMORY(HEAP).BDB(Berk ...

  5. mysql5.1 mysiam,将MySQL 5.1 MyISAM 转换成 INNODB 存储引擎

    mysql 5.1默认只启用MyISAM, 使用INNODB要做一下修改: === InnoDB Storage Engine === Plugin Name: innobase Descriptio ...

  6. mysql innodb 设置,Mysql5.5 InnoDB存储引擎简单设置

    环境为CentOS系统,1G内存,Mysql5.5.30. 在/etc/my.cnf内添加: skip-external-locking skip-name-resolve max_connectio ...

  7. MySQL技术内幕-InnoDB存储引擎第2版-学习笔记-01

    MySQL技术内幕-InnoDB存储引擎第2版-学习笔记-01 1. MySQL体系结构和存储引擎 1.1 定义数据库和实例 数据库database: 物理操作系统文件或其他形式文件类型的集合. 当使 ...

  8. MySQL技术内幕-InnoDB存储引擎第2版-学习笔记-02

    MySQL技术内幕-InnoDB存储引擎第2版-学习笔记-02 6. 锁 ​ 人们认为行级锁总会增加开销.实际上,只有当实现本身会增加开销时,行级锁才会增加开销.InnoDB 存储引擎不需要锁升级,因 ...

  9. 谈谈MySQL InnoDB存储引擎事务的ACID特性

    2019独角兽企业重金招聘Python工程师标准>>> 1.前言 狼哥一直对数据库Mysql这块没有进行过系统的深入学习,今天看到一篇文章写的还不错,特意分享一下,我不能保证文章中所 ...

最新文章

  1. 阿里云linux服务器初步使用
  2. matlab 随机数权重,MATLAB中加权随机数
  3. 他们和机器人啪啪啪,并计划共度一生
  4. 外呼机器人起名_智能外呼机器人十大厂商
  5. python模块下载1002python模块下载_【Python】Python的urllib模、urllib2模块的网络下载文件...
  6. 以色列证实上周末对伊朗核设施发动了网络攻击
  7. unix grep命令_Linux / UNIX中的Grep命令
  8. DTCMS自定义标签,获取所有栏目文章列表TOP,以及文章通用URL
  9. MacBook Pro 上网很慢
  10. 游戏进化之路,Metaverse 的特征及难题
  11. 怎么把PDF拆分开成一张一张的
  12. 【PTA】斐波那契数列第n项
  13. [Android]APP中保持屏幕不自动灭屏的一种方法
  14. 正则表达式中反斜杠的另一用法
  15. Docker的 Overlay/Overlay2 文件系统
  16. IAR更改更改字体的办法,完美解决!
  17. Wilson(威尔逊)定理
  18. 《仿真使用ARENA软件》
  19. 在c语言中本征函数说明,结合单片机学习板学习c语言之流水灯制作--intrins.h头文件...
  20. weui实例:城市便民自行车查询

热门文章

  1. 卡尔曼滤波器求速度matlab,卡尔曼滤波器算法浅析及matlab实战
  2. ajax+php跨域请求数据库,基于jQuery的ajax跨域请求,PHP作为服务器端代码
  3. 「Jupyter」ubuntu下安装jupyterlab后jupyterlab:未找到命令
  4. 08_clickhouse主键/索引的工作机制(MergeTree的稀疏索引、索引的生成过程、索引的查询),数据标记的工作机制(数据存储、数据标记、数据查询、数据查询示例)(学习笔记)
  5. Memcached学习笔记 — 第四部分:Memcached Java 客户端-gwhalin(1)-介绍及使用
  6. Linux下C编程入门(.h文件,.c文件,以及多文件调用的方式)
  7. Scikit-learn数据预处理分类变量编码之等级变量编码
  8. OpenCV—中值滤波
  9. 使用caffe训练faster-rcnn时遇到的问题总结
  10. 深度学习分割json_to_data报错Too many dimensions: 3 > 2