MYSQL存储引擎InnoDB,MyISAM,读锁(共享锁),写锁(互斥锁、排他锁),行级锁,表级锁

MYSQL存储引擎InnoDB,MyISAM,读锁(共享锁),写锁(互斥锁、排他锁),行级锁,表级锁

存储引擎(处理表的处理器)

  1、基本操作

    1、查看所有存储引擎

      mysql> show engines;

    2、查看已有表的存储引擎

      mysql> show create table 表名;

    3、创建表指定

      create table 表名(...)engine=myisam;

    4、已有表

      alter table 表名 engine=innodb;

2、

  1、目的 :解决客户端并发访问的冲突问题

  2、锁分类

    1、锁类型

      1、读锁(共享锁)

        select :加读锁之后别人不能更改表记录,但可以进行查询

      2、写锁(互斥锁、排他锁)

        insert、delete、update

  加写锁之后别人不能查、不能改

    2、锁粒度

      1、表级锁 :myisam

      2、行级锁 :innodb

  3、常用存储引擎特点

    1、InnoDB特点

      1、共享表空间

        表名.frm :表结构和索引文件

  表名.ibd :表记录

      2、支持行级锁

      3、支持外键、事务操作

    2、MyISAM特点

      1、独享表空间

        表名.frm :表结构

  表名.myd :表记录 mydata

  表名.myi :索引文件 myindex

      2、支持表级锁

  4、如何决定使用哪个存储引擎

    1、执行查操作多的表用 MyISAM(使用InnoDB浪费资源)

    2、执行写操作多的表用 InnoDB


最后编辑于:2020/12/04作者: 牛逼PHP

发表评论