Mysql – Open table cache in MySQL

cacheMySQL

I have my open table cache set to 1800 and I have a total of 1112 tables. MySQL Tuning Primer reports that 100% of my table cache is used yet my table cache hit rate is 5%. I understand that this happens due to concurrent connections all opening tables. I think I should raise the cache limit. I understand that the cache size is limited by the file descriptor limit of my operating system, but are there any other practical limitations I should be aware of?

Searching Google or this very website yields mostly posts explaining the connection-factor or come up with indecisive answers.

My question: can I safely increase the open table cache limit? Is there a maximum?

Best Answer

Ensure that the open_files_limit is 2x - 3x the value of your table_open_cache.

As an example, I have the following values:

open_files_limit = 30000
table_open_cache = 10000