Ståle Deraas has been working with MySQL Database team since 2008. He is currently employed by Oracle, based in Norway. He is Senior Software Development Manager for the runtime team of the MySQL Database. He has a background in the database industry, working for Sun Microsystems on Java DB, and prior to that on Software Development Tools. He has a B.Sc Hons degree in Computing Science from the University of Glasgow.
View all posts by Ståle Deraas →
The new data dictionary in MySQL 8.0 is mostly transparent to users upgrading, in that an import process is automatically run on first-start, and the semantics of DDL (creating tables, adding indexes etc) remain the same. There is however one major exception, and that is how failure cases are handled.…
Just as you use a database like MySQL to store your application data, MySQL must also store its meta data (schema names, table definitions etc) somewhere. Traditionally this meta data storage has been split between many different locations (.FRM, .PAR, .OPT, .TRN and .TRG files).…
For a long time, there have been complaints about deficiencies of the data dictionary of MySQL. Many have expressed a lack of love for FRM files, see Morgan’s blog post and Stewart Smith’s post MySQL Architecture.
We are now designing and implementing a new and improved data dictionary for MySQL, and some key design goals are:
Store dictionary information in transactional storage.