MySQL 8.0 数据字典有哪些变化?

MySQL 8.0 数据字典从MyISAM转为InnoDB,支持原子DDL,增强了查询性能。数据字典表的变化包括表结构、引擎转换、文件结构、新缓存机制、索引使用以及表变动。原子DDL使得DDL操作变得原子化,确保数据一致性。然而,DDL操作速度可能变慢,且存在特定限制和注意事项。
摘要由CSDN通过智能技术生成

墨墨导读:MySQL8.0 数据字典(Data Dictionary)也在进化中。MyISAM系统表全部换成InnoDB表 ,支持原子DDL。复杂度增加了。考虑过是否跟业务数据库有资源抢夺的现象,这些都是实际使用中需要观察关注的问题。

转发活动倒计时:《闯荡江湖,没点儿本事怎么行?》,朋友圈集赞就有机会赢得专业课程和经典书籍,参与直播互动更有机会赢百元京东卡!!

1

数据字典

MySQL中数据字典是数据库重要的组成部分之一,包含表结构、数据库名或表名、字段的数据类型、视图、索引、表字段信息、存储过程、触发器等对象的基础信息。MySQL INFORMATION_SCHEMA库提供了对数据局元数据、统计信息、以及有关MySQL server的访问信息(例如:数据库名或表名,字段的数据类型和访问权限等)。

1.1. 架构对比

MySQL8.0之前和MySQL8.0 数据字典的区别


备注:
· frm文件 存放表结构信息
· opt文件,记录了每个库的一些基本信息,包括库的字符集等信息
· TRN,.TRG文件用于存放触发器的信息内容



备注:原先存放于数据字典文件中的信息,全部存放到数据库系统表中,即将之前版本的.frm,.opt,.par,.TRN,.TRG,.isl文件进行了移除。

对mysql,sys系统库中的存储引擎做了改进,原使用MyISAM存储引擎的数据字典表都改为使用InnoDB存储引擎存放。从不支持事务的MyISAM存储引擎转变到支持事务的InnoDB存储引擎,典数据由相同的提交、回滚和崩溃恢复功能保护,为原子DDL的实现,提供了可能性。

1.2. 引擎变化

5.7.30

mysql> SELECT TABLE_SCHEMA ,ENGINE ,COUNT(*) from information_schema.tables where table_schema in  ('information_schema' ,'mysql','performance_schema', 'sys') group by TABLE_SCHEMA ,ENGINE;+--------------------+--------------------+----------+| TABLE_SCHEMA       | ENGINE             | COUNT(*) |+--------------------+--------------------+----------+| information_schema | InnoDB             |       10 || information_schema | MEMORY             |       51 || mysql              | CSV                |        2 || mysql              | InnoDB             |       20 || mysql              | MyISAM          
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值