展开
拓展 关闭
订阅号推广码
GitHub
视频
公告栏 关闭

权限表

  • 查看表
MariaDB [(none)]> show databases;  # 查看所有数据库
+--------------------+
| Database           |
+--------------------+
| information_schema |
| jdbc               |
| mysql              |
| performance_schema |
+--------------------+
4 rows in set (0.000 sec)

MariaDB [(none)]> use mysql      # 使用mysql数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [mysql]> show tables;      # 查看所有表
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| column_stats              |
| columns_priv              |
| db                        |
| event                     |
| func                      |
| general_log               |
| gtid_slave_pos            |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| host                      |
| index_stats               |
| innodb_index_stats        |
| innodb_table_stats        |
| plugin                    |
| proc                      |
| procs_priv                |
| proxies_priv              |
| roles_mapping             |
| servers                   |
| slow_log                  |
| table_stats               |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| transaction_registry      |
| user                      |
+---------------------------+
31 rows in set (0.000 sec)
  • 查看user表
MariaDB [mysql]> desc user;
+------------------------+-----------------------------------+------+-----+----------+-------+
| Field                  | Type                              | Null | Key | Default  | Extra |
+------------------------+-----------------------------------+------+-----+----------+-------+
| Host                   | char(60)                          | NO   | PRI |          |       |
| User                   | char(80)                          | NO   | PRI |          |       |
| Password               | char(41)                          | NO   |     |          |       |
| Select_priv            | enum('N','Y')                     | NO   |     | N        |       |
| Insert_priv            | enum('N','Y')                     | NO   |     | N        |       |
| Update_priv            | enum('N','Y')                     | NO   |     | N        |       |
| Delete_priv            | enum('N','Y')                     | NO   |     | N        |       |
| Create_priv            | enum('N','Y')                     | NO   |     | N        |       |
| Drop_priv              | enum('N','Y')                     | NO   |     | N        |       |
| Reload_priv            | enum('N','Y')                     | NO   |     | N        |       |
| Shutdown_priv          | enum('N','Y')                     | NO   |     | N        |       |
| Process_priv           | enum('N','Y')                     | NO   |     | N        |       |
| File_priv              | enum('N','Y')                     | NO   |     | N        |       |
| Grant_priv             | enum('N','Y')                     | NO   |     | N        |       |
| References_priv        | enum('N','Y')                     | NO   |     | N        |       |
| Index_priv             | enum('N','Y')                     | NO   |     | N        |       |
| Alter_priv             | enum('N','Y')                     | NO   |     | N        |       |
| Show_db_priv           | enum('N','Y')                     | NO   |     | N        |       |
| Super_priv             | enum('N','Y')                     | NO   |     | N        |       |
| Create_tmp_table_priv  | enum('N','Y')                     | NO   |     | N        |       |
| Lock_tables_priv       | enum('N','Y')                     | NO   |     | N        |       |
| Execute_priv           | enum('N','Y')                     | NO   |     | N        |       |
| Repl_slave_priv        | enum('N','Y')                     | NO   |     | N        |       |
| Repl_client_priv       | enum('N','Y')                     | NO   |     | N        |       |
| Create_view_priv       | enum('N','Y')                     | NO   |     | N        |       |
| Show_view_priv         | enum('N','Y')                     | NO   |     | N        |       |
| Create_routine_priv    | enum('N','Y')                     | NO   |     | N        |       |
| Alter_routine_priv     | enum('N','Y')                     | NO   |     | N        |       |
| Create_user_priv       | enum('N','Y')                     | NO   |     | N        |       |
| Event_priv             | enum('N','Y')                     | NO   |     | N        |       |
| Trigger_priv           | enum('N','Y')                     | NO   |     | N        |       |
| Create_tablespace_priv | enum('N','Y')                     | NO   |     | N        |       |
| Delete_history_priv    | enum('N','Y')                     | NO   |     | N        |       |
| ssl_type               | enum('','ANY','X509','SPECIFIED') | NO   |     |          |       |
| ssl_cipher             | blob                              | NO   |     | NULL     |       |
| x509_issuer            | blob                              | NO   |     | NULL     |       |
| x509_subject           | blob                              | NO   |     | NULL     |       |
| max_questions          | int(11) unsigned                  | NO   |     | 0        |       |
| max_updates            | int(11) unsigned                  | NO   |     | 0        |       |
| max_connections        | int(11) unsigned                  | NO   |     | 0        |       |
| max_user_connections   | int(11)                           | NO   |     | 0        |       |
| plugin                 | char(64)                          | NO   |     |          |       |
| authentication_string  | text                              | NO   |     | NULL     |       |
| password_expired       | enum('N','Y')                     | NO   |     | N        |       |
| is_role                | enum('N','Y')                     | NO   |     | N        |       |
| default_role           | char(80)                          | NO   |     |          |       |
| max_statement_time     | decimal(12,6)                     | NO   |     | 0.000000 |       |
+------------------------+-----------------------------------+------+-----+----------+-------+
47 rows in set (0.001 sec)
  • 字段分类
  • 范围列(或用户列)
host : 表示连接类型
    % 表示所有远程通过 TCP方式的连接
    IP 地址 如 (192.168.1.2、127.0.0.1) 通过制定ip地址进行的TCP方式的连接
    机器名 通过制定网络中的机器名进行的TCP方式的连接
    ::1 IPv6的本地ip地址,等同于IPv4的 127.0.0.1
    localhost 本地方式通过命令行方式的连接 ,比如mysql -u xxx -p xxx 方式的连接。
user : 表示用户名,同一用户通过不同方式链接的权限是不一样的。
password : 密码
    所有密码串通过 password(明文字符串) 生成的密文字符串。MySQL 8.0 在用户管理方面增加了
    角色管理,默认的密码加密方式也做了调整,由之前的 SHA1 改为了 SHA2 ,不可逆 。同时
    加上 MySQL 5.7 的禁用用户和用户过期的功能,MySQL 在用户管理方面的功能和安全性都较之
    前版本大大的增强了。
    mysql 5.7 及之后版本的密码保存到 authentication_string 字段中不再使用password 字段。
  • 权限列
Grant_priv字段
    表示是否拥有GRANT权限
Shutdown_priv字段
    表示是否拥有停止MySQL服务的权限
Super_priv字段
    表示是否拥有超级权限
Execute_priv字段
    表示是否拥有EXECUTE权限。拥有EXECUTE权限,可以执行存储过程和函数。
Select_priv , Insert_priv等
    为该用户所拥有的权限。
  • 安全列
安全列只有6个字段,其中两个是ssl相关的(ssl_type、ssl_cipher),用于 加密 ;
两个是x509相关的(x509_issuer、x509_subject),用于 标识用户 ;
另外两个Plugin字段用于 验证用户身份 的插件,该字段不能为空。如果该字段为空,服务器就使用内建授权验证机制验证用户身份
  • 资源控制列
资源控制列的字段用来 限制用户使用的资源 ,包含4个字段,分别为:
max_questions,用户每小时允许执行的查询操作次数; 
max_updates,用户每小时允许执行的更新操作次数; 
max_connections,用户每小时允许执行的连接操作次数; 
max_user_connections,用户允许同时建立的连接次数
  • 查看db表
MariaDB [mysql]> desc db;
+-----------------------+---------------+------+-----+---------+-------+
| Field                 | Type          | Null | Key | Default | Extra |
+-----------------------+---------------+------+-----+---------+-------+
| Host                  | char(60)      | NO   | PRI |         |       |
| Db                    | char(64)      | NO   | PRI |         |       |
| User                  | char(80)      | NO   | PRI |         |       |
| Select_priv           | enum('N','Y') | NO   |     | N       |       |
| Insert_priv           | enum('N','Y') | NO   |     | N       |       |
| Update_priv           | enum('N','Y') | NO   |     | N       |       |
| Delete_priv           | enum('N','Y') | NO   |     | N       |       |
| Create_priv           | enum('N','Y') | NO   |     | N       |       |
| Drop_priv             | enum('N','Y') | NO   |     | N       |       |
| Grant_priv            | enum('N','Y') | NO   |     | N       |       |
| References_priv       | enum('N','Y') | NO   |     | N       |       |
| Index_priv            | enum('N','Y') | NO   |     | N       |       |
| Alter_priv            | enum('N','Y') | NO   |     | N       |       |
| Create_tmp_table_priv | enum('N','Y') | NO   |     | N       |       |
| Lock_tables_priv      | enum('N','Y') | NO   |     | N       |       |
| Create_view_priv      | enum('N','Y') | NO   |     | N       |       |
| Show_view_priv        | enum('N','Y') | NO   |     | N       |       |
| Create_routine_priv   | enum('N','Y') | NO   |     | N       |       |
| Alter_routine_priv    | enum('N','Y') | NO   |     | N       |       |
| Execute_priv          | enum('N','Y') | NO   |     | N       |       |
| Event_priv            | enum('N','Y') | NO   |     | N       |       |
| Trigger_priv          | enum('N','Y') | NO   |     | N       |       |
| Delete_history_priv   | enum('N','Y') | NO   |     | N       |       |
+-----------------------+---------------+------+-----+---------+-------+
23 rows in set (0.001 sec)
  • 字段分类
  • 用户列
db表用户列有3个字段,分别是Host、User、Db。这3个字段分别表示主机名、用户名和数据库名。
表示从某个主机连接某个用户对某个数据库的操作权限,这3个字段的组合构成了db表的主键。
  • 权限列
Create_routine_priv和Alter_routine_priv这两个字段决定用户是否具有创建和修改存储过程的权限。
  • tables_priv表用来 对表设置操作权限
MariaDB [mysql]> desc tables_priv;
+-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+------+-----+---------------------+-------------------------------+
| Field       | Type                                                                                                                                                       | Null | Key | Default             | Extra                         |
+-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+------+-----+---------------------+-------------------------------+
| Host        | char(60)                                                                                                                                                   | NO   | PRI |                     |                               |
| Db          | char(64)                                                                                                                                                   | NO   | PRI |                     |                               |
| User        | char(80)                                                                                                                                                   | NO   | PRI |                     |                               |
| Table_name  | char(64)                                                                                                                                                   | NO   | PRI |                     |                               |
| Grantor     | char(141)                                                                                                                                                  | NO   | MUL |                     |                               |
| Timestamp   | timestamp                                                                                                                                                  | NO   |     | current_timestamp() | on update current_timestamp() |
| Table_priv  | set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','Create View','Show view','Trigger','Delete versioning rows') | NO   |     |                     |                               |
| Column_priv | set('Select','Insert','Update','References')                                                                                                               | NO   |     |                     |                               |
+-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+------+-----+---------------------+-------------------------------+
8 rows in set (0.001 sec)
  • 字段简介
Host 、 Db 、 User 和 Table_name 四个字段分别表示主机名、数据库名、用户名和表名。
Grantor表示修改该记录的用户。
Timestamp表示修改该记录的时间。
Table_priv 表示对象的操作权限。包括Select、Insert、Update、Delete、Create、Drop、Grant、References、Index和Alter。
Column_priv字段表示对表中的列的操作权限,包括Select、Insert、Update和References。
  • 查看columns_priv表
MariaDB [mysql]> desc mysql.columns_priv;
+-------------+----------------------------------------------+------+-----+---------------------+-------------------------------+
| Field       | Type                                         | Null | Key | Default             | Extra                         |
+-------------+----------------------------------------------+------+-----+---------------------+-------------------------------+
| Host        | char(60)                                     | NO   | PRI |                     |                               |
| Db          | char(64)                                     | NO   | PRI |                     |                               |
| User        | char(80)                                     | NO   | PRI |                     |                               |
| Table_name  | char(64)                                     | NO   | PRI |                     |                               |
| Column_name | char(64)                                     | NO   | PRI |                     |                               |
| Timestamp   | timestamp                                    | NO   |     | current_timestamp() | on update current_timestamp() |
| Column_priv | set('Select','Insert','Update','References') | NO   |     |                     |                               |
+-------------+----------------------------------------------+------+-----+---------------------+-------------------------------+
7 rows in set (0.001 sec)
  • procs_priv表可以对 存储过程和存储函数设置操作权限
MariaDB [mysql]> desc mysql.procs_priv;
+--------------+-------------------------------------------------------+------+-----+---------------------+-------------------------------+
| Field        | Type                                                  | Null | Key | Default             | Extra                         |
+--------------+-------------------------------------------------------+------+-----+---------------------+-------------------------------+
| Host         | char(60)                                              | NO   | PRI |                     |                               |
| Db           | char(64)                                              | NO   | PRI |                     |                               |
| User         | char(80)                                              | NO   | PRI |                     |                               |
| Routine_name | char(64)                                              | NO   | PRI |                     |                               |
| Routine_type | enum('FUNCTION','PROCEDURE','PACKAGE','PACKAGE BODY') | NO   | PRI | NULL                |                               |
| Grantor      | char(141)                                             | NO   | MUL |                     |                               |
| Proc_priv    | set('Execute','Alter Routine','Grant')                | NO   |     |                     |                               |
| Timestamp    | timestamp                                             | NO   |     | current_timestamp() | on update current_timestamp() |
+--------------+-------------------------------------------------------+------+-----+---------------------+-------------------------------+
8 rows in set (0.001 sec)
posted @ 2022-06-07 14:37  DogLeftover  阅读(39)  评论(0编辑  收藏  举报