-1

What is the dictionary memory and where does it stores, is it uses the memory of buffer pool or a seperate memory, does buffer pool stores metadata pages also or only user table and indexes, in both the older and new version of mysql

1 Answer 1

0

The buffer pool holds pages corresponding to anything stored in tablespace files, and also other data structures such as the InnoDB lock table.

The InnoDB data dictionary is stored in tablespace files both in older (pre-8.0) versions of MySQL and current versions of MySQL, so yes, it does occupy part of the buffer pool memory. It's likely a small fraction of the size of your data.

Old MySQL:

https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_data_dictionary says:

data dictionary

Metadata that keeps track of InnoDB-related objects such as tables, indexes, and table columns. This metadata is physically located in the InnoDB system tablespace. For historical reasons, it overlaps to some degree with information stored in the .frm files.

Current MySQL:

https://dev.mysql.com/doc/refman/8.4/en/glossary.html#glos_data_dictionary says:

data dictionary

Metadata that keeps track of database objects such as tables, indexes, and table columns. For the MySQL data dictionary, introduced in MySQL 8.0, metadata is physically located in InnoDB file-per-table tablespace files in the mysql database directory. For the InnoDB data dictionary, metadata is physically located in the InnoDB system tablespace.

You can read more details about the Data Dictionary in the MySQL Manual: https://dev.mysql.com/doc/refman/en/data-dictionary.html

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.