当前位置:网站首页>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 '用户名'@'登陆位置';

边栏推荐
猜你喜欢
随机推荐
线程安全(上)
"Weekly Translate Go" This time we have something different!-- "How to Code in Go" series launched
Fiddle设置接口数据用指定工具查看;Sublime Text设置json数据格式化转换
Xcode13.1 run engineering error fatal error: 'IFlyMSC/IFly h' file not found
Digital twins help visualize the construction of smart cities
如何成为一名正义黑客?你应该学习什么?
js how to get the browser zoom ratio
Flutter 常见异常分析
基于“无依赖绝对定位”实现的圣杯三栏布局
Informatics Olympiad All-in-One (1257: Knight Moves)
引用类型 ,值类型 ,小坑。
Common tools and test methods for interface testing (Introduction)
TodoList案例
ALV report learning summary
浅议.NET遗留应用改造
模板的进阶
php 单引号 双引号 -> => return echo
The five classification of software testing
Wintun:一款惊艳的 WireGuard 虚拟网卡接口驱动
新增指令 v-memo








