MySQL--高性能MySQL笔记一】的更多相关文章

索引 何为索引?有什么作用? 索引是一种用于快速查询和检索数据的数据结构.常见的索引结构有: B 树, B+树和 Hash. 索引的作用就相当于目录的作用.打个比方: 我们在查字典的时候,如果没有目录,那我们就只能一页一页的去找我们需要查的那个字,速度很慢.如果有目录了,我们只需要先去目录里查找字的位置,然后直接翻到那一页就行了. ​ 索引的优缺点 优点 : 使用索引可以大大加快 数据的检索速度(大大减少检索的数据量), 这也是创建索引的最主要的原因. 通过创建唯一性索引,可以保证数据库表中每一…
1.锁 为什么需要锁?因为数据库要解决并发控制问题.在同一时刻,可能会有多个客户端对表中同一行记录进行操作,比如有的在读取该行数据,其他的尝试去删除它.为了保证数据的一致性,数据库就要对这种并发操作进行控制,因此就有了锁的概念. 1.1锁的分类 从对数据操作的类型(读\写)分 读锁(共享锁):针对同一块数据,多个读操作可以同时进行而不会互相影响. 写锁(排他锁):当前写操作没有完成前,它会阻断其他写锁和读锁. 大多数时候,MySQL锁的内部管理都是透明的. 1.2锁粒度(Lock granula…
前段时间看了<高性能MySQL>中的选择优化的数据类型,这里主要是做一下笔记. 首先数据选择有几个简单原则: 更小的通常更好.一般情况下,应该尽量使用可以正确存储数据的最小数据类型.例如只需要存 0~200,tinyint unsigned 更好.更小的数据类型通常更快,因为它们占用更少的磁盘.内存和 CPU 缓存,并且处理时需要的 CPU 周期也更少. 简单就好.简单数据类型的操作通常需要更少的 CPU 周期.例如,整型比字符操作代价更低,因为字符集和校对规则(排序规则)使字符比较 比 整型…
第5章 创建高性能的索引 本文为<高性能Mysql 第三版>第四章读书笔记,Mysql版本为5.5 索引基础 索引的重要性:找一本800面的书的某一段内容,没有目录也没有页码(页码也可类比是索引) 索引类型 B-Tree 索引 : 可用于全值匹配.最左前缀匹配.列前缀匹配.范围值匹配.精确匹配某一列并范围匹配另外一列.只访问索引的查询 ,原文截图: 哈希索引 : 只适用于精确匹配查询,不适用于范围查询 空间数据索引 : 可以有效地使用任意维度来组合查询 全文索引 : 做的事情类似于搜索引擎,而…
第4章 Schema 与数据类型优化 本文为<高性能Mysql 第三版>第四章读书笔记,Mysql版本为5.5 选择优化的数据类型 选择合适数据类型的三个原则 更小的通常更好 - 速度更快,占用更少 简单就好 - 简单数据类型占用更少的CPU周期,例如整型的比字符串操作代价更低 尽量避免NULL - 查询包含NULL的列,对Mysql来说更难优化,因为会使得索引,索引统计和值比较更为复杂 整数类型 整数的类型有:TINYINT .SMALLINT.MEDIUMINT.INT.BIGINT,分别…
此书不但帮助MySQL初学者提高使用技巧,更为有经验的MySQL DBA指出了开发高性能MySQL应用的途径.全书包括14章,内容覆盖MySQL系统架构.设计应用技巧.SQL语句优化.服务器性能调优.系统配置管理和安全设置.监控分析,以及复制.扩展和备份/还原等主题. MySQL为名的数据库是从1994年开始开发,并与1995年第一次呈现在小范围的用户面前,开发者是两个瑞典人Widenius和David Axmark.那时MySQL还非常简陋,除了在一些表上做一些Inser.Update.Del…
此文已由作者朱笑天授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 笔者在工作之余阅读了一下高性能mysql,以下的内容对mysql的介绍以及书中涉及一些概念的总结归纳. 1.mysql架构 1.最上层负责链接处理.认证授权.安全等 2.中间一层涵盖了mysql的大多数核心功能.包括查询解析.分析.优化.缓存.内置函数:所有的夸存储引擎的功能都在这一层实现(存储过程.触发器.视图等) 3.第三层包含了存储引擎,存储引擎与上层使用API进行通讯,引擎之间不会有交互. 1.1…
第1章 Mysql架构与历史 MYSQL最重要.最与众不同的特性是它的存储引擎架构,这种架构的设计将查询处理( Query Processing)及其他系统任务( Server Task)和数据的存储/提取相分离.这种处理和存储分离的设计可以在使用时根据性能.特性.以及其他需求来选择数据存储的方式. MySQL逻辑架构 第一层: 大多数基于网络的C/S的工具或服务都是类似的结构,比如连接处理 授权认证 安全 第二层: 大多数MySQL 的核心服务功能都在这一层,包括查询解析.分析.优化.缓存以及…
本文来自于拜读<高性能MySQL(第三版)>时的读书笔记作者:安明哲转载时请注明部分内容来自<高性能MySQL(第三版)> MySQL的逻辑构架 MySQL服务器逻辑架构 最上层:链接处理,授权认证,安全等处理 第二层:查询解析.分析.优化.缓存以及内置函数(如:日期,时间,数学和加密函数) 第三层:包含了存储引擎,存储引擎负责数据的存储和提取. 链接管理和安全性 每一个客户端链接都在MySQL服务器进程中拥有一个多线程,在CPU中轮询运行,服务器会负责缓存线程,因此不需要为每一个…
本文系阅读<高性能MySQL>,Baron Schwartz等著一书中第五章 创建高性能的索引的笔记,索引是存储引擎用于快速找到记录的一种数据结构. 索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对性能的影响愈发重要.在数据量较小且负载较低时,不恰当的索引对性能的影响可能还不明显,但当数据量逐渐增大时,性能则会急剧下降. 索引优化应该是对查询性能优化最有效的手段了.索引能够轻易将查询性能提高几个数量级,最优的索引有时比一个好的索引性能要好两个数量级. 索引基础 在mysql中…