阿里巴巴DBA,原去哪儿网DBA。专注于MySQL源码研究、DBA运维、CGroup虚拟化及Linux Kernel源码研究等。 github:https://github.com/HengWang/ Email:king_wangheng@163.com 微博 :@王恒-Henry QQ :506437736
分类: Mysql/postgreSQL
2012-04-27 12:15:41
六、测试结论
经过对percona server影响性能的主要参数进行了测试及分析,得出以下结论,供以后数据库配置文件参考:
1、innodb_buffer_pool_size在物理内存的65%~70%左右时,数据库的性能最好;
2、innodb_log_file_size在4G时的性能优于1G时的性能,但是同样引起的问题是,如果数据库宕机重启恢复的时间也较长。Percona server建议该值是innodb_buffer_pool_size的25%,实际值根据应用设置;
3、innodb_log_buffer_size在512M时,性能优于256M时的性能。在内存允许的情况下,可以提高该值。
4、innodb_max_dirty_pages_pct为75时,数据库的性能优于为50和90时。该值过大,会导致查询命中率降低;该值过小,会导致磁盘刷新的频率较高。
5、innodb_additional_mem_pool_size增大时,性能会有所提高。但当大于一定值时,性能将不会有明显提高。
6、innodb_thread_concurrency为0时的性能较高。但在并发数较高时,percona建议将该值设置为2*(CPU+DISK)。因为在高并发的情况下,线程数过高,会导致频繁的切换。
七、其他问题
由于测试过程中,有更换内核的操作,导致性能有明显的降低。从测试结果中可以明显看出性能的分层。此外,随着不断测试,测试数据可能随着测试的不断进行,性能也有一定的降低,原因还未查明。但从测试中推断,可能是系统的原因。因此,对于后面几个参数的测试的准确性,还待商榷。