MySQL事务、

事务操作分两种:

使用事务的前提是 存储引擎必须是InnoDB,BDB

自动事务(默认)、手动事务

手动事务的操作流程

开启事务:start transaction;


进行事务操作


关闭事务

提交事务:commit; 同步数据表,表示操作成功

只要comit提交了,就不可以返回上一步的数据


回滚事务:rollback; 直接清空日志表,表示操作失败

事务操作原理:事务开启之后,所有的操作都会临时保存到事务日志,而事务日志只有在得到commit命令才会同步到数据表,其他任何情况都会清空,比如rollback、断电、断开连接

事务的操作游程:



 

设置回滚点语法:savepoint 回滚点名字;


回到回滚点语法:rollback to 回滚点名字;

自动事务处理

show variables like 'autocommit';

关闭自动提交:set autocommit=off/0;

当进入事务处理的时候,commit会自动变成手动提交

事务的四大特性:ACID

A:Atomic,原子性 (不是成功就是失败)

C:Consistency,一致性(实务操作中数据是一致的,只有同步之后的数据才会发生变化)

I:Isolation,隔离性(连个事务相互隔离,不受印象)

D:Durability,持久性 (数据一但提交,不可改变,不能回滚)

锁机制

当使用非索引字段时,行锁自动上升为表锁

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容