MySQL系统库之information_schema的实现

 更新时间:2023年11月02日 08:25:59   作者:冷风扇666  
information_schema用于存储数据库元数据,本文主要介绍了MySQL系统库之information_schema的实现,具有一定的参考价值,感兴趣的可以了解一下

information_schema 用于存储数据库元数据(metadata)。包含了有关数据库服务器、数据库、表、列、索引、权限、存储引擎和其他数据库对象的信息。information_schema 允许用户查询和检索数据库结构和对象的信息,而不需要直接访问系统表或文件:

用途:

  • 查询数据库结构information_schema 可用于查询数据库、表、列、索引、外键、触发器等对象的结构信息。
  • 权限管理:可以使用 information_schema 查询用户和权限信息,以确保正确的访问控制和权限设置。
  • 性能优化information_schema 提供有关索引、表大小、表引擎等性能相关信息,这对于性能优化很有帮助。
  • 查询执行计划:可以查询 information_schema 获取查询执行计划,以了解查询如何被执行。

使用方法:

  • 查询数据库中的表:

    SELECT table_name
    FROM information_schema.tables
    WHERE table_schema = '数据库名';
    
  • 查询表的列信息(多库表名重复,会组合起来,不去重):

    SELECT column_name, data_type
    FROM information_schema.columns
    WHERE table_name = '表名';
    
  • 查询用户和权限信息:

    SELECT *
    FROM information_schema.user_privileges;
    
  • 查询索引信息:

    SELECT table_name, index_name
    FROM information_schema.statistics
    WHERE table_schema = '数据库名';
    

以下是一个对比表格,用于对比 information_schema 、 sys 系统库、 performance_schema

特性information_schemasys 系统库performance_schema
主要用途查询数据库结构、权限管理、性能优化查询执行分析、性能调优、等待事件分析性能监控、性能分析、资源利用监控、等待事件分析
数据类型元数据信息、数据库对象结构信息查询执行分析、等待事件、性能数据提供广泛的性能数据,包括查询执行、锁等待、I/O操作、连接信息等
使用方法提供用于查询和检索数据库结构和权限信息的表和视图提供易于理解和使用的查询和函数提供多个表和视图,需要编写更复杂的查询和分析

到此这篇关于MySQL系统库之information_schema的实现的文章就介绍到这了,更多相关MySQL information_schema内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • mysql中使用instr进行模糊查询方法介绍

    mysql中使用instr进行模糊查询方法介绍

    这篇文章主要介绍了mysql中使用instr进行模糊查询方法介绍,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • mysql 获取当前日期函数及时间格式化参数详解

    mysql 获取当前日期函数及时间格式化参数详解

    这篇文章主要介绍了mysql 获取当前日期函数now()及时间格式化DATE_FROMAT函数以及参数详细介绍,需要的朋友可以参考下
    2014-08-08
  • mysql删除操作其实是假删除问题

    mysql删除操作其实是假删除问题

    这篇文章主要介绍了mysql删除操作其实是假删除问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • Mysql中json类型数据查询的实现

    Mysql中json类型数据查询的实现

    MySQL5.7开始支持JSON格式的数据类型,可以存储和处理JSON类型的数据,本文主要介绍一些关于json数据类型的查询操作,具有一定的参考价值,感兴趣的可以了解一下
    2023-10-10
  • mysql的select into给多个字段变量赋值方式

    mysql的select into给多个字段变量赋值方式

    这篇文章主要介绍了mysql的select into给多个字段变量赋值方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • MySQL实战记录之如何快速定位慢SQL

    MySQL实战记录之如何快速定位慢SQL

    这可能是困然很多人的一个问题,MySQL通过慢查询日志定位那些执行效率较低的SQL语句,下面这篇文章主要给大家介绍了关于MySQL实战记录之如何快速定位慢SQL的相关资料,需要的朋友可以参考下
    2022-03-03
  • MySQL 8.0新特性 — 管理端口的使用简介

    MySQL 8.0新特性 — 管理端口的使用简介

    这篇文章主要介绍了MySQL 8.0新特性 — 管理端口的使用简介,帮助大家更好的理解和学习使用MySQL,感兴趣的朋友可以了解下
    2021-03-03
  • mysql dblink跨库关联查询的实现

    mysql dblink跨库关联查询的实现

    本文主要介绍了mysql dblink跨库关联查询的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • MySQL 用 limit 为什么会影响性能

    MySQL 用 limit 为什么会影响性能

    对于小的偏移量,直接使用limit来查询没有什么问题,但随着数据量的增大,越往后分页,limit语句的偏移量就会越大,速度也会明显变慢,接下来文章就向大家介绍其的原由,感兴趣的小伙伴可参考下面文章具体内容
    2021-09-09
  • Mysql数据库面试必备之三大log介绍

    Mysql数据库面试必备之三大log介绍

    大家好,本篇文章主要讲的是Mysql数据库面试必备之三大log介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2021-12-12

最新评论