您的位置:首页 > 数据库 > SQL

mysql 性能参数 table_open_cache

2016-04-28 00:00 465 查看
一。简单介绍

table_open_cache(5.1.3之前叫 table_cache)主要用于设置table高速缓存的数量。由于每个客户端连接都会至少访问一个表,因此此参数的值与max_connections有关。

当某一连接访问一个表时,MySQL会检查当前已缓存表的数量。如果该表已经在缓存中打开,则会直接访问缓存中的表已加快查询速度;如果该表未被缓存,则会将当前的表添加进缓存并进行查询。

在执行缓存操作之前,table_open_cache用于限制缓存表的最大数目:如果当前已经缓存的表未达到table_open_cache,则会将 新表添加进来;若已经达到此值,MySQL将根据缓存表的最后查询时间、查询率等规则释放之前的缓存。每当MySQL访问一个表时,如果在表缓冲区中还有 空间,该表就被打开并放入其中,这样可以更快地访问表内容。

二,相关参数



三,参数设置

如果show processlist显示很多opening table closing table很多,那么就应该调整这些参数了。

如果你发现open_tables等于table_open_cache,并且opened_tables在不断增长,那么你就需要增加 table_open_cache的值了。

注意,不能盲目地把table_open_cache设置成很大的值。如果设置得太高,可能会造成文件描述符不足,从而造成性能不稳定或者连接失败。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: