当前位置:网站首页>Mysql用户管理
Mysql用户管理
2022-08-02 20:28:00 【GSX_MI】
- root账户能操纵所有的数据库,如果其他用户知道root的密码,就会有很大风险。
一.用户管理
1.查看数据库mysql的user表
- host: 表示这个用户可以从哪个主机登陆,如果是localhost,表示只能从本机登陆; 如果是%表示可以从任意地方登陆
- user: 用户名
- authentication_string: 用户密码通过password函数加密后的
- *_priv: 用户拥有的权限
2.创建用户
- 关于新增用户这里,需要大家注意,不要轻易添加一个可以从任意地方登陆的user, 这里是为了测试
- 可能实际在设置密码的时候,因为mysql本身的认证等级比较高,一些简单的密码无法设置,会出现报错,提前设置认证等级
create user '用户名'@'登陆主机/ip' identified by '密码';
3.删除用户
- 直接给个用户名,不能删除,它默认是%,表示所有地方可以登陆的用户; 如果host是%可以直接删除,不是%不能直接删除。
drop user '用户名'@'主机名';
4.修改用户密码
- 自己改自己的密码
set password=password('新的密码');
- root修改指定用户的密码
set password for '用户名'@'主机名'=password('新的密码');
二.数据库权限
1.给用户授权
- 刚创建的用户没有任何权限。需要给用户授权。
grant 权限列表 on 库.对象名 to '用户名'@'登陆位置' [identified by '密码']
说明:
- 权限列表,多个权限用逗号分开
grant select on ...
grant select, delete, create on ....
grant all [privileges] on ... // 表示赋予该用户在该对象上的所有权限
- *.* : 代表本系统中的所有数据库的所有对象(表,视图,存储过程等)
- 库.* : 表示某个数据库中的所有数据对象(表,视图,存储过程等)
- identifified by可选。 如果用户存在,赋予权限的同时修改密码 ; 如果该用户不存在,就是创建用户
2.授权案例
(1)给用户gsx赋予mysql_test数据库下所有文件的select权限,赋完权就能看到新的表了
(2)只能查看表,不能删除表,因为没有权限
(3)特定用户现有权限查看
- all给所有权限
(4)如果发现赋权限后,没有生效,执行如下指令
flush privileges;
3.回收权限
revoke 权限列表 on 库.对象名 from '用户名'@'登陆位置';
边栏推荐
猜你喜欢
随机推荐
The software testing process specification is what?Specific what to do?
postgresql autovaccum自动清理
STP生成树协议
软件成分分析:华为云重磅发布开源软件治理服务
太魔人招新啦|快来加入我们吧!
How the sensor works
C# Monitor类
js Fetch返回数据res.json()报错问题
力扣每日一题-第46天-344. 反转字符串
浅议.NET遗留应用改造
一次线上事故,我顿悟了异步的精髓
Thread线程类基本使用(下)
56.【全局变量和局部变量专题】
Golang source code analysis: time/rate
Li Mu hands-on deep learning V2-BERT pre-training and code implementation
框架设计:PC 端单页多页框架如何设计与落地
.NET如何快速比较两个byte数组是否相等
ALV concept explanation
模板的进阶
OP analysis and design