《MySQ概述及优化》PPT课件

《MySQ概述及优化》PPT课件

ID:41112299

大小:975.51 KB

页数:42页

时间:2019-08-16

《MySQ概述及优化》PPT课件_第1页
《MySQ概述及优化》PPT课件_第2页
《MySQ概述及优化》PPT课件_第3页
《MySQ概述及优化》PPT课件_第4页
《MySQ概述及优化》PPT课件_第5页
资源描述:

《《MySQ概述及优化》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、MySQL概述及优化简介2009-12-05演讲人:张秀程MySQL概述MySQL优化《MySQL核心技术手册》简介目录索引MySQL概述什么是MySQLMySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL官方网站:http://www.mysql.comMySQL历史1979年,报表工具,数据引擎1996年,MySQL1.0(3.11.1)发布

2、,支持SQL2000年,成立MySQLAB公司2008年1月,Sun公司以10亿美元收购MySQLAB公司2009年4月,Oracle公司以74亿美元收购Sun公司MySQL架构MySQL存储引擎比较MyISAMvsInnoDBMyISAM是MySQl的默认类型,基于传统的ISAM类型,它是存储记录和文件的标准方法。与其他存储引擎比较,它具有检查和修复表格的大多数工具。MyISAM表可以被压缩,并支持全文搜索。它们不是事务安全的,而且也不支持外键。MyISAM特点MyISAMvsInnoDB数据存储方式简单,使用B-tree进行索引使用三个文件定义一个表:.MYI.MY

3、D.frm少碎片、支持大文件、能够进行索引压缩二进制层次的文件可以移植(LinuxWindows)访问速度飞快,是所有MySQL文件引擎中速度最快的不支持一些数据库特性,比如事务、外键约束等Tablelevellock,性能稍差,更适合读取多的操作表数据容量有限,一般建议单表数据量介于50w–200w增删查改以后要使用myisamchk检查优化表MyISAM存储结构MyISAMvsInnoDBMyISAM索引结构MyISAMvsInnoDBMyISAMvsInnoDBInnoDB:最受欢迎的存储引擎,支持事物处理,ACID、外键、日志修复等。InnoDB表的速度很快。

4、如果需要一个事务安全的存储引擎或者是需要大量并发的INSERT或UPDATE,则应该使用InnoDB表。InnoDB特性MyISAMvsInnoDB使用TableSpace的方式来进行数据存储(ibdata1,ib_logfile0)支持事务、外键约束等数据库特性Rowslevellock,读写性能都非常优秀能够承载大数据量的存储和访问拥有自己独立的缓冲池,能够缓存数据和索引在关闭自动提交的情况下,与MyISAM引擎速度差异不大InnoDB索引结构MyISAMvsInnoDBMyISAMvsInnoDB性能测试数据量/单位:万MyISAMInnoDB备注:my.cnf特

5、殊选项插入:1w3秒219秒innodb_flush_log_at_trx_commit=1插入:10w29秒2092秒innodb_flush_log_at_trx_commit=1插入:100w287秒N/Ainnodb_flush_log_at_trx_commit=1插入:1w3秒3秒innodb_flush_log_at_trx_commit=0插入:10w30秒29秒innodb_flush_log_at_trx_commit=0插入:100w273秒423秒innodb_flush_log_at_trx_commit=0插入:1wN/A3秒innodb_f

6、lush_log_at_trx_commit=0 innodb_buffer_pool_size=256M插入:10WN/A26秒innodb_flush_log_at_trx_commit=0 innodb_buffer_pool_size=256M插入:100WN/A379秒innodb_flush_log_at_trx_commit=0 innodb_buffer_pool_size=256M测试结果MyISAMvsInnoDB性能测试可以看出在MySQL5.0里面,MyISAM和InnoDB存储引擎性能差别并不是很大,针对InnoDB来说,影响性能的主要是inn

7、odb_flush_log_at_trx_commit这个选项,如果设置为1的话,那么每次插入数据的时候都会自动提交,导致性能急剧下降,应该是跟刷新日志有关系,设置为0效率能够看到明显提升,当然,同样你可以在SQL中提交“SETAUTOCOMMIT=0”来设置达到好的性能。同时也可以看出值得使用InnoDB来替代MyISAM引擎来进行开发,毕竟InnoDB有多数据库特性、更良好的数据存储性能和查询性能。NDB支持事务,用于集群(cluster),实现高可用,但性能仍欠佳。MySQL优化主要内容为什么要优化如何找到软肋如何优化为什么要优化老

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。