我有一个1 GB的内存的机器,并已设置Apache使用STARTSERVER OF 150,MAXCLIENTS 150,只有一半使用,所以我仍然有大约500 MB的备用RAM。 我希望MySQL使用它作为现在运行ABtesting显示,与静态图像我得到6000req /秒和我的CMS我只有180req /秒这是一个PHP脚本与MySQL后端。 我需要增加MySQL性能而不用触及SQL语句,只需要一个networkingpipe理员而不是程序员。 MySQL有这个选项吗? 500MB的备用RAM,我想用起来。
如果你正在使用MyISAM增加
key_buffer_size=512M
如果你正在使用InnoDB
innodb_buffer_pool_size=512M
另外,通常my.cnf预置在MySQL包中,称为my-huge.cnf , my-medium.cnf , my-large.cnf和my-small.cnf您可以search它们。
PS。 你应该真的谷歌为您的存储引擎的一些MySQL调优的例子。
一旦完成了内存设置的调整,提高数据库性能一般归结为创build索引或重新排列数据的物理结构以获得更好的局部性,例如通过对索引进行聚类。
当然,维护一个索引也有很多开销,除非你知道你在做什么,否则不要做任何改变。 并且不要指望一个数据库使用它的索引,直到有一个给定的表中有几个K行。