一、查看用户
查看用户并没有直接的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等,如果要授予全部权力,则填 alldatabasename.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 权利的
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论