• Mysql存储引擎


    MyISAM存储引擎

           Mysql5.5版本以前的默认存储引擎,大部分系统表、临时表(在排序、分组等操作中,数量超过一定大小后,由查询优化器建立的临时表)使用MyISAM存储引擎

           构成:MYD:数据文件;MYI:索引文件

            特性: 支持表级锁,所以在并发性高的情况下,性能不是很好。

                        表损坏修复(检查表:check table tabllename;修复表:repair  table tablename)

                         支持表的全文索引

                        支持压缩操作(减少磁盘IO),压缩后不能再写入,只能读。myisampack命令行工具

                         不支持事务

    Innodb存储引擎:

           5.5版本开始,mysql中建立数据库默认存储引擎为Innodb。Innodb使用表空间存储数据(系统表空间,独立表空间)

                 mysql> show variables like 'innodb_file_per_table';

                  innodb_file_per_table=on-----------独立表空间:tablename.ibd

                   innodb_file_per_table=off-----------系统表空间:ibdataX

                   系统表空间,独立表空间对比:

                               5.5版本前默认使用系统表空间

                              系统表空间无法简单收缩文件大小(删除表数据时,系统表空间不会缩小空间)

                              独立表空间可以通过optimize table命令收缩系统文件

                              系统表空间可能会产生IO瓶颈,独立表空间可同时对多个表同时进行IO操作

                  系统表空间到独立表空间的转换:

                                1、使用mysqldum导出所有表数据

            2、停止mysql服务,修改相关参数,删除Innodb相关文件

            3、重启mysql服务,重建Innodb独立表空间

            4、重新导入数据

              Innodb存储引擎特性:

                    事务性存储引擎(原子性、隔离性、一致性、持久性)

                    Redo日志(事务提交后,修改后的数据存放到缓冲器,每隔一段时间刷写到磁盘)mysql> show variables like 'innodb_log_buffer_size';

                     Undo日志(未提交事务的回滚---一致性、原子性)

                    行级锁能支持更大的并发

    CSV存储引擎:

               数据以文件方式存储在文件中

               .CSV文件存储表内容

       .CSM文件存储表元数据和表状态和数据量

       .frm文件存储表结构信息

               所有列不能为空、不支持索引

    Archive存储引擎:

               以zlib对表数据进行压缩,磁盘IO更少

              数据存储在ARZ后为后缀的文件中

              只支持inert和select操作,只允许在自增ID列建立索引

    Memory存储引擎:

           数据存放在内存中,读写速度快,但是服务器重启或宕机数据会丢失

          使用场景:

                用于查找或者映射表,例如邮编和地区的对应表

               保存数据分析中产生的中间表

                缓存周期性聚合数据的结果表

  • 相关阅读:
    南阳oj 814 又见拦截导弹
    南阳 zb的生日和邮票分你一般(01背包思路)
    导弹拦截(最长下降子序列)变形
    控件绝对定位函数
    小玩意
    java获取本机所有可用字体
    按键监听类KeyListener及适配器改良方案
    编译php-memcached扩展
    Memcached安装,启动,连接
    Apache配置虚拟主机
  • 原文地址:https://www.cnblogs.com/liyuanshu/p/13289257.html
Copyright © 2020-2023  润新知