As I’ve wrote few times using multiple key caches is a great way to get CPU scalability if you’re using MyISAM. It is however very annoying – this feature really looks half baked to me.
The problem with multiple key caches and mapping of tables to the different files is – there is no way to see the existing key caches, their mapping and stats. The only thing you can access is key cache parameters – via structured variables
In particular I would like to:
See the list of created caches Right now I can create key caches with random names causing invisible resource consumption. It is possible to make an error in key cache creation but it is not possible to later find out such key cache exists. This in my opinion violates fundamental design principle – if you can create something you should be able to also list what you have created.
See the mappings I can now map tables to be cached in different key caches but there is no way to see the current mappings or to see where each given table is cached.
See other key cache stats To tune the caches I need to see number of accesses, blocks used, number of misses. Such basic feature either does not exist or is not documented.
I’m not sure how relevant is MyISAM with MariaDB on a way but this is surely sad to see the feature of multiple key caches first introduced in MySQL 4.1 was newer quite polished in terms of usability.