У InnoDB есть свой справочник таблиц, который оно держит в памяти. Там содержится инфа обо всех открывавшихся таблицах, в стандартной версии MySQL он никогда не очищается — отсюда рост памяти.
В Percona xtradb против этого добавили настройку innodb_dict_size_limit
www.percona.com/doc/percona-server/5.5/management/innodb_dict_size_limit.html
Once a table is opened, it is never removed from the data dictionary unless you drop the table or you restart the server. In some cases, the data dictionary grows extremely large. If this consumes enough memory, the server will begin to use virtual memory. Use of virtual memory can cause swapping, and swapping can cause severe performance degradation. By providing a way to set an upper limit to the amount of memory the data dictionary can occupy, this feature provides users a way to create a more predictable and controllable situation.