Mysql中使用索引提高查询速度

来源 :中国电子商情 | 被引量 : 0次 | 上传用户:poloya
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  引言:在web开发中,页面模板,业务逻辑(包括缓存、连接池)和数据库这三个部分,数据库在其中负责执行SQL查询并返回查询结果,是影响网站速度最重要的性能瓶颈。本文主要针对MySql数据库,通过使用索引来提升查询速度。
  索引用于快速找出在某个列中有一特定值的行。不使用索引,MySQL将进行全表扫描,从第一条记录开始然后读完整个表直到找出相关的行。
  一、mysql索引类型
  常用的索引类型有
  (1)主键索引
  它是一种特殊的唯一索引,不允许有空值。一般是在建表的时候同时创建主键索引。
  (2)普通索引
  这是最基本的索引,它没有任何限制。
  (3)唯一索引
  它与前面的普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。
  (4)全文索引
  MySQL支持全文索引和搜索功能。MySQL中的全文索引类型为FULLTEXT的索引。FULLTEXT 索引仅可用于 MyISAM表;
  二、在什么情况下使用索引
  为搜索字段建索引,如果在你的表中,某个字段你经常用来做搜索,那么,请为其建立索引吧。一般来说,在WHERE和JOIN中出现的列需要建立索引以提高查询速度。
  三、最常用的存储引擎:
  (1)Myisam存储引擎:每个Myisam在磁盘上存储成三个文件。文件名都和表名相同,扩展名分别为.frm(存储表定義)、.MYD(存储数据)、.MYI(存储索引)。数据文 件和索引文件可以放置在不同目录,平均分布io,获得更快的速度。对存储大小没有限制,MySQL数据库的最大有效表尺寸通常是由操作系统对文件大小的限制决定的。
  (2)InnoDB存储引擎:具有提交、回滚、奔溃恢复能力的事务安全。与Myisam相比,InnoDB的写效率差一些并且会占用更多的磁盘空间以保留数据和索引。
  (3)如何选择合适的引擎
  下面是常用存储引擎适用的环境:
  Myisam:它是在Web、数据仓储和其他应用环境下最常使用的存储引擎;
  InnoDB:用于事务处理应用程序,具有更多特性,包括ACID事务特性。
  四、设计MySql索引的时候有以下几点注意:
  (1)、对于查询占主要的应用来说,索引显得尤为重要。很多时候性能问题很简单的就是因为我们忘了添加索引而造成的,或者说没有添加更为有效的索引导致。如果不加索引的话,那么查找任何哪怕只是一条特定的数据都会进行一次全表扫描,如果一张表的数据量很大而符合条件的结果又很少,那么不加索引会引起致命的性能下降。但是也不是什么情况都非得建索引不可,如:表记录太少,经常插入、删除、修改的表,某个字段只会出现重复的几个值,建索引不仅没什么优势,还会影响到更新速度,这被称为过度索引。其次,在对建立索引的时候要对表进行加锁,因此应当注意操作在业务空闲的时候进行。
  (2)、还应当考虑表空间和磁盘空间是否足够。我们知道索引也是一种数据,在建立索引的时候势必也会占用大量表空间。因此在对一大表建立索引的时候首先应当考虑的是空间容量问题。
  (3)、性能调整方面:首当其冲的考虑因素便是磁盘I/O。物理上,应当尽量把索引与数据分散到不同的磁盘上(不考虑阵列的情况)。逻辑上,数据表空间与索引表空间分开。这是在建索引时应当遵守的基本准则。
  参考文献
  [1] http://blog.sina.com.cn/s/blog_40e5b6370100f0vy.html.
  [2]高性能MySQL(第3版).电子工业出版社.Baron Schwartz等著;宁海元等译.
  [3]MySQL技术内幕:InnoDB存储引擎(第2版).机械工业出版社. 姜承尧 著.
  (作者单位:保山学院信息学院)
