ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux:Day40(下) Mariadb存储引擎引编译安装

2019-09-16 12:50:23  阅读:256  来源: 互联网

标签:存储 name tb1 支持 索引 Linux Mariadb 数据 Day40


MySQL存储引擎:

  表类型:

    CREATE TABLE ... ENGINE=

  InnoDB:

    处理大量的短期事务;

    数据存储在“表空间”中;

      (1) 所有InnoDB表的数据和索引放置于同一个表空间中;

            表空间文件:datadir定义的目录下

               数据文件:ibdate1,ibdata2,....

      (2) 每个表单独使用一个表空间存储表的数据和索引;

        Innodb_file_per_table=ON

        数据文件(数据和索引):tb1_name.ibd

        表格式定义:tab1_name.frm

    基于MVCC来支持高并发,支持所有的四个隔离级别,默认级别为REPEATABLE READ;间隙锁防止幻读;

    使用聚集索引

    支持“自适应hash索引”

    锁粒度:行级锁

 

    MariaDB (XtraDB (percona))

  特性总结:

    数据存储:表空间

    并发:MVCC,间隙锁

    索引:聚集索引、辅助索引

    性能:预计操作、自适应hash、插入缓存区

    备份:支持热备(xtrabacup)

 

  MyISAM:

    支持全文索引(FULLTEXT index)、压缩、空间函数(GIS);但不支持事务,且为表级锁;

    崩溃后无法安全恢复

    适用场景:只读(或者写较少)、表较小(可以接受长时间进行修复操作)

      Aria:crash-safe

    文件:

      tb1_name.frm:表格式定义

      tb1_name.MYD:数据文件

      tb1_name.MYI:索引文件

    特性总结:

      加锁和并发:表级别

      修复:手工或自动修复、但可能丢失数据

      索引:非聚集索引

      延迟更新索引键

      压缩表

  行格式:dynamic,fixed,compressed,compact,redundent

 

其它的存储引擎:

  CSV:将普通的CSV(字段通过逗号分隔)作为MySQL表使用;

  MRG_MYISAM:将多个MyISAM表合并成为一个虚拟表;

  BLACKHOLE:类似于/dev/null,不真正存储任何数据;

  MEMORY:所有数据都保存于内存中,内存表;支持hash索引;表级锁;

    临时表

  PERFORMANCE_SCHEMA:伪存储引擎;其内部数据只有在mysql启动起来才会存在,关闭消失

  ARCHIVE:仅支持SELECT和INSERT操作;支持行级锁和专用缓存区;

  FEDERATED:用于访问其它远程MYSQL服务器一个代理,它通过创建一个到远程MYSQL服务器的客户端连接,并将查询传输到远程服务器执行,而后完成数据存取;

    在MariaDB上实现是FederatedX

  

  MariaDB支持的其它存储引擎:

    

  

  

  

标签:存储,name,tb1,支持,索引,Linux,Mariadb,数据,Day40
来源: https://www.cnblogs.com/sq5288/p/11526733.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有