MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)

用户管理

MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
权限体系
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
几点说明:
①必须通过用户名@主机名才能登录数据库!!
②root用户其实只能在本机访问数据库,为了安全

实例1

建两个用户lucy zs
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
lucy用户登录MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
查看lucy用户所拥有的数据库(只有一个)
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
zs用户登录:使用localhost主机名登陆不了,因为创建的时候规定了zs用户的指定主机名
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)

权限管理(授权与回收)

MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
说明:授哪些权 增删改查 建表啥的权限 撤销授权语句和授权语句差不多
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)

实例2

查看刚才创建的lucy的权限:只有usage登录的权限
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
给lucy赋mydb所有表格查询的权力
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
lucy用户再次登录MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
查看其拥有的数据库

MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
使用某一数据库 查看数据表 查询信息都是可以的 但是无法进行删除信息等 没权利
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
收获lucy查询mydb的权力
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
lucy再次登录
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
查看lucy所拥有的数据库,发现只有一个了
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)

禁止root用户远程登录

MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)

实例3

root用户登录
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
查看user表
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
将zs用户的host改成 %
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
再次查看
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)

忘记root密码的解决办法

分为4步!MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
说明:
1.第二步的意思是我不需密码直接进入
类似root用户进入一样的

语句的几个参数
指向配置文件位置
console控制台,我们加了这个参数之后控制台就不会关闭了,一些错误输出啥的都会输出到控制台 (5.几的数据库 有的部分是不用写的)MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
2.第三步意思是修改root用户密码

连接进去,这时候直接用mysql就可以连接,相当于超级管理员身份。接下来还要进行刷新权限,修改用户密码
MySQL——DCL,关于用户管理,用户权限设置,root用户密码忘记操作(8.0版本)
修改root用户密码总结:
1.关闭mysql服务
2.关闭权限验证重启mysql
3.新开dos窗口进入mysql
4.刷新权限,修改root用户密码
5.按照正常方式启动mysql
理解一个问题:注意修改用户的时候是 用户名@主机名 的形式,这要注意匹配,如果不知道root用户的主机名,可以从user表中进行查看