时间:2024-11-04 来源:网络 人气:508
MySQL系统表是数据库管理系统(DBMS)中用于存储数据库元数据(即关于数据库的数据)的表。这些表对于数据库管理员(DBA)和开发者来说至关重要,因为它们提供了关于数据库结构、用户权限、性能统计等信息。MySQL系统表通常位于名为`mysql`的数据库中,但也有一些系统表分布在其他数据库中,如`information_schema`和`sys`。
MySQL的系统表可以分为以下几类:
用户信息表:存储用户账户信息、权限等。
权限表:定义用户对数据库对象的访问权限。
性能统计表:提供数据库性能相关的统计信息。
元数据表:存储关于数据库结构的信息,如数据库名、表名、列名等。
1. `user` 表
user:用户名。
password:用户密码的散列值。
host:用户可以访问的主机地址。
db:用户默认的数据库。
select_priv`、`insert_priv`、`update_priv`、`delete_priv`、`create_priv`、`drop_priv`、`grant_priv`、`references_priv`、`index_priv`、`alter_priv`、`create_tmp_table_priv`、`lock_tables_priv`、`create_view_priv`、`show_view_priv`、`create_routine_priv`、`alter_routine_priv`、`execute_priv`、`event_priv`、`trigger_priv`:用户对不同数据库操作的权限。
2. `db` 表
user:用户名。
db:数据库名。
select_priv`、`insert_priv`、`update_priv`、`delete_priv`、`create_priv`、`drop_priv`、`grant_priv`、`references_priv`、`index_priv`、`alter_priv`:用户对数据库的权限。
3. `tables_priv` 表
host:用户可以访问的主机地址。
db:数据库名。
table_name:表名。
grantor:授予权限的用户。
table_priv`、`column_priv`:用户对表的权限和列的权限。
4. `information_schema` 数据库
SCHEMATA:提供了当前MySQL实例中所有数据库的信息。
TABLES:提供了当前数据库中所有表的信息。
COLUMNS:提供了当前数据库中所有列的信息。
STATISTICS:提供了当前数据库中所有表的统计信息。