MYSQL 事务属性 和 隔离级别

FAQ :

1.什么数据库引擎才有事务?

2.事务有哪些特征?

3.什么是隔离级别,隔离级别的基本单位是什么?

4.MYSQL默认是什么隔离级别?


1.什么数据库引擎才有事务?

    场景 :一件事情(如银行转账),可能涉及多条(2条以上)的SQL操作。当且仅当 所有的 SQL 都挪成功,我们才说,此次事情(出账,入账)已完成。

    事务的目的 :确保某一件事被成功执行,否则,撤销所有已执行的SQL(回滚)。

    什么数据库引擎才有事务 :MYSQL为例,只有InnoDb数据库引擎的数据表才有事务处理功能。

2.事务有哪些(属性)?

    四大属性(ACID)

    原子性(Atomicity):不可分割(指事情不可分割);

    一致性(consistency):开启事务后,只有两种情况:全部完成/全部撤销;

    孤立性(Islatio):一个数据库可同时进行开启多个事务,并行不冲突;

    持久性(Durability):事件提交后,即完成物理存储。(未提交,即不存在物理存储);

3.什么是隔离级别,隔离级别的基本单位是什么?

    什么是隔离?隔离,是为了处理多个事务之间的执行优先级而制定的,隔离也可以说是数据库处理多个事务的模式。

    隔离级别[按严格->宽松排序]:a)serializable,b)repeatable read,c)read commit,d)read uncommit;

4.MYSQL默认是什么隔离级别?

    Repeatable reat

5.如何查看/修改隔离级别?

    查看:select @@GLOBAL.tx_isolation, @@session.tx_isolation;
    修改:set session transaction isolation level repeatable read;  #repeatable read 可修改成 serializable等

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值