优化 MySQL 语句的十个建议

看到OSCHINA上转的这篇,觉得不错,留下来做个备份。

Jaslabs的Justin Silverton列出了十条有关优化MySQL查询的语句,我不得不对此发表言论,因为这个清单非常非常糟糕。另外一个Mike也同样意识到了。所以在这个博客中,我要做两件事情,第一,指出为什么这个清单很糟糕,第二,列出我的清单,希望我的比较好些。继续看吧,无畏的读者们!

(译者注:作者借这个题目反讽另一篇同名的文章)

为什么那个清单很糟糕

1.他的力气没使对地方

我们要遵循的一个准则就是如果你要优化代码时,应该先找出瓶颈在哪。然而Silverton先生的力气没有用对地方。我认为60%的优化是基于清楚 理解SQL和数据库基础的。你需要知道join和子查询的区别,列索引,以及如何将数据规范化等等。另外的35%的优化是需要清楚数据库选择时的性能表 现,例如COUNT(*)可能很快也可能很慢,要看你选用什么数据库引擎。还有一些其他要考虑的因素,例如数据库在什么时候不用缓存,什么时候存在硬盘上 而不存在内存中,什么时候数据库创建临时表等等。剩下的5%就很少会有人碰到了,但Silverton先生恰好在这上面花了大量的时间。我从来就没用过 SQL_SAMLL_RESULT。

继续阅读

PHP再入门

我从前写过几篇冗繁的PHP教程,后来想想其实大家只是找个小敲门砖而已,何必如此复杂,那我就再写篇快速入门,注意,只是入门。

目标:不完全依赖我的写自己第一个PHP程序——一个留言板或是什么。

环境:自己准备一个apache和一个php,不需要mysql。开发的话zend studio或者editplus、notepad++吧,vim emacs都可以。记事本会调编码也行。

继续阅读

又一个夏天

最近忙的脑袋里一团浆糊,办公室里一直是忙碌的影子,外面的主角却从钢筋水泥柏油玻璃变成桃花杏花杨柳芳草了。真应了同事们说的,北京没有春天。清明前还冷风呼啸着扫过人群,一个假期过去,办公室里飘进了杨絮,小区里也万紫千红了。

自从开始忙起来,就想的很少,每天对着电脑屏幕那十几寸的小空间,眼神也仅仅聚焦在某几行而已。从明媚的阳光中走来,出去时天已经昏暗,街上人影稀疏,只有路灯和下面等活的的士。每天坐在后座上,望着车窗外寂寞的风景,总觉得自己不属于自己,却一直无法从脑袋里搜寻出真正回家的路。这城市的街头不知有多少游窜在街头的孤独灵魂,望着远方凝神苦思,一直无法回答心中的疑问。

写到这里脑子里又是一团浆糊了,我不知为何我要写这些,更不知怎么写出的这些。我不是要说这城市,它仅是坐落在这,迎来到这的每个人,给他们希望和勇气。人们或许失落或许得意,却一直和它无关。那些只是人们心底的东西,被遗弃的愿望,挣扎的灵魂,随着街头披头士们的柔和歌声和路灯散发的温暖光线散尽。