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管理工具来更新系统表内容以进行用户权限管理或其他配置变更。

相关推荐
zzb15808 小时前
RAG from Scratch-优化-query
java·数据库·人工智能·后端·spring·mybatis
一只鹿鹿鹿8 小时前
信息安全等级保护安全建设防护解决方案(总体资料)
运维·开发语言·数据库·面试·职场和发展
堕2748 小时前
MySQL数据库《基础篇--数据库索引(2)》
数据库·mysql
wei_shuo8 小时前
数据库优化器进化论:金仓如何用智能下推把查询时间从秒级打到毫秒级
数据库·kingbase·金仓
71-38 小时前
MySQL的安装和卸载组件
笔记·学习·mysql
雷工笔记8 小时前
Navicat Premium 17 软件安装记录
数据库
wenlonglanying9 小时前
Ubuntu 系统下安装 Nginx
数据库·nginx·ubuntu
数据库小组9 小时前
10 分钟搞定!Docker 一键部署 NineData 社区版
数据库·docker·容器·database·数据库管理工具·ninedata·迁移工具
爬山算法9 小时前
MongoDB(38)如何使用聚合进行投影?
数据库·mongodb
l1t9 小时前
Deep Seek总结的APSW 和 SQLite 的关系
数据库·sqlite