MYSQL系列-Mysql存储引擎选择
MYSQL系列-Mysql存储引擎选择
//查看当前数据库支持的存储引擎
show engines \G;
创建表的时候可以通过engine=MyISAM指定存储引擎
MyISAM:
1、MYISAM不支持事务也不支持外键,其优势在于访问速度快,对事务完整性没有要求或者以select、insert为主的应用基本都可以使用MyISAM引擎。
2、MyISAM的表可能会损坏,可以使用check table语句来检查MyISAM表的健康,并可以使用repair table语句修复一个损坏的MyISAM表。
check语法:
CHECK TABLE tb_name[,tbl_name] ... [option] ...
option= {QUICK | FAST | MEDIUM | EXTENDED | CHANGED}
QUICK: 不扫描行,不检查错误的链接
FAST: 只检查没有被正确关闭的表。
CHANGED: 只检查上次检查后被更改的表,和没有被正确关闭的表。
MEDIUM: 扫描行,以验证被删除的链接是有效的。也可以计算各行的关键字校验和,并使用计算出的校验和验证这一点。
EXTENDED:对每行的所有关键字进行一个全面的关键字查找。这可以确保表是100%一致的,但是花的时间较长。
mysql> check table t1;//显示信息一般是OK证明没有问题
+---------+-------+----------+----------+
| Table | Op | Msg_type | Msg_text |
+---------+-------+----------+----------+
| test.t1 | check | status | OK |
+---------+-------+----------+----------+
3、MyISAM支持三种不同的存储格式
静态表、动态表、压缩表 InnoDB:
1、这是Mysql5.7默认的存储引擎,有很多特性在官方文档上可以查到,主要使用的就是InnoDB的引擎。
InnoDB引擎支持事务和外键,
2、在导入多表数据时,如果存在外键的话会检查导入的数据,因此这是可以先暂时关闭外键约束来加快处理速度,关闭命令是:
SET FOREIGN_KEY_CHECKS=0; 执行完毕之后再把外键约束打开:SET FOREIGN_KEY_CHECKS=1;
3、对于InnoDB类型的表,外键信息可以使用show create table或者show table status命令显示。 MEMORY:
MEMORY存储引擎使用存在于内存中的内容来创建表,每个MEMORY实际对应一个磁盘文件。MEMORY的访问非常快,并且使用HASH索引
给MEMORY创建索引时可以指定使用HASH还是BTREE索引。MEMORY引擎主要用于哪些内容变化不频繁的代码表,或者作为统计操作的中间代码表。 MERGE:
MERGE引擎是一组MyISAM表的组合,这些MyISAM表的表结构必须完全相同,对MERGE表的操作实际上是对MyISAM表的操作。
...... 存储引擎的选择需要根据应用系统的实际情况,对于初学者,入门MySql的人员可以简单了解,具体应用时需要参考文档。
Mysql5.x手册 http://doc.mysql.cn/Mysql官网 http://dev.mysql.com/
Mysql5.7参考手册 http://dev.mysql.com/doc/refman/5.7/en/
其他参考手册CSDN-Mysql知识库
author: liuning
MYSQL系列-Mysql存储引擎选择的更多相关文章
- mysql配置与存储引擎与字段类型与约束条件
目录 字符编码与配置文件 存储引擎 创建表的完整语法 字段类型 整型 浮点型 字符类型 数字的含义 枚举与集合 日期类型 约束条件 字符编码与配置文件 在MySQL5.X系列中,显示的字符编码有多种, ...
- MySQL的多存储引擎架构
支持多种存储引擎是众所周知的MySQL特性,也是MySQL架构的关键优势之一.如果能够理解MySQL Server与存储引擎之间是怎样通过API交互的,将大大有利于理解MySQL的核心基础架构.本文将 ...
- mysql缓存、存储引擎
一. mysql查询缓存 查询缓存不是mysql的子系统,却是查询优化和执行子系统不可缺少的组成部分.它不仅可以缓存查询结果,还可以缓存查询结果本身.如果某个查询的结果就在缓存里, 系 ...
- MySQL数据库InnoDB存储引擎中的锁机制
MySQL数据库InnoDB存储引擎中的锁机制 http://www.uml.org.cn/sjjm/201205302.asp 00 – 基本概念 当并发事务同时访问一个资源的时候,有可能 ...
- MySQL支持多种存储引擎
MySQL的强大之处在于它的插件式存储引擎,我们可以基于表的特点使用不同的存储引擎,从而达到最好的性能. MySQL有多种存储引擎:MyISAM.InnoDB.MERGE.MEMORY(HEAP).B ...
- MySQL的常见存储引擎介绍与参数设置调优
MySQL常用存储引擎之MyISAM 特性: 1.并发性与锁级别 2.表损坏修复 check table tablename repair table tablename 3.MyISAM表支持的索引 ...
- MySQL的常见存储引擎介绍与参数设置调优(转载)
原文地址:http://www.cnblogs.com/demon89/p/8490229.html MySQL常用存储引擎之MyISAM 特性: 1.并发性与锁级别 2.表损坏修复 check ta ...
- Mysql 版本号、存储引擎、索引查询
[1]Mysql 版本号.存储引擎.索引查询 # 查看数据库版本号 SELECT VERSION(); # 查看数据库支持的引擎(默认即Support == DEFAULT行) SHOW ENGINE ...
- mysql中有多种存储引擎,每种引擎都有自己的特色
mysql中有多种存储引擎,每种引擎都有自己的特色. 用途: MyISAM:快读, Memory:内存数据, InnoDB:完整的事务支持 锁: MyISAM:全表锁定, Memory:全表锁定, I ...
随机推荐
- sqlServer sa用户登陆失败的解决办法
sqlserver sa用户登陆失败的解决办法 如下图以此模仿: 1.右键-属性 2.找到安全: 3.勾选如图: 4.sa用户密码重置: 5.服务重启:
- Jmeter_实现Excel文件导出到本地
一般而言,对于页面的“导出”操作,主要经历如下两个操作:①根据数据库的内容,将文件导出到应用服务器上:②将服务器上的文件下载到本地电脑: Jmeter同LoadRunner类似,只能记录服务端与客户端 ...
- django 实现电子支付功能
思路:调用第三方支付 API 接口实现支付功能.本来想用支付宝来实现第三方网站的支付功能的,但是在实际操作中发现支付宝没有 Python 接口,网上虽然有他人二次封装的的 Python 接口,但是对我 ...
- 从map中取出最大或最小value对应的key---多种写法
package com.yuwanlong.hashing; import java.util.ArrayList; import java.util.Collections; import java ...
- root@localhost
root代表当前的用户 也就是说你使用root的帐号登录的localhost是系统的名字 没有设置系统名字的时候默认名称是localhost/ 代表你当前所处的目录位置 你当前在根目录下# 是用户提示 ...
- Flink学习笔记:Connectors概述
本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...
- SDUT OJ 数据结构实验之图论六:村村通公路(最小生成树)
数据结构实验之图论六:村村通公路 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Descri ...
- Application received signal SIGABRT
Application received signal SIGABRT (null) (( 0 CoreFoundation 0x0000000182bbadc8 <redacted> + ...
- AtCoder - 2565 枚举+贪心
There is a bar of chocolate with a height of H blocks and a width of W blocks. Snuke is dividing thi ...
- js自定义对象 (转)
原文地址:https://sjolzy.cn/js-custom-object.html 29 March 2010 9:53 Monday by 小屋 javascript进阶之对象篇 一,概述 在 ...