MySQL中的事务日志

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服务器层不管理事务,事务是由下层的存储引擎实现的。所以在同一个事务中,使用多种存储引擎是不可靠的。


你可能感兴趣的:(MySQL中的事务日志)