mysql查看,创建,授权,删除用户

x33g5p2x  于2022-02-18 转载在 Mysql  
字(1.6k)|赞(0)|评价(0)|浏览(354)

mysql查看,创建,授权,删除用户

一、查看用户

查看用户并没有直接的SQL语句,而是进入 mysql数据库的user表(这个mysql库和user表都是一开始就有的),直接用 select * from user;来查看有什么用户

use mysql;
select * from user;

二、创建用户

格式:

CREATE USER 'user_name'@'host' IDENTIFED BY 'password';

解释:

  • user_name:要创建用户的名字
  • host:表示要这个新创建的用户允许从哪台机登陆,如果只允许从本机登陆,则 填 ‘localhost’ ,如果允许从远程登陆,则填 ‘%’
  • password:新创建用户的登陆数据库密码,如果没密码可以不写

例子:

//表示创建的新用户,名为aaa,这个新用户密码为123456,只允许本机登陆
create USER 'aaa'@'localhost' IDENTIFIED by '123456';

//表示新创建的用户,名为bbb,这个用户密码为123456,可以从其他电脑远程登陆mysql所在服务器
create USER 'bbb'@'%' IDENTIFIED by '123456';

/表示新创建的用户ccc,没有密码,可以从其他电脑远程登陆mysql服务器
create USER 'ccc'@'%';

三、授权用户

格式:

GRANT privileges ON databasename.tablename TO 'username'@'host';

解释:

  • privileges:表示要授予什么权力,例如可以有 select , insert ,delete,update等,如果要授予全部权力,则填 ALL
  • databasename.tablename:表示用户的权限能用在哪个库的哪个表中,如果想要用户的权限很作用于所有的数据库所有的表,则填 .,*是一个通配符,表示全部。
  • 'username'@'host':表示授权给哪个用户

例子:

//表示给用户ccc授权,让ccc能给dcim库中的user表 实行 insert 和 select
GRANT insert,select ON dcim.user TO 'ccc'@'%';

表示给用户bbb授权,让bbb能给所有库所有表实行所有的权力
GRANT ALL ON *.* TO 'bbb'@'%';

注意:

用以上命令授权的用户不能给其他用户授权,如果想这个用户能够给其他用户授权,就要在后面加上 WITH GRANT OPTION

GRANT ALL ON . TO ’aaa‘@’%’ WITH GRANT OPTION;

四、删除用户

格式:

DROP USER 'user_name'@'host';

例子:

DROP USER 'bbb'@'%';

五、修改用户密码

格式:

SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');

例子:

set PASSWORD FOR 'aaa'@'localhost' =PASSWORD('12345678');

如果是设置当前用户的密码:

SET PASSWORD = PASSWORD('newpassword');

例子:
SET PASSWORD = PASSWORD(‘123456’);

六、撤销用户权限

格式:

REVOKE privileges ON database.tablename FROM 'username'@'host';

例子:

REVOKE select ON *.* FROM 'ccc'@'%';

注意:

若授予权利是这样写: GRANT SELECT ON . TO ‘ccc’@‘%’;

则用 REVOKE SELECT ON dcim.user TO ‘ccc’@‘%’;是不能撤销用户ccc 对 dcim.user 中的SELECT 权利的

反过来 GRANT SELECT ON dcim.user TO ‘ccc’@‘%’;授予权力

用 REVOKE SELECT ON . FROM ‘ccc’@‘%’;也是不能用来撤销用户ccc 对dcim库的user表的SELECT 权利的

相关文章

最新文章

更多