第十三节:存储引擎

存储引擎的介绍

  1. 存储引擎是数据库底层软件组件,数据库管理系统通过存储引擎实现的数据的存储、查询、更新和删除
  2. 数据库都支持多种不同的存储引擎,根据实际需要对不同的数据选择合适的存储引擎
  3. 注意:
    1. 不同的存储引擎提供不同的存储机制、索引技巧和锁定水平,不同的存储引擎还有各自的特定的功能
    2. mysql的核心组件就是存储引擎,innoDB 是默认的存储引擎
    3. 在mysql中,不需要对所有的操作都使用同一种引擎,可以根据不同的需求,对不同的表使用不同的引擎
  4. 几种常用的存储引擎:
    1. innoDB:mysql默认的存储引擎,支持事务、行级锁和外键,事务型数据库首选引擎
    2. myisam:是基于Isam建立的存储引擎,拥有较高的插入查询速度,但是不支持事务(ISAM:索引顺序存取法 )
    3.  memory:将表中数据存储到内存中,为查询和引用数据提供快速访问。
  5. show engines:用来查看数据库支持的引擎和默认的存储引擎。(support的值为yes表示支持该引擎,no表示不支持该引擎,default表示该引擎为默认的存储引擎)
  6. 临时修改数据库管理系统的存储引擎:SET default_storage_engine= 存储引擎名( 如:set default_storage_engine = MyISAM;  # 该设置只对当前会话有效)

MySQL存储引擎的选择

  1. 下表介绍了不同的存储引擎的特点功能:
    功能 MylSAM MEMORY InnoDB
    存储限制 256TB RAM 64TB
    支持事务 No No Yes
    支持全文索引 Yes No No
    支持树索引 Yes Yes Yes
    支持哈希索引 No Yes No
    支持数据缓存 No N/A Yes
    支持外键 No No Yes
  2. mysql选择存储引擎的原则
    1.  InnoDB:如果要有提交、回滚的事务安全能力和并发控制能力
    2.  MyISAM:如果数据表主要用来插入和查询数据,则MyISAM会拥有较高的处理效率。
    3. memory:如果只是临时存放数据,数据量不大,对数据的安全要求不高,可以选择将数据保存在内存的memory引擎中,mysql使用该引擎作为临时表,存放查询的中间结果集
posted @ 2020-01-06 13:40  WeiKing  阅读(102)  评论(0)    收藏  举报