查询当前默认存储引擎
    SHOW VARIABLES LIKE 'table_type' ;
    
查询当前数据库支持的引擎有哪些 :
    SHOW ENGINES \G   -- 推荐这种 , 显示更多信息
    SHOW VARIABLES LIKE 'have%' ;
 
建表时指定存储引擎
    CREATE TABLE tbl_name (
        col_1 BIGINT(20) NOT NULL AUTO_INCREMENT
        ,col_2 VARCHAR(15)
        , PRIMARY KEY(col_1)
    ) ENGINE = MyISAM DEFAULT CHARSET = gbk ;
    
修改已有表的存储引擎
    ALTER TABLE tbl_name SET ENGINE = InnoDB ;
    
展示建表语句
    SHOW CREATE TABLE tbl_name \G
    
给MEMORY存储引擎的表指定 HASH/TREE索引
    CREATE INDEX xxx_index USING HASH/TREE ON tbl_memory(col_xxx) ;
 
查询索引信息
    SHOW INDEX FROM tbl_memory \G
    
更换索引(需要两步操作:先drop再create)
    DROP INDEX xxx_index ON tbl_memory ;
    CREATE INDEX xxx_else_index USING BTREE on tbl_memory(col_xxx) ;
    
MEMORY 使用心得 :    
    MySQL启动时 使用 --init-file 选项 , 利用 `INSERT INTO .. SELECT .. ` 或者 `LOAD DATA INFILE` 语句 , 可以从持久稳固的数据源加载数据 .
    当不需要MEMEOY表时 , 执行 `DELETE FROM` 或 `TRUNCATE TABLE` 或 `DROP TABLE` 语句来释放内存 .
    
MERGE存储引擎的使用 :
    CREATE TBALE xxx_01 ..
    CREATE TABLE xxx_02 ..
    
    CREATE TABLE xxx_merge(
        col_1 xxx
        ,col_2 xxx
        ,INDEX (xxx)
    ) ENGINE = merge UNION(xxx_01 , xxx_02) INSERT_METHOD=LAST
    
    向xxx_01 /xxx_02 表中跟新数据都会影响 xxx_merge表 ,
    而向xxx_merge表中插入数据的时候 , 会影响xxx_02表 , 因为INSERT_METHOD = LAST ;
    并且 即使 插入表的数据 是符合 xxx_01 的 , 比如时间 , 也不会智能的插入到xxx_01中 ,这也是和分区表不同的地方.
    
 
存储引擎的选择 :
    MyISAM : 读和插入 操作多 , 而更新和删除操作少 , 并且对事务完整性/并发性 要求不是很高的 场景
    InnoDB : 适合 并发性/事务完整性 要求高 , 有许多 更新/删除操作的 场景 ; 提供了完整提交(commit) 和事务回滚(rollback)
    MEMORY : 数据保存在缓存中 , 可以提供快速定位. 缺陷 大小有限制 , 适合更新不频繁的小表 . 还要注意 数据库异常 后 数据是可以恢复 ;
    MERGE  : 用于将一系列等同的MyISAM表 以逻辑方式组合在一起,并作为一个对象引用它们.
优点在于可以突破对单个MyISAM表大小的限制.
通过将不同的表分布在多个磁盘上,可以有效地改善MERGE表的访问效率.对数据仓储等VLDB环境十分适合.
    
 
    
    
    
     

