Hey list,
Another little conundrum, here; although I do have the feeling that I'm missing something
very obvious.
In a MySQL 5.5.24, I have these global variables:
| open_files_limit | 8520 |
| table_definition_cache | 4000 |
| table_open_cache | 4000 |
and these global statuses:
| Open_files | 5421 |
| Open_table_definitions | 2669 |
| Open_tables | 3913 |
| Opened_table_definitions | 493857 |
| Opened_tables | 638469 |
In the space of five minutes, opened_table_definitions grows about 24 and opened_tables
about 30; while there is still room in both caches. I've also set table_open_cache to 6000
for half an hour or so, but the status variable hardly changes, while the opened_ variable
keeps growing.
The manual isn't proving very cooperative, either. Why would tables get opened outside of
the cache when there is still room? The way I interpret the manual is that opened_tables
doesn't get incremented if a table open can grab a handle in the cache - is my
interpretation wrong? In that case, I suppose it grows because of tables getting flushed
after DML.
/johan
--
What's tiny and yellow and very, very dangerous?
A canary with the root password.
Thread |
---|
• Unused space in table cache, while tables are being opened | Johan De Meersman | 25 Feb |