`
xp9802
  • 浏览: 1184065 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

提高MySQL查询速度的策略【转载】

阅读更多

  1、表设计一定要优化,冗余数据最少,少用连接查询。如果在实际应用中,使用了极其复杂的连接,子查询,则数据表的设计得要重新考虑了。

  2、尽量用char而不是varchar,因为固定长度得string用起来更快.在当今硬盘容量越来越大的情况下,牺牲点存储空间而换得查询速度得提升是值得的。

  3、通过简化权限来提高查询速度。如果一个查询之前要执行很多权限验证,则查询速度会慢下来,不妨试着在mysql中用root登录与用你新建的有权限控制的用户登录的速度,就可以看出来了,root登录,一下子就进入了,而普通用户登录,总会延迟一下。

  4、表的优化。如果一个表已经用了一段时间,随着更新和删除操作的发生,数据将会变得支离破碎,这样同样会增加在该表中进行物理搜索所花费的时间。你要知道的是,在mysql底层设计中,数据库将被映射到具有某种文件结构的目录中,而表则映射到文件。所以磁盘碎片是很有可能发生的。庆幸的是,在mysql中,我们可以通过下面的语句进行修复:

optimize table tablename

  或

myisamchk -r tablename

  5、使用索引,可以在需要提高查询速度的地方使用索引,简化索引,不要创建查询不使用的索引。可通过运行explain命令分析后决定。

  6、使用默认值,在尽可能的地方使用列的默认值,只在与默认值不同的时候才插入数据。这样可以减少执行insert语句所花费的时间。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics