给 mysql 的资源太少,则 mysql 施展不开:给 mysql 的资源太多,可能会拖累整个 OS。
40%资源给OS, 60%-70% 给mysql (内存和CPU)
对查询进行缓存
大多数LAMP应用都严重依赖于数据库查询,查询的大致过程如下:
PHP发出查询请求->数据库收到指令对查询语句进行分析->确定如何查询->从磁盘中加载信息->返回结果
如果反复查询,就反复执行这些。MySQL 有一个特性称为查询缓存,他可以将查询的结果保存在内存缓冲区中,今后对于同样的SELECT语句,将直接从缓冲区中读取结果。这样会极大地提高性能。不过,问题是查询缓存在默认情况下是禁用的。
注:一个SQL查询如果以select开头,那么MySQL服务器将尝试对其使用查询缓存。两个SQL语句,只要相差哪怕是一个字符(例如大小写不一样;多一个空格等),那么这两个SQL将使用不同的一个CACHE。