摘要:
MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM(Indexed Sequential Access Method:有索引的顺序访问方法)所改良。虽然性能极佳,但却有一个缺点:不支持事务处理(transaction)。 InnoDB是MySQL的数据库引擎之一,为MySQL 阅读全文
摘要:
一、定义数据库和实例 数据库: 物理操作系统文件或其他形式文件类型的集合。数据库文件可以是frm、MYD、ibd 结尾的文件。 从概念上来说,数据库是文件的集合,是依照某种数据模型组织起来并存放于二级存储器的数据集合; 实例: MySQL数据库由后台进程以及一个共享内存区组成。共享内存可以被运行的后 阅读全文
摘要:
问题1. 数据库为什么要设计索引? 图书馆存了1000W本图书,要从中找到《架构师之路》,一本本查,要查到什么时候去? 于是,图书管理员设计了一套规则: 一楼放历史类,二楼放文学类,三楼放IT类… IT类,又分软件类,硬件类… 软件类,又按照书名音序排序… 以便快速找到一本书。 与之类比,数据库存储 阅读全文
摘要:
一、MyISAM的索引 MyISAM的索引与行记录是分开存储的,叫做非聚集索引(UnClustered Index)。 其主键索引与普通索引没有本质差异: 有连续聚集的区域单独存储行记录 主键索引的叶子节点,存储主键,与对应行记录的指针 普通索引的叶子结点,存储索引列,与对应行记录的指针 画外音:M 阅读全文
摘要:
(一)关于存储引擎 创建合适的索引是SQL性能调优中最重要的技术之一。在学习创建索引之前,要先了解MySql的架构细节,包括在硬盘上面如何组织的,索引和内存用法和操作方式,以及存储引擎的差异如何影响到索引的选择。 MySQL有很多种衍生版本,这些衍生版本支持更多不同种类的存储引擎。本文主要讨论三种M 阅读全文