WEB开发网
开发学院数据库MySQL 21条最佳的MySQL性能优化 阅读

21条最佳的MySQL性能优化

 2012-12-24 16:10:41 来源:WEB开发网   
核心提示:当然,你也需要留够足够的扩展空间,21条最佳的MySQL性能优化(5),不然,你日后来干这个事,自从我们的Apache开始重用它的子进程后——也就是说,下一次的HTTP请求会重用Apache的子进程,你会死的很难看,参看Slashdot的例子(2009年11月06日)

当然,你也需要留够足够的扩展空间,不然,你日后来干这个事,你会死的很难看,参看Slashdot的例子(2009年11月06日),一个简单的ALTER TABLE语句花了3个多小时,因为里面有一千六百万条数据。
perz~com

19.选择正确的存储引擎

在MySQL中有两个存储引擎MyISAM和InnoDB,每个引擎都有利有弊。酷壳以前文章《MySQL: InnoDB 还是 MyISAM?》讨论和这个事情。hp程序员之家

MyISAM适合于一些需要大量查询的应用,但其对于有大量写操作并不是很好。甚至你只是需要update一个字段,整个表都会被锁起来,而别的进程,就算是读进程都无法操作直到读操作完成。另外,MyISAM对于 SELECT COUNT(*) 这类的计算是超快无比的。
www~phperz~com

InnoDB的趋势会是一个非常复杂的存储引擎,对于一些小的应用,它会比 MyISAM还慢。他是它支持“行锁” ,于是在写操作比较多的时候,会更优秀。并且,他还支持更多的高级应用,比如:事务。

下面是MySQL的手册

·
target=”_blank”MyISAM Storage Engine

·
InnoDB Storage Engine

20.使用一个对象关系映射器(Object Relational Mapper)

使用 ORM (Object Relational Mapper),你能够获得可靠的性能增涨。一个ORM可以做的所有事情,也能被手动的编写出来。但是,这需要一个高级专家。
phperz~com

ORM的最重要的是“Lazy Loading”,也就是说,只有在需要的去取值的时候才会去真正的去做。但你也需要小心这种机制的副作用,因为这很有可能会因为要去创建很多很多小的查询反而会降低性能。hperz.com

ORM还可以把你的SQL语句打包成一个事务,这会比单独执行他们快得多得多。

21.小心“永久链接”

“永久链接”的目的是用来减少重新创建MySQL链接的次数。当一个链接被创建了,它会永远处在连接的状态,就算是数据库操作已经结束了。而且,自从我们的Apache开始重用它的子进程后——也就是说,下一次的HTTP请求会重用Apache的子进程,并重用相同的MySQL链接。

上一页  1 2 3 4 5 

Tags:最佳 MySQL 性能

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接