数据库的存储引擎

一、什么是mysql引擎?有啥作用?
mysql存储数据时,有不同的存储方式,这些存储方式使用了不同的底层实现(存储机制、索引技巧、锁定水平),底层实现的差异带来的功能也就不同。
不同场景下使用合适的存储引擎能够然让你的数据读写速度更快。
二、mysql主要的存储引擎有哪些?
Mylsam, Memory, Blackhole, CSV, Performance_Schema, Archive, Federated InnoDB
在数据库中通过show engines查看mysql存储引擎
三、Mylsam与InnoDB对比
在这里插入图片描述
扩展
四、MySql锁机制
锁粒度
**表级锁:对整张表加锁(Mylsam)
**行级锁:仅对被访问的行分别加锁(InnoDB)
锁类型
**读锁(共享锁):支持并发读
**写锁(互斥锁、排它锁): 是独占锁,上锁期间其他线程不能读表或是写表
查看当前锁状态
**show status like “table_lock%”

五、事务特性
Atomic:原子性
**事务的整个操作是一个整体,不可分割
**要么全部成功,要么全部失败
**Consistency:一致性
**事务操作的前后,表中的记录没有变化
Isolation:隔离性
**事务操作相互隔离不受影响的
Durability:持久性
**数据一旦提交,补课改变,永久改变表数据

相关命令
show variables like “autocommit”; //查看提交状态
setautocommit=off; //关闭自动提交
rollback; //数据回滚
commit; //提交数据

Mysql事务的使用(事务的理解)
在默认情况下,mysql每执行官一天SQL语句,都是一个单独的事务。如果需要在一个事务中包含多条SQL语句,那么需要开启事务和结束事务。
开启事务: starttransaction;
结束事务: commit或rollback
执行SQL语句之前,先执行start transaction, 这就开启一个事务(事务起点),然后可以去执行多条SQL语句,最后要结束事务,commit表示提交,即事务中的多条SQL语句锁做出的影响会持久化到数据库中,或者rollback,表示回滚,即回滚到事务的起点,之前所得所有操作都被撤销。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值