数据库
文章平均质量分 83
ly_yudian
这个作者很懒,什么都没留下…
展开
-
让MySQL高效运行起来
<br />索引是快速搜索的关键。MySQL索引的建立对于MySQL的高效运行是很重要的。下面介绍几种常见的MySQL索引类型。<br />在数据库表中,对字段建立索引可以大大提高查询速度。假如我们创建了一个 mytable表:CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NULL ); <br />我们随机向里面插入了10000条记录,其中有一条:5555, admin。<br />在查找username="原创 2011-02-12 14:40:00 · 355 阅读 · 0 评论 -
MySQL语句优化的原则
<br />1、使用索引来更快地遍历表。<br /><br /> 缺省情况下建立的索引是非群集索引,但有时它并不是最佳的。在非群集索引下,数据在物理上随机存放在数据页上。<br /><br /> 合理的索引设计要建立在对各种查询的分析和预测上。一般来说: <br /> a.有大量重复值、且经常有范围查询( > ,< ,> =,< =)和order by、group by发生的列,可考虑建立群集索引; <br /> b.经常同时存取多列,且每列都含有重复值可考虑建立组合索引; <br /> c.组合原创 2011-02-12 15:46:00 · 299 阅读 · 0 评论 -
使用调度和锁定进行MySQL查询优化
<br />DBA在日常工作中经常会遇到如何让单独的查询执行的速度更快。MySQL还允许你改变语句调度的优先级,它可以使来自多个客户端的查询更好地协作,这样单个客户端就不会由于锁定而等待很长时间。改变优先级还可以确保特定类型的查询被处理得更快。这一部分讲解MySQL的默认的调度策略和可以用来影响这些策略的选项。它还谈到了并发性插入操作的使用和存储引擎锁定层次对客户端的并发性的影响。为了讨论的方便,我们把执行检索(SELECT)的客户端称为"读取者",把执行修改操作(DELETE、INSERT、REPLACE原创 2011-02-12 15:52:00 · 401 阅读 · 0 评论 -
使用explain
解释mysql如何使用索引来处理select语句及连接表的。输入 explain select * from customer; 后,出现一张表,个行的意思如下:table-显示此行数据属于哪张表;type-重要的一列,显示使用了何种连接,从好到差依次为const、eq_ref、ref、range、index、all,下面会详细说明;possible_keys-可以应用在这张表中的索引,如果为null,则表示没有可用索引;key-实际使用的索引,如为null,表示没有用到索引;key_len-索引的长度,在原创 2011-02-12 17:49:00 · 522 阅读 · 0 评论 -
MySQL最好的优化技巧
<br />1、选取最适用的字段属性 <br /><br />MySQL 可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽可能小。例如,在定义邮政编码这个字段时,如果将其设置为CHAR(255),显然给数据库增加了不必要的空间,甚至使用VARCHAR这种类型也是多余的,因为CHAR(6)就可以很好的完成任务了。同样的,如果可以的话,我们应该使用MEDIUMINT而不是BIGIN来定义整型字段。原创 2011-02-12 15:47:00 · 288 阅读 · 0 评论 -
MYSQL索引使用
<br />什么是索引?索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B-树的形式保存。如果没有索引,执行查询时MySQL必须从第一个记录开始扫描整个表的所有记录,直至找到符合要求的记录。表里面的记录数量越多,这个操作的代价就越高。如果作为搜索条件的列上已经创建了索引,MySQL无需扫描任何记录即可迅速得到目标记录所在的位置。如果表有1000个记录,通过索引查找记录至少要比顺序扫描记录快100倍。索引的类型:普通索引:这是最基本的索引类型,没唯一性之类的限制。唯一性索引:和普通索引基本相同,原创 2011-02-12 15:17:00 · 423 阅读 · 0 评论