【MySQL】varchar和char的区别,表级锁、行级锁

1、MySQL中varchar和char的区别

  • ① 定长和变长

char表示定长,规定多少字长则存储多少字长,超过的长度只能截取对应的长度进行存储,子长不够空格补齐;
varchar表示在规定字长之内,有多少存多少,无需补齐;超出的部分舍去即可。

  • ②存储容量不同

char:最多存放255个字符,与编码无关;
varchar最多存放65532个字符。

2、表级锁、行级锁、页级锁

  • 表级锁

特点:MySQL各存储引擎最大颗粒度的锁定机制。
优点:实现逻辑简单,带来的系统负面影响最小,获取锁、释放锁的速度很快
缺点:出现锁定资源争用的概率很高
使用场景:以查询为主(只有少量按索引条件更新数据)的应用,如web应用,MyISAM,MEMORY,CSV等一些非事务性存储引擎。

  • 行级锁

特点: 锁定颗粒度最小
优点: 发生同步资源争用的概率也最小,能够尽可能大地实现并发处理能力
缺点: 每次获取锁和释放锁需要做的事也更多,最容易发生死锁
使用场景: 大量按索引条件并发更新少量不同数据,同时又有并发查询的应用,如一些在线事务处理系统(OLTP),InnoDB

  • 页级锁

特点: 基于以上两者之中
使用场景: BerkeleyDB存储引擎

参考文章:https://www.cnblogs.com/bandaoyu/p/14625084.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值