The table_definition_cache system variable defines the number of table definitions that can be stored in the table definition cache. If you use a large number of tables, you can create a large table definition cache to speed up the opening of tables. The table_definition_cache variable controls the size of this cache.
If a client issues a query that references a table for which the metadata is not in the cache, the server will retrieve the metadata from the data dictionary and add it to the cache. Generally table_open_cache and table_definition_cache are set to the same value. The number of open table objects and table definitions are directly related, so setting these two parameters to the same value can ensure that the metadata and open table objects are stored in the cache in a consistent and efficient manner.
PPT - Cache Tables: Paving the way for an Adaptive Database Cache ...
wait_timeout. Table cache MySQL uses table cache to speed up the opening of tables. MySQL table cache is separated into two parts, a cache of open tables and a cache of table definitions, configured using table_open_cache and table_definition_cache respectively.
I just discovered table_definition_cache and I am trying to decide what to set it to. I am messing with my config because of performance issues. On one server I have 36599 tables and when I run SHOW GLOBAL STATUS the value for Opened tables is 930312.
Table Definition Cache at Leslie Green blog
table_definition_cache is set to 20k. On another server I have 45349 tables and when I run SHOW GLOBAL STATUS the value for Opened tables is. table_definition_cache: The maximum number of tables whose metadata can be stored in memory, without having to use file descriptors to read the.frm files.
Dictionary Memory Allocated: The amount of memory that is allocated in the innodb dictionary. FLUSH TABLES is to force all tables to be closed to ensure that if someone adds a new table outside of MySQL, all threads will start using the new table. Table Definition Cache This parameter shows the number of table definitions (SHOW CREATE TABLE \G) that can be stored.
Quick MySQL performance check | PPT
This is to speed up opening of tables and only one entry per table. The table_open_cache and max_connections system variables affect the maximum number of files the server keeps open. If you increase one or both of these values, you may run up against a limit imposed by your operating system on the per.
table_definition_cache is used to set the number of table definition objects. The table definition cache stores metadata (such as column names and data types) of the tables in the database so that this information can be quickly accessed during query execution.