MySQL数据库的优化
2013-06-11 16:16
197 查看
(1)设计优化
一般来说,我们可能会希望数据库中每一个数据越小越好。因此,可以使用最小化冗余的设计思想来实现此目的。当然,也可以通过使用最小的列数据类型来实现它。也应该尽可能使NULL最少,使主键尽可能短。
如果可能,尽量避免使用可变长度列(像VARCHAR\TEXT\BLOB)。如果字段长度固定,它们用起来将更快,但是要占用多一点的空间。
(2)权限
除了使用前面所述的关于EXPLAIN的建议,还可以通过简化权限来提高查询速度。前面,我们讨论了在查询执行之前通过权限系统检查该查询的过程,该过程越简单,查询速度越快。
(3)表的优化
如果一个表已经用了一段时间,随着更新和删除操作的发生,数据将会变得支离破碎。这样同样会增加在该表中查询所花的时间。可以使用如下语句修复它:
OPTIMIZE TABLE TABLENAME;
或者再命令提示符下键入:
myisamchk -t table
也可以使用myisamchk工具根据索引对该表索引和数据进行查询
(4)使用索引
可以在需要提高查询速度的地方使用索引。简化索引,不要创建查询不适用的索引。运行前面所介绍的EXPLAIN命令可以检查该索引是否正在使用中。
(5)使用默认值
在尽可能的地方使用列的默认值,只在与默认值不同的时候才插入数据。这样可以减少执行INSERT语句所花的时间。
一般来说,我们可能会希望数据库中每一个数据越小越好。因此,可以使用最小化冗余的设计思想来实现此目的。当然,也可以通过使用最小的列数据类型来实现它。也应该尽可能使NULL最少,使主键尽可能短。
如果可能,尽量避免使用可变长度列(像VARCHAR\TEXT\BLOB)。如果字段长度固定,它们用起来将更快,但是要占用多一点的空间。
(2)权限
除了使用前面所述的关于EXPLAIN的建议,还可以通过简化权限来提高查询速度。前面,我们讨论了在查询执行之前通过权限系统检查该查询的过程,该过程越简单,查询速度越快。
(3)表的优化
如果一个表已经用了一段时间,随着更新和删除操作的发生,数据将会变得支离破碎。这样同样会增加在该表中查询所花的时间。可以使用如下语句修复它:
OPTIMIZE TABLE TABLENAME;
或者再命令提示符下键入:
myisamchk -t table
也可以使用myisamchk工具根据索引对该表索引和数据进行查询
(4)使用索引
可以在需要提高查询速度的地方使用索引。简化索引,不要创建查询不适用的索引。运行前面所介绍的EXPLAIN命令可以检查该索引是否正在使用中。
(5)使用默认值
在尽可能的地方使用列的默认值,只在与默认值不同的时候才插入数据。这样可以减少执行INSERT语句所花的时间。
相关文章推荐
- mysql数据库常见的优化操作总结(经验分享)
- MySQL数据库优化
- LAMP系统性能调优 MySQL数据库服务器优化
- MySQL数据库性能优化的实际操作方案
- Mysql数据库性能优化三(分表、增量备份、还原)
- 优化MySQL数据库性能
- MySQL数据库优化技巧
- 使用MySQLTuner脚本检测、优化MySQL数据库
- MySQL数据库的优化
- Mysql数据库优化技术_初篇简介
- MySQL数据库优化的八种方式
- MySql数据库索引优化注意事项
- 关于MySQL数据库优化的部分整理
- MYSQL数据库的优化
- Mysql数据库性能优化【转载】
- MySQL数据库优化的八种方式(经典必看)
- 优化Mysql数据库的方法
- mysql数据库优化五步走
- MySQL数据库十大优化技巧
- mysql数据库海量数据优化方法总结