前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据库锁

数据库锁

作者头像
宇宙之一粟
发布2020-10-26 10:48:52
2970
发布2020-10-26 10:48:52
举报
文章被收录于专栏:宇宙之_一粟

常见问题

  • MyISAM与InnoDB关于锁方面的区别是什么
  • 数据库事务的四大特性
  • 事务隔离级别以及各级别下的并发访问问题
  • InnoDB可重复读隔离级别下如何避免幻读
  • RC、RR级别下的InnoDB的非阻塞读如何实现

MyISAM与InnoDB关于锁方面的区别是什么

  • MyISAM默认用的是表级锁,不支持行级锁
  • InnoDB默认用的是行级锁,也支持表级锁
代码语言:javascript
复制
select count(*) from person_info_large;
select count(*) from person_info_myisam;

select * from person_info_myisam where id between 1 and 2000000;
代码语言:javascript
复制
update person_info_myisam set account = account where id = 2000001;

上一个表锁,读锁不释放的话,写锁会被阻塞。

代码语言:javascript
复制
lock table person_info_myisam read | write;
unlock tables;

MyISAM适合的场景

  • 频繁执行全表count语句
  • 对数据进行增删改的频率不高,查询非常频繁
  • 没有事务

InnoDB适合的场景

  • 数据增删改差相当频繁
  • 可靠性要求比较高,要求支持事务

数据库锁的分类

  • 锁的粒度划分:可分为表级锁、行级锁、页级锁
  • 锁级别:共享锁、排它锁
  • 加锁方式:自动锁、显式锁
  • 操作划分:DML锁、DDL锁
  • 使用方式:乐观锁、悲观锁
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 常见问题
  • MyISAM与InnoDB关于锁方面的区别是什么
  • MyISAM适合的场景
  • InnoDB适合的场景
  • 数据库锁的分类
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档