博客
关于我
MySQL自带information_schema数据库使用
阅读量:788 次
发布时间:2023-02-13

本文共 1735 字,大约阅读时间需要 5 分钟。

MySQL的information_schema数据库是一个自带的实用工具,旨在提供关于MySQL实例和各个数据库的元数据信息。以下是对该数据库的详细解析:

信息数据库的作用

information_schema数据库的主要功能是提供元数据,元数据是关于数据的数据,如数据库名、表名、列的数据类型、访问权限等。它帮助数据库管理员和开发人员快速获取大量信息,包括数据库结构、约束、索引、权限以及存储空间使用情况等。

信息数据库中的表

information_schema数据库包含多个只读视图表,每个表提供特定的元数据信息:

  • SCHEMATA:列出所有数据库及其属性,如数据库名称和创建时间。
  • TABLES:提供数据库中的表信息,包括表名、表类型、引擎、创建时间等。
  • COLUMNS:列出表中的所有列及其属性,如数据类型、主键、外键等。
  • STATISTICS:描述表的索引信息,包括索引的名称和对应的列。
  • USER_PRIVILEGES:提供用户权限信息,包括权限类型和受权限的数据库或表。
  • SCHEMA_PRIVILEGES:描述数据库级别的权限信息。
  • TABLE_PRIVILEGES:提供表级别的权限信息。
  • COLUMN_PRIVILEGES:列出列级别的权限信息。
  • CHARACTER_SETS:列出可用的字符集及其属性。
  • COLLATIONS:提供字符集的对照信息。
  • COLLATION_CHARACTER_SET_APPLICABILITY:指明可用于校对的字符集。
  • TABLE_CONSTRAINTS:描述表的约束信息。
  • KEY_COLUMN_USAGE:提供主键和外键的信息。
  • ROUTINES:列出存储程序的信息。
  • VIEWS:提供数据库中的视图信息。
  • TRIGGERS:描述触发程序的信息。
  • 信息数据库的应用

    通过查询information_schema数据库,可以执行以下操作:

  • 查看表的记录数

    SELECT table_schema, table_name, table_rows FROM information_schema.tables WHERE table_schema = '数据库名称' ORDER BY table_rows DESC;
  • 查看数据库所占空间

    SELECT     CONCAT(round(sum(data_length / 1024 / 1024), 2), 'MB') as data_size,    CONCAT(round(sum(index_length / 1024 / 1024), 2), 'MB') as index_sizeFROM information_schema.tables WHERE table_schema = '数据库名称';
  • 查看特定表的存储空间

    SELECT     CONCAT(truncate(sum(data_length) / 1024 / 1024, 2), 'MB') as data_size,    CONCAT(truncate(sum(max_data_length) / 1024 / 1024, 2), 'MB') as max_data_size,    CONCAT(truncate(sum(data_free) / 1024 / 1024, 2), 'MB') as data_free,    CONCAT(truncate(sum(index_length) / 1024 / 1024), 'MB') as index_sizeFROM information_schema.tables WHERE TABLE_NAME = '表名';
  • 注意事项

    • 只读访问information_schema数据库的表均为只读,确保元数据的完整性。
    • 权限控制:严格控制元数据的访问权限,防止未授权的访问。
    • 性能影响:频繁查询可能影响数据库性能,需谨慎使用。
    • 备份:将information_schema数据库纳入备份计划,确保数据恢复。

    通过以上信息,开发人员和数据库管理员可以更高效地管理和监控MySQL数据库,优化性能,保障数据安全。

    转载地址:http://vodfk.baihongyu.com/

    你可能感兴趣的文章
    mysql权限
    查看>>
    mysql条件查询
    查看>>
    MySQL条件查询
    查看>>
    MySQL架构与SQL的执行流程_1
    查看>>
    MySQL架构与SQL的执行流程_2
    查看>>
    MySQL架构介绍
    查看>>
    MySQL架构优化
    查看>>
    mysql架构简介、及linux版的安装
    查看>>
    MySQL查看数据库相关信息
    查看>>
    MySQL查看表结构和表中数据
    查看>>
    MySQL查询优化:LIMIT 1避免全表扫描
    查看>>
    MySQL查询优化之索引
    查看>>
    mysql查询储存过程,函数,触发过程
    查看>>
    mysql查询总成绩的前3名学生信息
    查看>>
    mysql查询慢排查
    查看>>
    MySQL查询报错ERROR:No query specified
    查看>>
    mysql查询数据库储存数据的占用容量大小
    查看>>
    MySQL查询数据库所有表名及其注释
    查看>>
    MySQL查询数据表中数据记录(包括多表查询)
    查看>>
    MySQL查询结果排序
    查看>>