首页 > 数据库技术 > 详细

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

时间:2016-07-19 11:26:15      阅读:146      评论:0      收藏:0      [点我收藏+]

一、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语句,要么都执行,要么都不执行。

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

原文:http://liwenjia.blog.51cto.com/2656598/1827523

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!