MySQL——数据库的高级操作(三)权限管理(1)MySQL 的权限

在 MySQL数据库中,为了保证数据的安全性,数据管理员需要为每个用户赋予不同的权限,以满足不同用户的需求。

MySQL中的权限信息被存储在 MySQL 数据库的 user、db、host、tables_priv、column_priv 和 procs_priv 表中,当 MySQL启动时会自动加载这些权限信息,并将这些权限信息读取到内存中。

接下来通过图表列举一下 MySQL的相关权限以及在 user表中对应的列和权限范围。

|------------------------|-------------------------|------------|
| user 表的权限列 | 权 限 名 称 | 权 限 范 围 |
| Create_priv | CREATE | 数据库、表、索引 |
| Drop_priv | DROP | 数据库、表、视图 |
| Grant_priv | GRANT OPTION | 数据库、表、存储过程 |
| References_priv | REFERENCES | 数据库、表 |
| Event_priv | EVENT | 数据库 |
| Alter_priv | ALTER | 数据库 |
| Delete_priv | DELETE | 表 |
| Insert_priv | INSERT | 表 |
| Index_priv | INDEX | 表 |
| Select_priv | SELECT | 表、列 |
| Update_priv | UPDATE | 表、列 |
| Create_temp_table_priv | CREATE TEMPORARY TABLES | 表 |
| Lock_tables_priv | LOCK TABLES | 表 |
| Trigger_priv | TRIGGER | 表 |
| Create_view_priv | CREATE VIEW | 视图 |
| Show_view_priv | SHOW VIEW | 视图 |
| Alter_routine_priv | ALTER ROUTINE | 存储过程、函数 |
| Create_routine_priv | CREATE ROUTINE | 存储过程、函数 |
| Execute_priv | EXECUTE | 存储过程、函数 |
| File_priv | FILE | 范围服务器上的文件 |
| Create tablespace_priv | CREATE TABLESPACE | 服务器管理 |
| Create_user_priv | CREATE USER | 服务器管理 |
| Process_priv | PROCESS | 存储过程和函数 |
| Reload priv | RELOAD | 范围服务器上的文件 |
| Repl_client_priv | REPLICATION CLIENT | 服务器管理 |
| Repl_slave_priv | REPLICATION SLAVE | 服务器管理 |
| Show_db_priv | SHOW DATABASES | 服务器管理 |
| Shutdown_priv | SHUTDOWN | 服务器管理 |
| Super_priv | SUPER | 服务器管理 |

上表对 MySQL 的权限以及权限的范围进行了介绍,对于初学者来说可能无法理解,接下来针对表中部分权限进行分析,具体如下。

(1)CREATE 和 DROP 权限,可以创建数据库、表、索引,或者删除已有的数据库表、索引。

(2)INSERT、DELETE、UPDATE、SELECT 权限,可以对数据库中的表进行增删改查操作。

(3)INDEX权限,可以创建或删除索引,适用于所有的表。

(4)ALTER 权限,可以用于修改表的结构或重命名表。

(5)GRANT 权限,允许为其他用户授权,可用于数据库和表。

(6)FILE 权限,被赋予该权限的用户能读写 MySQL服务器上的任何文件。

上述这些权限只要了解即可,无须特殊记忆。

相关推荐
辞旧 lekkk5 小时前
【Qt】信号和槽
linux·开发语言·数据库·qt·学习·mysql·萌新
2301_809204706 小时前
JavaScript中严格模式use-strict对引擎解析的辅助.txt
jvm·数据库·python
zjy277777 小时前
mysql如何选择合适的索引类型_mysql索引设计实战
jvm·数据库·python
笨蛋不要掉眼泪7 小时前
Mysql架构揭秘:update语句的执行流程
数据库·mysql·架构
万邦科技Lafite7 小时前
京东item_get接口实战案例:实时商品价格监控全流程解析
java·开发语言·数据库·python·开放api·淘宝开放平台
秋98 小时前
ruoyi项目更换为mysql9.7.0数据库
数据库
Andya_net8 小时前
MySQL | MySQL 8.0 权限管理实践-精确赋予库、表只读等权限
android·数据库·mysql
筑梦之路9 小时前
harbor数据库报错权限异常如何处理——筑梦之路
数据库·harbor
czlczl2002092510 小时前
理解 MySQL 行锁:两阶段锁协议与热点更新优化
数据库·mysql
AllData公司负责人10 小时前
通过Postgresql同步到Doris,全视角演示AllData数据中台核心功能效果,涵盖:数据入湖仓,数据同步,数据处理,数据服务,BI可视化驾驶舱
java·大数据·数据库·数据仓库·人工智能·python·postgresql