第三十一天 MySQL并发控制、存储引擎介绍、用户权限管理、缓存管理和数据类型选择

一、MySQL的并发控制

1、MySQL的并发控制在 服务器层和存储引擎层完成

锁:lock

读锁:共享锁,可以几个用户同事读取,但不能写

写锁:独占锁,

锁粒度:锁表时锁表的范围(比如一个用户读前三行,一个用户写入最后一行)

表级锁:innodb表级锁

行级锁:myisa行级锁(锁控制复杂)

死锁:A请求B,B请求A (自己能协商解锁)

锁分类:

隐式锁:由存储引擎自动完成

显式锁:用户可手动施加锁,表级锁

手动加锁:服务器级别实现

LOCK TABLES tb1 {READ|WRITE},……

           UNLOCK TABLES;释放锁

例:>use hellodb;

>LOCK TABLES students READ;

FLUSH TABLES WITH READ LOCK; 关闭表并全局执行读锁

UNLOCK TABLES;

InnoDB存储引擎也支持另外一种显式锁(只锁定挑选的行)

SELECT... LOCK IN SHARE MODE;

SELECT...FOR UPDATE;

2、事务:ACID

一个事务就是一个执行单元:多个sql语句,要么都执行,要么都不执行。

时间: 2024-10-13 21:06:07

第三十一天 MySQL并发控制、存储引擎介绍、用户权限管理、缓存管理和数据类型选择的相关文章

上课笔记第三十一天MySQL并发控制、引擎、用户权限管理、查询缓存

1.MySQL并发控制机制        并发控制:每个会话会启动一个mysql线程               服务器层:用于控制锁               存储引擎层:并发访问控制基本上应该由存储引擎层完成 锁:lock                读锁:共享锁                写锁:独占锁 锁力度:                 表级锁:myisam表级锁                 行级锁:innodb行级锁 锁分类:                 隐式锁:由

Mysql的存储引擎介绍

下面主要介绍InnoDB.MyISAM和MEMEORY三种存储引擎. InnoDB存储引擎 InnoDB遵循CNU通用公开许可(GPL)发行.InnoDB已经被一些重量级互联网公司所采用,如雅虎.Slashdot和Google,为用户操作非常大的数据库提供了一个强大的解决方案.InnoDB给MySQL的表提供了事务.回滚.崩溃修复能力和多版本并发控制的事务安全.MySQL从3.23.34a开始包含InnoDB存储引擎.InnoDB是MySQL上第一个提供外键约束的表引擎,而且InnoDB对事务处

MySQL:存储引擎介绍

前言,什么是存储引擎 mysql中建立的库===>文件夹 库中建立的表===>文件 现实生活中我们用来存储数据的文件有不同的类型,每种文件类型对应各自不同的处理机制:比如处理文本用txt类型,处理表格用excel,处理图片用png等 数据库中的表也应该有不同的类型,表的类型不同,会对应mysql不同的存取机制,表类型又称为存储引擎. 存储引擎说白了就是如何存储数据.如何为存储的数据建立索引和如何更新.查询数据等技术的实现方法.因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称

mysql 的存储引擎介绍

在数据库中存的就是一张张有着千丝万缕关系的表,所以表设计的好坏,将直接影响着整个数据库.而在设计表的时候,我们都会关注一个问题,使用什么存储引擎.等一下,存储引擎?什么是存储引擎? 什么是存储引擎? MySQL中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平并且最终提供广泛的不同的功能和能力.通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能. 例如,如果你在研究大量的临时数据,你也许需要使用内存MySQL

mysql innodb存储引擎介绍

innodb存储引擎1.存储:数据目录.可以通过配置修改 存储文件:frm,ibd结尾的文件.frm存储表结构,ibd存储索引和数据 存储日志:ib_logfilen文件 2.innodb存储引擎开启或关闭: 关闭innodb_fast_shutdown= 0 完成所有的full purge和merge insert buffer操作(如:做InnoDB plugin升级时) 1 默认,不需要完成上述操作,但会刷新缓冲池中的脏页 2 不完成上述两个操作,而是将日志写入日志文件,下次启动时,会执行

Mysql ==》 存储引擎

一.什么是存储引擎? mysql中建立的表==>文件夹 库中建立的表==>文件 现实生活中我们用来存储数据的文件应该有不同的类型: 比如: 存文本用的txt类型,存表格用的excel,存图片png等. 数据库中的表也应该有不同的类型,表的类型不用,回对应mysql不同的存取机制,表类型又称为存储引擎. 存储引擎说白了就是如何存储数据?如何为存储的数据建立索引和如何更新.查询数据等技术的实现方法,因为关系数据库中 数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和操作此表的类型

MySQL之存储引擎(Day39)

一 什么是存储引擎 mysql中建立的库=====>文件夹 库中建立的表=====>文件 现实生活中我们用来存储数据的文件应该有不同的类型:比如存文本用txt类型,存表格用excel,存图片用png等 数据库中的表也应该有不同的类型,表的类型不同,会对应mysql不同的存取机制,表类型又称为存储引擎. 存储引擎说白了就是如何存储数据.如何为存储的数据建立索引和如何更新.查询数据等技术的实现方法.因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和操作此表的类型

mysql 存储引擎介绍

一  存储引擎解释 首先确定一点,存储引擎的概念是MySQL里面才有的,不是所有的关系型数据库都有存储引擎这个概念,后面我们还会说,但是现在要确定这一点. 在讲清楚什么是存储引擎之前,我们先来个比喻,我们都知道录制一个视频文件,可以转换成不同的格式,例如mp4,avi,wmv等,而存在我们电脑的磁盘上也会存在于不同类型的文件系统中如windows里常见的ntfs.fat32,存在于linux里常见的ext3,ext4,xfs,但是,给我们或者用户看懂实际视频内容都是一样的.直观区别是,占用系统的

MySQL存储引擎介绍 w

一 存储引擎解释 首先确定一点,存储引擎的概念是MySQL里面才有的,不是所有的关系型数据库都有存储引擎这个概念,后面我们还会说,但是现在要确定这一点. 在讲清楚什么是存储引擎之前,我们先来个比喻,我们都知道录制一个视频文件,可以转换成不同的格式,例如mp4,avi,wmv等,而存在我们电脑的磁盘上也会存在于不同类型的文件系统中如windows里常见的ntfs.fat32,存在于linux里常见的ext3,ext4,xfs,但是,给我们或者用户看懂实际视频内容都是一样的.直观区别是,占用系统的空