mysql存储引擎介绍及优化.ppt
《mysql存储引擎介绍及优化.ppt》由会员分享,可在线阅读,更多相关《mysql存储引擎介绍及优化.ppt(37页珍藏版)》请在三一办公上搜索。
1、MySQL介绍和优化分享,2009-07,MySQL基本介绍MySQL优化方式MySQL技巧分享Q&A,目录索引,MySQL基本介绍,什么是MySQL,MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL官方网站:http:/,谁在用MySQL,MySQL历史,1979年,报表工具,数据引擎1996年,MySQL 1.0(3.11.1)发布,支持SQL2000年,成立
2、 MySQL AB 公司2008年1月,Sun公司以10亿美元收购MySQL AB公司2009年4月,Oracle公司以74亿美元收购Sun公司,MySQL里程碑,3.11.1 First public release3.23 集成Berkeley DB,支持事务,抽象出Storage Engine4.0 集成InnoDB4.1 重大改进,子查询、unicode、c/s通信协议5.0 stored procedure、view、triggers、query optimizer5.1 File NDB、record replication.,MySQL架构,MySQL存储引擎比较,MyISAM
3、特点,MyISAM vs InnoDB,数据存储方式简单,使用 B+Tree 进行索引 使用三个文件定义一个表:.MYI.MYD.frm 少碎片、支持大文件、能够进行索引压缩 二进制层次的文件可以移植(Linux Windows)访问速度飞快,是所有MySQL文件引擎中速度最快的 不支持一些数据库特性,比如 事务、外键约束等 Table level lock,性能稍差,更适合读取多的操作 表数据容量有限,一般建议单表数据量介于 50w200w 增删查改以后要使用 myisamchk 检查优化表,MyISAM 存储结构,MyISAM vs InnoDB,MyISAM 索引结构,MyISAM vs
4、 InnoDB,InnoDB 特点,MyISAM vs InnoDB,使用 Table Space 的方式来进行数据存储(ibdata1,ib_logfile0)支持 事务、外键约束等数据库特性 Rows level lock,读写性能都非常优秀 能够承载大数据量的存储和访问 拥有自己独立的缓冲池,能够缓存数据和索引 在关闭自动提交的情况下,与MyISAM引擎速度差异不大,InnoDB 数据结构,MyISAM vs InnoDB,MyISAM vs InnoDB 性能测试,测试结果,MyISAM vs InnoDB 性能测试,可以看出在MySQL 5.0里面,MyISAM和InnoDB存储引擎
5、性能差别并不是很大,针对InnoDB来说,影响性能的主要是 innodb_flush_log_at_trx_commit 这个选项,如果设置为1的话,那么每次插入数据的时候都会自动提交,导致性能急剧下降,应该是跟刷新日志有关系,设置为0效率能够看到明显提升,当然,同样你可以SQL中提交“SET AUTOCOMMIT=0”来设置达到好的性能。同时也可以看出值得使用 InnoDB 来替代 MyISAM 引擎来进行开发,毕竟InnoDB 有多数据库特性、更良好的数据存储性能和查询性能,MySQL优化方式,系统优化:硬件、架构服务优化应用优化,MySQL优化方式,使用好的硬件,更快的硬盘、大内存、多核
6、CPU,专业的存储服务器(NAS、SAN)设计合理架构,如果 MySQL 访问频繁,考虑 Master/Slave 读写分离;数据库分表、数据库切片(分布式),也考虑使用相应缓存服务帮助 MySQL 缓解访问压力,系统优化,配置合理的MySQL服务器,尽量在应用本身达到一个MySQL最合理的使用针对 MyISAM 或 InnoDB 不同引擎进行不同定制性配置针对不同的应用情况进行合理配置针对 f 进行配置,后面设置是针对内存为2G的服务器进行的合理设置,服务优化,MySQL配置原则,服务优化,公共选项,服务优化,MyISAM 选项,服务优化,InnoDB 选项,设计合理的数据表结构:适当的数据
7、冗余对数据表建立合适有效的数据库索引数据查询:编写简洁高效的SQL语句,应用优化,应用优化方式,应用优化,表结构设计原则 选择合适的数据类型:如果能够定长尽量定长 不要使用无法加索引的类型作为关键字段,比如 text类型 为了避免联表查询,有时候可以适当的数据冗余,比如 邮箱、姓名这些不容易更改的数据 选择合适的表引擎,有时候 MyISAM 适合,有时候 InnoDB适合 为保证查询性能,最好每个表都建立有 auto_increment 字段,建立合适的数据库索引 最好给每个字段都设定 default 值,应用优化,索引建立原则 一般针对数据分散的关键字进行建立索引,比如ID、QQ,像性别、状
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- mysql 存储 引擎 介绍 优化
链接地址:https://www.31ppt.com/p-6512873.html