其他文献
引言:随着现代社会的进步和科技的发展,各企业之间的竞争也越来越激烈,为了达到现代化要求,为了使企业更有竞争力,现代办公信息化已经成为我国各企业的重中之重。本文就办公信息化对现代企业发展的影响作出几点认识,以体现信息化发展对企业的重要性。  前言  自21世纪以来,网络已经成为我国国民生活的一部分,不仅与日常生活紧密相关,还普遍应用于现代企业的工作当中。21世纪企业的竞争就是现代信息化技术的竞争,若
期刊
引言:飞速的时代造就飞速的经济,这些都使得信息透明化,商务简易化。尤其是在流通零售行业,信息更是无处不在。然而由于零售业的经营模式,零售业态极其复杂,导致零售行业的信息化程度较低,造成了零售服务行业在某种程度上发展缓慢,这些问题急需解决。  面对上述种种复杂情况,易 事派凭借着自己在移动互联网的一个定位,肩负起对零售服务行业信息化变革的重任,与国家多媒体软件工程技术研究中心强强联手,针对零售业的经
期刊
引言:尼那電厂位于青海省贵德县黄河干流上,坝高48.7m,坝长603m。水库正常蓄水位2235.5m,为日调节水库。河床式电站,在面厂房安装有4台贯流式发电机组,单机容量40MW,电站总装机容量160MW。随着近年来水电厂计算机监控系统的广泛应用,计算机监控系统功能日趋成熟,采用的软件、硬件迅猛发展。  一、原监控系统运行情况  原监控系统投运以来,设备经过近10多年的运行,已进入故障频发期,同时
期刊
Abstract: Memory management in C++ is a big issue for the users who rely on those languages in their project. And memory management two aspects in its domain, first, make it work right; second, make i
期刊
引言:随着经济的发展,我们已经步入信息时代,电脑、智能手机、网络等以潜移默化的方式影响着我们的生活,改变着我们的行为习惯与思维模式,近年来,电子商务作为新时期贸易方式的重要形式,已经成为人们购物的首选,其不仅速进了当今的经济发展,而且加大了网络对人们生活的影响,电子商务是指整个交易过程,包括网上浏览商品、电子支付等进行的一种新型贸易方式,其是信息时代的产物,其从生产、销售到售后服务等依托于电子科技
期刊
北京凤凰岭书院-姜宝林工作室  殷延国  1969年生于山东枣庄。2002 毕业于中央美院国画系王镛工作室首届研究生班,2003任《中国美术》杂志编辑,2004-2005任中华环保基金会书画基金活动部副主任,2005-2007任教育部考试中心中国书画等级考试项目主管。2009年任京华水墨画院秘书长。现为中国书法家协会会员,中央美术学院继续教育学院书法教师,《书艺公社》网总版主。现就读于北京凤凰岭书
期刊
引言:随着科技水平日益发达,互联网已经渗透到了社会经济的各个领域,作为社会经济的主要组成单位中小企业自然也需要与互联网紧密融合,以求获得进一步发展的动力。本文从商务网络的基本概念出发,着重分析中小企业商务网络的应用现状,并进一步理清中小企业构建企业商务网络体系的主要任务和挑战。  一、商务网络的概念  商务网络与电子商务是两个不同的概念。电子商务指的是企业商务活动的电子化,停留在操作层面。商务网络
期刊
引言:本文分析了核电设计行业数据管理和业务流程管理中存在的问题,分析介绍了TEAMCENTER软件对以上问题给出的解决方案,并对TEAMCENTER在核电设计行业中更好的应用给出了合理化的建议。  前言  目前,统一管理产品全周期并优化影响其运行效率的所有业务流程被视为提高企业效益的最有效的方法,TEAMCENTER就是这样一款基于SOA(面向服务架构)的PLM(产品生命周期管理)系统。  一、T
期刊
时 间:2012年2月8日上午10时  地 点:北京凤凰岭美术馆  主 持 人:韩国栋  整 理:北京凤凰岭美术馆理论研究部  2012年2月8日,国务院参事室、中央文史馆专程到北京凤凰岭美术馆、凤凰岭书院调研,并召开座谈会。与会专家以“当前中国书画‘传承与发展’形势的分析与思考”为主题,就北京凤凰岭美术馆和凤凰岭书院的宗旨、定位、办学方针、教学模式以及学制、章程等,进行了深入而
期刊
引言:办公自动化系统对于企业的信息化建设有着重要的意义。本文主要介绍了使用Lotus Domino/Notes实现基于WEB结构的办公自动化系统,并以一个大型企业的机关办公自动化系统的构建为例加以说明。重点说明了关键模块-公文管理子系统的实现。  一、引言  目前,企业的信息处理能力越来越成为衡量自身发展能力的重要指标。办公自动化系统借助计算机实现了信息资源化,以公文管理、事务管理和档案管理作为核
期刊