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访问控制实现原理

相关推荐
徐子元竟然被占了!!8 小时前
Linux-systemctl
linux·数据库·oracle
YJlio10 小时前
Active Directory 工具学习笔记(10.8):AdInsight——保存与导出(证据留存、共享与二次分析)
数据库·笔记·学习
suoyue_zhan10 小时前
GBase的管理监控平台GEM实践指南
数据库
哈哈老师啊10 小时前
Springboot学生综合测评系统hxtne(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·数据库·spring boot
小小8程序员11 小时前
Redis-10
数据库·redis·缓存
liuzhilongDBA11 小时前
从collation mismatch异常到其原理
数据库·version·glibc·postgres·collation
梁萌11 小时前
MySQL数据库分库分表介绍
数据库·mysql·shardingsphere·分库分表
占疏12 小时前
dify API访问工作流/聊天
开发语言·数据库·python
Cat God 00713 小时前
SQL使用及注意事项
数据库·sql·mysql