MySQL调优参数

key_buffer_size

含义:用于索引块的缓冲区大小,增加它可得到更好处理的索引(对所有读和多重写)。

影响:对于MyISAM表的影响不是很大,MyISAM会使用系统的缓存来存储数据,所以大量使用MyISAM表的机器内存很快会耗尽。但是,如果将该值设得过大(例如,大于总内存50%),系统将转换为页,并变得极慢。MySQL依赖操作系统来执行数据读取时的文件系统缓存,因此必须为文件系统缓存留一些空间。

建议:先设置内存的25%,观察性能变化。

 

table_open_cache

含义:所有线程打开表的描述符缓存

影响:增加该值能增加mysqld要求的文件描述符的数量。可以避免频繁的打开数据表产生开销。打开一个表的开销可能很大,因为MyISAM会把MYI文件的文件头标识为正在使用,所以在内存中做这个操比较好。国为每个线程都需要打开表,连接数越大这个值就要越大。

table_open_cache>= max_connection*2,有些表打开时,需要两个文件描述符,如MyISAM表,index,临时表等文件符。自链接查询语句,会额外多开启一个该表的文件符(针对性的设置是:找到和数据库有关的所有最复杂的查询语句,包括自链接left/right/inner/outer join及group统计语句)查看这些链接将打开多少数据表,设此值为N

show status like ‘opened_tables‘,如果值很大,要提高table_open_cache值。

 

 

thread_cache_size

含义:缓存可重用的线程数。

影响:这个参数设置

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。