数据库-用户权限管理-CSDN博客
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
创建用户
create user 'test'@'localhost' identified by '123456';
create user 创建用户的固定开头
'test'@'localhost' test为用户名
localhost:新建用户可以在哪些主机上登录即使可以使用IP地址网段主机名都可以
identified by '123456';新建用户的密码
如何以加密的形式创建用户
select PASSWORD('abc123');
如何给创建的用户赋权
grant all privileges on *.* to 'test'@'localhost' identified by '123456';
grant 赋权的开头语句
all privileges 赋予所有权限
on *.* 对所有库都有操作权限
grant all privileges on kgc.* to 'test'@'localhost' identified by '123456';
on kgc.* 只能对指定的库进行操作
to 'test'@'localhost' 赋权给哪个用户
identified by '123456'使用哪个密码进行登录创建用户的时候可以省略密码为空。
要在命令行登录赋予权限
Show grants for 'test'@'localhost';查看
赋权之前一定要刷新
Flush privileges;
小练习
- 创建一个用户名 test1
- 第二个只允许该用户从20.0.0.52 这个终端登录
- 第三个只能对kgc库有权限其他库一律不行
从其他客户端登录的方式
如何删除用户的权限
回终端执行
错误书写:revoke all PRIVILEGES on *.* from 'test1'@'20.0.0.52';
删除用户权限一定要精确匹配所以正确的书写方式
删除用户的所有权限revoke all PRIVILEGES on kgc.* from 'test1'@'20.0.0.52';
删除权限之后还是可以登录的
如何对权限进行控制
只给用户查的权限
Grant select on kgc.* to ‘test1’@’20.0.0.52’ identified by ‘123456’;
如何删除select权限
revoke select on kgc.* from ‘test1’@’20.0.0.52’
如何给一个用户赋予多个权限
grant select,insert,drop,update on laker.* to 'test1’@2’0.0.0.52'identified by '123456';
删除单个权限
删除全部权限
用户重命名
rename user 'test1'@'20.0.0.52' to 'wang'@'20.0.0.52';
删除用户
drop user 'test1'@'20.0.0.51';
修改当前用户的密码只能在终端执行
set password = password('abc123');
修改其他用户的密码
set password for 'wang'@'20.0.0.52' = password('abc123');
忘记root密码如何恢复
- 改配置文件设置免密登录
- 改密码改的话必须要加密回到命令行终端修改
加密