mysql的权限管理和用户创建

通过grant和revoke可以在几个层次上控制访问权限
1,全局层级:整个服务器,使用 grant ALL 和revoke ALL
2,数据库层级:整个数据库,使用on database.*
3,表层级:特点表,使用on database.table
4,列层级:特定的列
5,子程序层级:特定的存储过程

权限管理:

一、权限

命令标识  								            授权表中对应的列				            说明

CREATE												Create_priv							创建数据库、表或索引

CREATE TEMPORARY TABLES								Create_tmp_table_priv				创建临时数据表

CREATE ROUTINE										Create_routine_priv					创建函数或存储

CREATE VIEW											Create_view_priv					创建视图

CREATE USER											Create_user_priv					创建用户

EXECUTE												Execute_priv						执行函数或存储过程

INDEX												Index_priv							建立索引

REFERENCES											References_priv						建立约束

DROP												Drop_priv							删除表

SELECT												Select_priv							查询数据

INSERT												Insert_priv							插入数据

UPDATE												Update_priv							更新数据

DELETE												Delete_priv							删除数据

LOCK TABLES											Lock_tables_priv					锁定表格

SHOW DATABASES										Show_db_priv						列出数据库

SHOW VIEW											Show_view_priv						列出视图

USAGE																					只有登录权限,其他权限都没有

ALL																						所有权限,除了WITH GRANT OPTION

ALTER												Alter_priv							更改数据表

ALTER ROUTINE										Alter_routine_priv					更改函数或存储过程

PROCESS												Process_priv						显示连接进程和中断连接进程

FILE												File_priv							载入文件

RELOAD												Reload_priv							可以用FLUSH

REPLICATION CLIENT									Repl_client_priv					可以检查Masters和Slaves

REPLICATION SLAVE									Repl_slave_priv						在Slave里的特殊权限

SHUTDOWN											Shutdown_priv						关闭MySQL

WITH GRANT OPTION									Grant_priv							可以将自己拥有的权限赋给其他用户

SUPER												Super_priv							执行kill线程,change master、purge master logs、set global等命令的权限

create tablespace									Create_tablespace_priv 				创建表空间

Event												Event_priv 							确定用户能否创建、修改和删除事件

Trigger												Trigger_priv 						确定用户能否创建和删除触发器

我们可以看下root的权限是怎么样的

show grants for root;

在这里插入图片描述
1、那么我们来创建一个账号test,授予全局层级的权限

grant select,insert on *.* to test@'%' identified by 'test';
flush privileges;

在这里插入图片描述
2、那么我们来创建一个账号test,授予数据库层级的权限

grant select,insert,update,delete on wangzhan.* to test@'%' identified by 'test';

可以看到现在只有对名为wangzhan的数据库具有操作
在这里插入图片描述
其他级别的设置也差不多一样…


撤销权限用法:revoke 权限 on 数据库.* from 用户名@“客户端地址”;

比如撤销所有权限:revoke all on *.* from test@'%';

比如撤销单独file权限 限制着你能否把文件导入grant file on *.* to test;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值