您的位置:首页 > 数据库 > MySQL

MySQL中的事务日志

2015-11-23 00:00 495 查看
MySQL提供了两种事务型的存储引擎:InnoDB和NDB Cluster。另外一些第三方的存储引擎也支持事务,比较著名的包括XtraDB和PBXT。

 自动提交(AUTOCOMMIT)

 MySQL默认采用了自动提交(AUTOCOMMIT)模式。也就是说,如果不是显示地开始一个事务,则每个查询都被当作一个事务执行提交操作。

在当前连接中,可以通过设置AUTOCOMMIT变量来启用或者禁用自动提交模式:

mysql > SHOW VARIABLES LIKE 'AUTOCOMMIT';//查看当前提交模式

mysql > SET AUTOCOMMIT =1; //启用自动提交模式 1 或者on表示启用,0 或者off表示禁用。当AUTOCOMMIT=0时,所有的查询都是在一个事务中。直到显式的执行COMMIT提交或者ROLLBACK回滚,该事务结束,同时又开始了另一新事务。修改AUTOCOMMIT对非事务型的表,比如MyISAM或者内存表,不会有任何影响。对于这类表来说,没有COMMIT和ROLLBACK的概念,也可以说是相当于一直处于AUTOCOMMIT启用的模式。

会强制执行COMMIT提交当前的活动事务的情况:①导致大量数据改变的操作--ALERT TABLE ,②LOCK TABLES

MYSQL服务器层不管理事务,事务是由下层的存储引擎实现的。所以在同一个事务中,使用多种存储引擎是不可靠的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: