MySQL安全(一)权限系统

一、授权

1、创建用户

在MySQL中,管理员可以通过以下命令创建用户:

复制代码
name'@'localhost' IDENTIFIED BY 'password';

name是要创建的用户名,localhost表示该用户只能从本地连接到MySQL,password是该用户的密码。如果要允许该用户从任何主机连接到MySQL,则可以将localhost改为%。

2、授予权限

在MySQL中,管理员可以通过以下命令授予用户权限:

复制代码
issioname'@'localhost';

issioname和localhost的含义同上。如要授予用户test在数据库test中的表user上进行SELECT和INSERT操作的权限,可以使用以下命令:

复制代码
GRANT SELECT,INSERT ON test.user TO 'test'@'localhost';
3、撤销权限

在MySQL中,管理员可以通过以下命令撤销用户权限:

复制代码
issioname'@'localhost';

issioname和localhost的含义同上。如要撤销用户test在数据库test中的表user上的SELECT和INSERT权限,可以使用以下命令:

复制代码
REVOKE SELECT,INSERT ON test.user FROM 'test'@'localhost';
4、查看权限

在MySQL中,管理员可以通过以下命令查看用户权限:

复制代码
name'@'localhost';

name和localhost的含义同上。要查看用户test在本地的权限,可以使用以下命令:

复制代码
SHOW GRANTS FOR 'test'@'localhost';

二、权限级别:

mysql中的权限分为5个级别

1、Global Level:
2、Database Level
3、Table Level
4、Column Level
5、Routine(常规) Level
6、特殊级别GRANT

除了上面几类权限之外,还有一个非常特殊的权限GRANT,拥有GRANT 权限的用户可以将自身所拥有的任何权限全部授予其他任何用户,所以GRANT 权限是一个非常特殊也非常重要的权限。GRANT 权限的授予方式也和其他任何权限都不太一样,通常都是通过在执行GRANT授权语句的时候在最后添加WITH GRANT OPTION 子句达到授予GRANT 权限的目的。

三、mysql访问控制实现原理

相关推荐
woshihuanglaoshi4 分钟前
数据迁移与版本管理 - Flutter在鸿蒙平台实现数据库升级策略
数据库·学习·flutter·华为·harmonyos·鸿蒙·鸿蒙系统
万亿少女的梦1685 分钟前
基于Spring Boot、Java与MySQL的网络订餐系统设计与实现
java·spring boot·mysql·系统设计·网络订餐
Database_Cool_2 小时前
阿里云 RDS MySQL 降本增效实战:从规格选型到成本优化,月成本降低64%全攻略
mysql·阿里云·云计算
java_logo2 小时前
Apache Doris Docker 部署指南:实时分析数据库实战
数据库·docker·apache·doris·apache doris·轩辕镜像·docker部署doris
广州灵眸科技有限公司9 小时前
xfce桌面触摸校准:基于灵眸科技EASY-EAl-Orin-Nano
数据库·windows·科技
天天进步201510 小时前
UI-TARS 源码解析 #10:parse_action 源码解析:如何用 AST 安全解析模型生成的函数调用?
安全·ui
大耳朵-小飞象11 小时前
电力安全运维的智能密码:BACS如何破解设备全生命周期管理难题,让电网安全“看得见、管得住”?
运维·安全·智慧城市·能耗系统·楼宇智控·未来生活
Cloud云卷云舒12 小时前
云卷云舒:从Oracle/MySQL迁移到HaishanDB:迁移评估工具核心技术拆解
mysql·oracle·ai-native·haishandb·信创数据库替换
憧憬成为web高手12 小时前
皮卡丘靶场速通--sql 2
数据库·sql·mybatis
段一凡-华北理工大学12 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化