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. 

Reply via email to