开发者社区 > 数据库 > 正文

查询数字字典的过程是怎样的?

已解决

查询数字字典的过程是怎样的?

展开
收起
云上静思 2022-09-20 15:16:36 288 0
1 条回答
写回答
取消 提交回答
  • 推荐回答

    当系统执行一条SQL 语句访问某个表时,MySQL 首先会尝试去打开表。这个过程会先通过表名从DD Cache 获取表空间(Tablespace)的信息。如果DD Cache 中没有,就会尝试从数据字典表中读取。一般来说DD Cache 和数据字典表中的数据,以及InnoDB 引擎内部的Tablespace 是完全匹配的。在执行数据定义语言(Data Definition Language,DDL)操作时,一般都会触发清理DD Cache 的操作,而这个过程必须要持有整个Tablespace 的元数据定义语言(Metadata Definiton Language,MDL)独占锁才能进行。DDL 操作完成之后,会修改数据字典表中的信息。在用户发起下一次读取时,会将该信息从数据字典表中读取出来并缓存在DD Cache 中。

    以上内容摘自《云原生数据库原理与实践》,这本书可以在电子工业出版社天猫店购买。

    2022-09-20 16:45:49
    赞同 展开评论 打赏
问答地址:

数据库领域前沿技术分享与交流

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载