网站大量收购独家精品文档,联系QQ:2885784924

MySQL介绍和优化分享.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MySQL介绍和优化分享 * * 2010-05 MySQL基本介绍 MySQL优化方式 MySQL技巧分享 Q A 目录索引 MySQL基本介绍 什么是MySQL   MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。 MySQL官方网站: 谁在用MySQL MySQL历史 1979年, 报表工具,数据引擎 1996年,MySQL 1.0 (3.11.1) 发布,支持SQL 2000年,成立 MySQL AB 公司 2008年1月,Sun公司以10亿美元收购MySQL AB公司 2009年4月,Oracle公司以74亿美元收购Sun公司 MySQL里程碑 3.11.1 First public release 3.23 集成Berkeley DB, 支持事务,抽象出Storage Engine 4.0 集成InnoDB 4.1 重大改进,子查询、unicode、c/s通信协议 5.0 stored procedure、view、triggers、query optimizer 5.1 File NDB、record replication...... MySQL架构 MySQL存储引擎比较 MyISAM 特点 MyISAM vs InnoDB 数据存储方式简单,使用 B+ Tree 进行索引 使用三个文件定义一个表:.MYI .MYD .frm 少碎片、支持大文件、能够进行索引压缩 二进制层次的文件可以移植 (Linux ? Windows) 访问速度飞快,是所有MySQL文件引擎中速度最快的 不支持一些数据库特性,比如 事务、外键约束等 Table level lock,性能稍差,更适合读取多的操作 表数据容量有限,一般建议单表数据量介于 50w–200w 增删查改以后要使用 myisamchk 检查优化表 InnoDB 特点 MyISAM vs InnoDB 使用 Table Space 的方式来进行数据存储 (ibdata1, ib_logfile0) 支持 事务、外键约束等数据库特性 Rows level lock , 读写性能都非常优秀 能够承载大数据量的存储和访问 拥有自己独立的缓冲池,能够缓存数据和索引 在关闭自动提交的情况下,与MyISAM引擎速度差异不大 MyISAM vs InnoDB 性能测试 innodb_flush_log_at_trx_commit=1 N/A 287秒 插入:100w innodb_flush_log_at_trx_commit=0 innodb_buffer_pool_size=256M 379秒 N/A 插入:100W innodb_flush_log_at_trx_commit=0 innodb_buffer_pool_size=256M 26秒 N/A 插入:10W innodb_flush_log_at_trx_commit=0 innodb_buffer_pool_size=256M 3秒 N/A 插入:1w innodb_flush_log_at_trx_commit=0 423秒 273秒 插入:100w innodb_flush_log_at_trx_commit=0 29秒 30秒 插入:10w innodb_flush_log_at_trx_commit=0 3秒 3秒 插入:1w innodb_flush_log_at_trx_commit=1 2092秒 29 秒 插入:10w innodb_flush_log_at_trx_commit=1 219秒 3秒 插入:1w 备注: f 特殊选项 InnoDB MyISAM 数据量/单位:万 测试结果 MyISAM vs InnoDB 性能测试 可以看出在MySQL 5.0里面,MyISAM和InnoDB存储引擎性能差别并不是很大,针对InnoDB来说,影响性能的主要是 innodb_flush_log_at_trx_commit 这个选项,如果设置为1的话,那么每次插入数据的时候都会自动提交,导致性能急剧下降,应该是跟刷新日志有关系,设置为0效率能够看到明显提升,当然,同样你可以SQL中提交“SET AUTOCOMMIT = 0”来设置达到好的性能。 同时也可以看出值得使用 InnoDB 来替代 MyISAM 引擎来进行开发,毕竟InnoDB 有多数据库特性、更良好的数据存储性能和查询性

文档评论(0)

wuyoujun92 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档