-- 使用mysql库,查询host和用户名
use mysql;
select host,user FROM user
-- 创建一个用户(这样创建默认是%,表示任何ip都可以连接)
create user 'zhang3(这里填写用户名)' IDENTIFIED by '这里填写密码'
-- @符号后面如果加上localhost,表示只可以本地连接
create user 'zhang3'@'localhost' IDENTIFIED by '这里填写密码'
-- 这个是刷新操作:添加后可以刷新一下表
FLUSH PRIVILEGES;
-- 删除用户 ,删除操作不用刷新
drop user 'zhang3(这里填写删除的用户名)'@'localhost'
-- 当前登录root用户,修改其他用户的密码,修改完成之后,需要flush刷新一下
alter user 'zhang3'@'%' IDENTIFIED by '新的密码'
FLUSH PRIVILEGES;
-- 查询有多少个库
show DATABASES;
-- 赋予某个用户对某个数据库的操作 解释:*.* 表示,把所有的库,所有的表的权限(增删改查等)都赋予给zhang3
-- 解释:WITH GRANT OPTION 这个选项, 表示该用户可以将自己拥有的权限授权给别人,经常有人在创建的时候,不添加这个选项,导致后来该用户不能使用GRANT创建用户或者授权给其他人
(1)赋予某个用户对某个库所有的操作
GRANT ALL PRIVILEGES ON *.* to 'zhang3'@'%' WITH GRANT OPTION;
(2)赋予某个用户对库查询和修改的权限,注意:库名.表名 不用带单引号
GRANT SELECT,UPDATE ON 这里填写数据库的名称.这里填写哪张表,如果是库下的所有表,可以用【*】代替 to 'zhang3'@'%' WITH GRANT OPTION;
-- 查看权限
show PRIVILEGES;
-- 回收权限
(1)回收单个权限,比如回收某个用户对库中所有表的select(查询)权限 : 库名.表名(datatest.*),意思就是数据库名为datatest下的所有表
REMOVE SELECT ON 这里填写数据库名(比如datatest).这里填写需要回收的哪张表,如果是所有表的查询权限,就填写【*】号 FROM 'zhang3'@'%';
(2)回收某个用户的所有权限
REMOVE ALL PRIVILEGES ON *.* FROM 'zhang3'@'%';
结语:现在没时间了,因为我要睡觉了!等凑出时间,下一篇,访问控制!
标签:GRANT,--,用户,zhang3,Mysql,操作,填写,权限 From: https://www.cnblogs.com/zhangyufan/p/16951178.html