1) 权限的授予与回收 方法一:Mysql 的权限系统相关权限信息主要存
1) 权限的授予与回收
方法一:Mysql 的权限系统相关权限信息主要存储在几个被称为grant tables 的系统表中,即: mysql.User,mysql.db,mysql.Host,mysql.table_priv 和mysql.column_priv。手工修改了权限相关的表之后,都需要执行“FLUSH PRIVILEGES”命令重新加载MySQL的权限信息;
方法二:通过GRANT,REVOKE 或者DROP USER 命令来修改相关权限,则不需要手工执行FLUSH PRIVILEGES 命令;因为通过GRANT,REVOKE 或者DROP USER 命令所做的权限修改在修改系统表的同时也会更新内存结构中的权限信息。在MySQL5.0.2 或更高版本的时候,MySQL 还增加了CREATE USER 命令,以此创建无任何特别权限(仅拥有初始USAGE权限)的用户,通过CREATE USER 命令创建新了新用户之后,新用户的信息也会自动更新到内存结构中。所以,建议读者一般情况下尽量使用GRANT,REVOKE,CREATE USER 以及DROP USER 命令来进行用户和权限的变更操作,尽量减少直接修改grant tables 来实现用户和权限变更的操作。
2) 查看授予的权限
查看某个用户目前拥有的权限,这可以通过两个方式实现:
首先是通过执行“SHOW GRANTS FOR 'username'@'hostname'” 命令来获取之前该用户身上的所有授权。
另一种方法是查询grant tables 里面的权限信息。
3) 权限级别
MySQL 中的权限分为五个级别,分别如下:
权限 |
Global |
Database |
Table |
Column |
Routine |
INSERT |
Y |
Y |
Y |
Y |
|
SELECT |
Y |
Y |
Y |
Y |
|
UPDATE |
Y |
Y |
Y |
Y |
|
ALTER |
Y |
Y |
Y |
||
CREATE |
Y |
Y |
Y |
||
DELETE |
Y |
Y |
Y |
||
DROP |
Y |
Y |
Y |
||
INDEX |
Y |
Y |
Y |
||
ALTER ROUTINE |
Y |
Y |
Y |
||
EXECUTE |
Y |
Y |
Y |
||
ALL [PRIVILEGES] |
Y |
Y |
|||
CREATE ROUTINE |
Y |
Y |
|||
CREATE TABLESPACE |
Y |
Y |
|||
CREATE TEMPORARY TABLES |
Y |
Y |
|||
CREATE VIEW |
Y |
Y |
|||
EVENT |
Y |
Y |
|||
GRANT OPTioN |
Y |
Y |
|||
LOCK TABLES |
Y |
Y |
|||
PROXY |
Y |
Y |
|||
REFERENCES |
Y |
Y |
|||
SHOW DATABASES |
Y |
Y |
|||
SHOW VIEW |
Y |
Y |
|||
TRIGGER |
Y |
Y |
|||
CREATE USER |
Y |
||||
FILE |
Y |
||||
PROCESS |
Y |
||||
RELOAD |
Y |
||||
REPLICATION CLIENT |
Y |
||||
REPLICATION SLAVE |
Y |
||||
SHUTDOWN |
Y |
||||
SUPER |
Y |
||||
USAGE |
Y |
--结束END--
本文标题: MySQL权限系统简介
本文链接: https://lsjlt.com/news/45194.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-23
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0