mysql 表的存储类型_MySQL数据表存储引擎类型及特性

数据表类型(存储引擎)

常见引擎比对 特点 Myisam InnoDB Memory BDB Archive 存储限制 无穷制 64TB 有 没有 没有 事务安然 - 支撑 - 支撑 - 锁机制 表锁 行锁 表锁 页锁 行锁 B树索引 支撑 支撑 支撑 支撑 - 哈希索引 - 支撑 支撑 - - 全文索引 支撑 - - - - 集群索引 - 支撑 - - - 数据缓存 - 支撑 支撑 - - 索引缓存 支撑 支撑 支撑 - - 数据紧缩 支撑 - - - 支撑 空间应用 低 高 N/A 低 异常低 内存应用 低 高 中 低 低 批量插入速度 高 低 高 高 异常高 外键支撑 - 支撑 - - -

各引擎特点Myisam

mysql默认存储引擎,在磁盘上存储成三个文件.frm(存储表定义).MYD(MYData存储数据)。MYI(MYIndex存储索引);

没有事务支撑,不支撑行锁外键,是以当insert、update会锁定全部表,效力会低一些,MyIASM中存储了行数,如不雅表的读操作弘远年夜于写且不须要事务,MyISAM优选。

索引

5f77b327ea0dc3b394453b443f7b3db4.png-wh_651x-s_15924457.png

1.MyISAM引擎索引构造为B+Tree,个中B+Tree的数据域存储的为实际数据地址即索引和实际数据分开即非集合索引。

2.如图主键索引和帮助索引构造一向只不过主键索引请求key独一。

供给了对数据库ACID事务支撑场实现SQL标准的四种隔离级别,供给行级锁和外键束缚。Mysql运行时Innodb会在内存中建立缓冲池用于缓冲数据和索引,该引擎不支撑fulltext类型索引且没有保存表的行数,select count(*) from table 血药扫全表。

须要事务操作时Innodb首选,锁力度小,写操作不会锁定权标,所以并发高时Innodb引擎效力更高,

比拟Myisam写处理效力差一些会占用更多的磁盘空间保存数据和索引。

索引

e5942d68f9c51287d200354e622e15c7.png

3.MyISAM中索引检索算法起首安装B+Tree搜刮算法搜刮索引,如不雅key存在,则掏出data域的值,然后以data域的值为地址,攫取响应数据记录。Innodb

1.Innodb索引采取B+Tree且Innodb索引文件本身就是数据文件即B+Tree的数据域存储的就是实际的数据如图Primary Key即集合索引。这个索引的key就是数据表主键,Innodb表本身就是主索引。

2.Innodb帮助索引数据域存储的是响应的主键的值而不是地址,经由过程帮助索引查找时先找到主键再经由过程主键查找数据。所以主键不建议过长不然帮助索引会变得很大年夜。

3.Innodb必须有主键如不雅没有显示指定Mysql会主动选择一个独一标识的数据记录为主键。

4.集合索引按主键搜刮效力十分高效,帮助索引必须检索两遍。

5.基于Innodb索引构造可以解释为什么不建议应用过长的主键,为什么不建议应用非单调(非递增)的记录做主键,B+Tree索引构造导致应用非单调做主键会相当低效。

常用敕令show engines; 查看当前支撑的引擎和默认引擎

show table status from mytest; show create table tablename;查看数据表引擎

修改默认引擎 my.ini [mysqld]下增长 default-storage-engine=InnoDB

名词概念ACID: (Atomicity)原子性,要么全部履行要么不履行;(Consistency)一致性,事务的运行不改变数据库中数据的一致性;(Isolation)自力性,也称隔离性两个以上的食物不会出现交错履行的状况;(Durability)持久性,事务履行成功后数据持久保存。

BTree 二叉搜刮树

1.所有非叶子几点最多有两个子节点(left right)

2.所有节点存储一个关键字

3.非叶子节点左指针指向小于其关键字的子树,右指针指向大年夜于其关键字的子树

推荐阅读

5G被业界视为概绫屈性的无线技巧,但作为下一代标准基本之一的高频谱请求运营商采取与以进步然不合的方法来构>>>详细阅读

地址:http://www.17bianji.com/lsqh/37307.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/457266.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

78.Subsets

Given a set of distinct integers, nums, return all possible subsets. Note: The solution set must not contain duplicate subsets. For example,If nums [1,2,3], a solution is: [[3],[1],[2],[1,2,3],[1,3],[2,3],[1,2],[] ]昨天中秋加上头非常痛,歇了一天…

python xyz_python中xyz坐标的欧几里德距离

使用生成器表达式的简单解决方案From PEP 289 Generator ExpressionsRationaleExperience with list comprehensions has shown their widespread utilitythroughout Python. However, many of the use cases do not need to have a full list created in memory. Instead, the…

[转载]SYSCALL_DEFINE宏定义

来源:http://blog.csdn.net/p_panyuch/article/details/5648007 SYSCALL_DEFINE3 在何处定义? #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__) #define SYSCALL_DEFINEx(x, sname, ...) / _…

java连接数据库sql server_将SQL Server数据库连接到Java

我的项目没有使用任何IDE。整个编码使用Textpad完成。所以我需要帮助连接sql server数据库和我的项目。这是bean类,其中编写了用于数据库连接的业务逻辑。我已经安装了SQL服务器并使用Windows身份验证创建了一个名为“vt”的数据库。我甚至为数据库创建了dsn&#x…