08 MySQL存储引擎的更多相关文章

  1. Mysql存储引擎及选择方法

    0x00 Mysql数据库常用存储引擎 Mysql数据库是一款开源的数据库,支持多种存储引擎的选择,比如目前最常用的存储引擎有:MyISAM,InnoDB,Memory等. MyISAM存储引擎 My ...

  2. Mysql存储引擎概念特点介绍及不同业务场景选用依据

    目录 MySQL引擎概述 1 MySAM引擎介绍 2 什么是InnoDB引擎? 3 生产环境中如何批量更改MySQL引擎 4 有关MySQL引擎常见企业面试题 MySQL引擎概述 Mysql表存储结构 ...

  3. 常用Mysql存储引擎--InnoDB和MyISAM简单总结

    常用Mysql存储引擎--InnoDB和MyISAM简单总结 2013-04-19 10:21:52|  分类: CCST|举报|字号 订阅     MySQL服务器采用了模块化风格,各部分之间保持相 ...

  4. Mysql存储引擎比较

    Mysql作为一个开源的免费数据库,在平时项目当中会经常使用到,而在项目当中我们的着重点一般在设计使用数据库上而非mysql本身上,所以在提到mysql的存储引擎时,一般都不曾知道,这里经过网上相关文 ...

  5. MySQL存储引擎之Myisam和Innodb总结性梳理

    Mysql有两种存储引擎:InnoDB与Myisam,下表是两种引擎的简单对比   MyISAM InnoDB 构成上的区别: 每个MyISAM在磁盘上存储成三个文件.第一个 文件的名字以表的名字开始 ...

  6. MySQL存储引擎的实际应用以及对MySQL数据库中各主要存储引擎的独特特点的描述

    MySQL存储引擎的实际应用以及对MySQL数据库中各主要存储引擎的独特特点的描述: 1.MySQL有多种存储引擎: MyISAM.InnoDB.MERGE.MEMORY(HEAP).BDB(Berk ...

  7. 【转】mysql存储引擎

    http://www.cnblogs.com/kevingrace/p/5685355.html Mysql有两种存储引擎:InnoDB与Myisam,下表是两种引擎的简单对比   MyISAM In ...

  8. Mroonga 3.0.8 发布,MySQL 存储引擎

    Mroonga 3.0.8 支持 REPAIR TABLE 支持损坏的 groonga 数据库. Mroonga 是一个 MySQL 存储引擎,基于 Groonga,提供完整的全文搜索引擎.

  9. Mysql存储引擎之TokuDB以及它的数据结构Fractal tree(分形树)

    在目前的Mysql数据库中,使用最广泛的是innodb存储引擎.innodb确实是个很不错的存储引擎,就连高性能Mysql里都说了,如果不是有什么很特别的要求,innodb就是最好的选择.当然,这偏文 ...

随机推荐

  1. 理解错误的 Arrays.asList()

    简介 Arrays.asList() 作用是将一个数组转换为一个List 集合. String[] myArray = { "Apple", "Banana", ...

  2. Python学习笔记007

    赋值运算符 num+=1 num=num+1 num-=1 num=num-1 num*=2 num=num*2 num/=2 num=num/2 num//=2 num=num//2 num%=2 ...

  3. 学习笔记(2)- BioBERT

    Jinhyuk Lee, Wonjin Yoon, Sungdong Kim, Donghyeon Kim, Sunkyu Kim, Chan Ho So, Jaewoo Kang, BioBERT: ...

  4. nacos集群配置

    一.    环境准备 Nacos 依赖 java环境来运行.如果您是从代码开始构建并运行Nacos,还需要为此配置 Maven环境,请确保是在以下版本环境中安装使用: 64 bit OS,支持 Lin ...

  5. 分支预测(branch prediction)

    记录一个在StackOverflow上看到一个十分有趣的问题:问题. 高票答案的优化方法: 首先找到罪魁祸首: if (data[c] >= 128) sum += data[c]; 优化方案使 ...

  6. winform和wpf里必知的多线程知识

    背景: 很多小伙伴经常在群里问线程的问题,平时我经常转一些视频教程这些人不看,我就自己写个总结吧 不过还是要注意的是,切换本来就不能太频繁,要一口气改. wpf的viewmodel就不需要UI线程,更 ...

  7. Java 使用 JDBC 连接数据库的代码整合[MySql、SqlServer、Oracle]-[经过设计模式改造](2020年寒假小目标01)

    日期:2020.01.08 博客期:121 星期三 今天对过去整个大二和大三上半学期用到的数据库的方法进行汇总,可以有效的使用.套用,每一个部分都有<软件设计模式>知识,上述代码满足了开闭 ...

  8. JuJu Beta Postmortem

    JuJu demo demo 项目github地址 JuJu   设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 完成基于Julia语言的NER mod ...

  9. Day1学习总结

    # 1.print()# 2.input()# 3.if:# elif# else#4.while循环#5.for i in range()#6.break.continue#7.import ran ...

  10. 078、Java数组之数组的引用传递

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...