摘要: 写在前面:索引对查询的速度有着至关重要的影响,理解索引也是进行数据库调优的起点。考虑如下情况,假设数据库中一个表有10^6条记录,DBMS的页面大小为4K,并存储100条记录。如果没有索引,查询将对整个表进行扫描,最坏的情况下,如果所有数据页都不在内存,需要读取10^4个页面,如果这10^4个页面在 阅读全文
posted @ 2016-05-09 18:31 夏日树叶 阅读(21757) 评论(1) 推荐(0) 编辑
摘要: 在分析查询性能时,考虑EXPLAIN关键字同样很管用。EXPLAIN关键字一般放在SELECT查询语句的前面,用于描述MySQL如何执行查询操作、以及MySQL成功返回结果集需要执行的行数。explain 可以帮助我们分析 select 语句,让我们知道查询效率低下的原因,从而改进我们查询,让查询优 阅读全文
posted @ 2016-05-09 16:01 夏日树叶 阅读(441) 评论(0) 推荐(0) 编辑
摘要: 索引优化,查询优化,查询缓存,服务器设置优化,操作系统和硬件优化,应用层面优化(web服务器,缓存)等等。这里记录的优化技巧更适合开发人员,都是从网络上搜集和整理的,主要是查询语句上的优化,其他层面上的优化技巧在此不做记录。 查询的开销指标:执行时间,检查的行数,返回的行数。 建立索引的几个准则: 阅读全文
posted @ 2016-05-09 15:21 夏日树叶 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 语法: optimize table '表名' 一,原始数据 2,存放在硬盘中的表文件大小 3,查看一下索引信息 索引信息中的列的信息说明。 Table :表的名称。Non_unique:如果索引不能包括重复词,则为0。如果可以,则为1。Key_name:索引的名称。Seq_in_index:索引中 阅读全文
posted @ 2016-05-09 14:15 夏日树叶 阅读(3698) 评论(0) 推荐(3) 编辑
摘要: mysql引擎 mysql数据库引擎取决于mysql在安装的时候是如何被编译的。要添加一个新的引擎,就必须重新编译mysql。在缺省情况下,mysql支持三个引擎:ISAM,MYISAM和HEAP。另外两种类型INNODB和BERKLEY(BDB),也常常可以使用。下面介绍几种数据库引擎: ISAM 阅读全文
posted @ 2016-05-09 13:32 夏日树叶 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 三张表,需要得到的数据是标红色部分的。sql如下: select a.uid,a.uname,a.upsw,a.urealname,a.utel,a.uremark, b.rid,b.rname,b.rremark,c.deptid,c.deptname,c.deptremark from tabl 阅读全文
posted @ 2016-05-09 09:46 夏日树叶 阅读(88144) 评论(1) 推荐(2) 编辑