失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > MySQL学习(11)︱禁止ROOT用户远程登陆与找回密码

MySQL学习(11)︱禁止ROOT用户远程登陆与找回密码

时间:2022-03-23 10:51:26

相关推荐

MySQL学习(11)︱禁止ROOT用户远程登陆与找回密码

禁止ROOT用户远程登陆

在实际工作中,公司的DBA都会设置禁止ROOT用户远程登陆,原因如下:

ROOT是MySQL数据库的超级管理员,几乎拥有所有权限,一旦泄露后果非常严重!ROOT是MySQL数据库的默认用户,所有人都知道,如果不禁止远程登陆,可以针对ROOT用户暴力破解密码!

为了确保数据库的安全,要保证你的MySQL数据库ROOT用户的登陆主机/IP为localhost,如下图所示

如果ROOT用户的host并非localhost,可以通过以下几步进行修改:

连接数据库,使用mysql数据库

USE mysql;

修改root用户的host字段的值

UPDATE user SET host='localhost' WHERE user='BigG';

此时ROOT用户就只能够从本机登陆,无法远程登陆了。

找回ROOT用户的密码

在MySQL中,如果只是忘记了普通用户的密码,很好解决,只需要以root用户登陆后重置密码即可。但忘记了root用户的密码,通过以下几步即可重置密码:

关闭MySQL服务

win+r打开运行,输入cmd并回车,输入指令net stop mysql80并回车,此时MySQL服务已停止

重启MySQL时关闭权限验证

mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" --console --skip-grant-tables --shared-memory//这一步可以关闭重启MySQL服务时的权限验证,双引号里的路径记得改成自己的路径哦

修改root用户的密码

//上一步的窗口切记不要关闭!!!//再次开启新的cmd窗口,直接输入命令mysql即可登陆数据库,此时虽然不是root用户的身份,但却拥有root身份的所有权限!FLUSH PRIVILEGES;//先刷新权限,再修改密码,这两步不要弄反了ALTER user 'root'@'localhost' IDENTIFIED BY '123456';//此时就可以正常地修改root用户的密码和主机名啦~

正常启动MySQL服务

//回到第2步的窗口,按下Ctrl+C,然后输入下面的命令net start mysql80//此时MySQL服务就正常启动啦~

注:本文是博主MySQL学习的总结,不支持任何商用,转载请注明出处!如果你也对MySQL学习有一定的兴趣和理解,欢迎随时找博主交流~

如果觉得《MySQL学习(11)︱禁止ROOT用户远程登陆与找回密码》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。