ORM中的Model与DDD中的DomainModel

0.引言 在现有的系统开发中,大部分的系统应该都会用到ORM,无论用的是EF还是NHibernate。作为对象和持久化数据的桥梁,ORM确实非常方便,以至于在DDD的时候,我们很自然的将 ORM中的Model(实体)表达成DDD中的 DomainModel…

基础总结

Unsafe Java线程池 HashCode 垃圾收集 关于引用(弱引用、强引用等等)转载于:https://www.cnblogs.com/aquariusm/p/6340303.html

jsp java语法_JSP基础语法

Java JSP 的 JSP基础语法在本章中,我们将了解和学习JSP语法。并了解JSP开发涉及的简单语法(即元素)的基本用法。为了方便演示,使用Eclipse创建一个动态Web项目:jspsyntax,用于运行以下涉及到的示例代码。JSP的元素JSP的元素如下所…

iOS - Core Animation 核心动画

1、UIView 动画 具体讲解见 iOS - UIView 动画2、UIImageView 动画 具体讲解见 iOS - UIImageView 动画3、CADisplayLink 定时器 具体讲解见 iOS - OC NSTimer 定时器CADisplayLink 是一个能让我们以和屏幕刷新率相同的频率将内容画到屏幕上的定时器。我们在应用中创建一个新的…

navicat 官方使用手册,中文版,快捷键大全

2017年1月23日09:52:51 这个官方中文文档很详细 https://www.navicat.com.cn/manual/online_manual/cn/navicat/win_manual/index.html https://community.navicat.com/videos/cn 官方中文论坛部分视频教程 快捷键 Navicat 主窗口 键动作CTRLG设置位置文件夹CTRL#(#…

Linux inode与文件系统关系

inode只有在linux文件系统的概念(ext3,ext4) 、inode节点数量与文件存储的关系。 二、在文件系统初始化时设置合适的节点数量。 linux服务器在存储文件小而数量多的情况下,需要考虑inode用完的情况。转载于:https://www.cnblogs.com/lirunzhou/p/5883706…

评分系统 java_C自动评分系统

我无法按照规范完成作业 . 这是分配方案:大学迫切需要一个自动测试评分系统 . 使用C,为大学写一个评分系统,并对至少五名学生的测试进行评分 . 要创建评分系统,请按照以下步骤操作:首先询问测试中的问题数量然后询问每…

当Terraform遇上ECS(一)——DataSource篇

背景 越来越多的公司已经熟知并运用“基础设施即代码”来构建和维护自己的云基础设施。目前也有许多的自动化构建工具协助用户通过脚本进行云资源的部署和生命周期的管理,如:Terraform、Ansible、Chef等。但是,在实施过程中,都遇到…

【BZOJ 1597】 [Usaco2008 Mar]土地购买 (斜率优化)

1597: [Usaco2008 Mar]土地购买 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 3601 Solved: 1322Description 农夫John准备扩大他的农场,他正在考虑N (1 < N < 50,000) 块长方形的土地. 每块土地的长宽满足(1 < 宽 < 1,000,000; 1 < 长 < 1,000,000). …

深入浅出学java_《深入浅出学JAVA开发初级》

整体说明&#xff1a;Java私塾的这一套视频是完全真实课堂录制&#xff0c;实际上课时间为十一天&#xff0c;主要内容包括&#xff1a;1&#xff1a;系统完整的学习Java的基础知识2&#xff1a;深入剖析重点知识点的理论3&#xff1a;超多的编程题目和程序讲解4&#xff1a;最…

重定位与链接脚本

1.为什么需要重定位   位置无关编码(PIC&#xff0c;position independent code)&#xff1a;汇编源文件被编码成二进制可执行程序时编码方式与位置&#xff08;内存地址&#xff09;无关。  位置有关编码&#xff1a;汇编源码编码成二进制可执行程序后和内存地址是有关的。…

Linux bashrc和profile的用途和区别

导读使用终端ssh登录Linux操作系统的控制台后&#xff0c;会出现一个提示符号&#xff08;例如&#xff1a;#或~&#xff09;&#xff0c;在这个提示符号之后可以输入命令&#xff0c;Linux根据输入的命令会做回应&#xff0c;这一连串的动作是由一个所谓的Shell来做处理。Shel…

python读取word文档结构图_Word 有什么技巧,让你相见恨晚?

Word作为日常办公最常用的软件之一&#xff0c;其实真没你想得那么简单&#xff01;你不知道的每一个技巧&#xff0c;都会让你相见恨晚&#xff01;每当身边的小伙伴询问这些疑难杂症时&#xff0c;我都会抛出这张图…真的没骗你&#xff0c;我们遇到的 99% 的Word难题&#x…

Golang 特性简介

by sheepbao 主要大概介绍go语言的历史和特性&#xff0c;简单的入门。 来历 很久以前&#xff0c;有一个IT公司&#xff0c;这公司有个传统&#xff0c;允许员工拥有20%自由时间来开发实验性项目。在2007的某一天&#xff0c;公司的几个大牛&#xff0c;正在用c开发一些比较繁…

HTML实体字符转化为HTML标签

html_entity_decode方法 参数描述string必需。规定要解码的字符串。flags 可选。规定如何处理引号以及使用哪种文档类型。 可用的引号类型&#xff1a; ENT_COMPAT - 默认。仅解码双引号。ENT_QUOTES - 解码双引号和单引号。ENT_NOQUOTES - 不解码任何引号。规定所使用文档类型…