MySQL 系统表

MySQL系统表是数据库管理系统为了存储关于数据库本身的信息而创建的一系列特殊表。这些表通常包含元数据(metadata),如用户账户、权限、数据库结构定义以及其他用于管理和维护数据库的重要信息。

以下是一些在MySQL中常见的系统表或相关概念:

  1. information_schema 数据库:

    • 这是一个虚拟数据库,不占用实际磁盘空间,它提供了一套标准的方式来查看MySQL服务器中所有数据库的元数据。
    • 例如,TABLESCOLUMNSSCHEMATAVIEWSTRIGGERS等表分别提供了关于所有数据库中的表、列、模式、视图和触发器的信息。
  2. mysql 数据库下的系统表:

    • mysql.user:存储了用户的账号、密码哈希及全局级别的权限信息。
    • mysql.db:记录了每个数据库及其对应用户的访问权限。
    • mysql.tables_priv:存储针对特定表的权限信息。
    • mysql.columns_priv:存储针对特定表的列级别权限信息。
    • mysql.procs_priv:存储存储过程和函数的执行权限。
    • mysql.roles_mapping(MySQL 8.0+):角色映射关系表。
    • mysql.global_variablesmysql.session_variables:包含了全局和会话级别的系统变量设置。
  3. performance_schema 数据库(MySQL 5.5以后引入):

    • 提供了一组系统表来监视MySQL服务器内部操作的性能指标,包括线程状态、锁信息、内存分配情况等。
  4. sys 数据库(MySQL 5.7以后引入):

    • 是一个可读性更好的性能_schema视图集合,便于查询和理解MySQL的运行状况。

请注意,直接修改这些系统表的内容需要谨慎,因为它们对数据库系统的正常运行至关重要。通常,管理员通过SQL语句或MySQL管理工具来更新系统表内容以进行用户权限管理或其他配置变更。

相关推荐
叁沐9 分钟前
MySQL 09 普通索引和唯一索引,应该怎么选择?
mysql
头发那是一根不剩了1 小时前
Spring Boot 多数据源切换:AbstractRoutingDataSource
数据库·spring boot·后端
草履虫建模2 小时前
Redis:高性能内存数据库与缓存利器
java·数据库·spring boot·redis·分布式·mysql·缓存
苹果醋32 小时前
Vue3组合式API应用:状态共享与逻辑复用最佳实践
java·运维·spring boot·mysql·nginx
一个处女座的测试2 小时前
Python语言+pytest框架+allure报告+log日志+yaml文件+mysql断言实现接口自动化框架
python·mysql·pytest
泊浮目2 小时前
未来数据库硬件-计算篇
数据库·云计算·操作系统
靖顺2 小时前
【OceanBase诊断调优】—— 执行计划显示分区 PARTITIONS[P0SP9] 如何查询是哪个分区?
数据库·oracle·oceanbase
KIDAKN3 小时前
MySQL 存储结构
数据库·mysql
Code季风3 小时前
SQL关键字快速入门:HAVING 分组后的条件过滤
数据库·sql·mysql
程序员秘密基地3 小时前
基于html,css,vue,vscode,vs2022,asp.net,aspnet,.net,c#,mysql数据库,在线健身,俱乐部管理系统
前端·vue.js·后端·mysql·asp.net