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

禁止ROOT用户远程登陆

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

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

为了确保数据库的安全,要保证你的MySQL数据库ROOT用户的登陆主机/IP为localhost,如下图所示在这里插入图片描述
如果ROOT用户的host并非localhost,可以通过以下几步进行修改:

  1. 连接数据库,使用mysql数据库
USE mysql;
  1. 修改root用户的host字段的值
UPDATE user SET host='localhost' WHERE user='BigG';

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

找回ROOT用户的密码

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

  1. 关闭MySQL服务
win+r打开运行,输入cmd并回车,输入指令net stop mysql80并回车,此时MySQL服务已停止
  1. 重启MySQL时关闭权限验证
mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" --console --skip-grant-tables --shared-memory
//这一步可以关闭重启MySQL服务时的权限验证,双引号里的路径记得改成自己的路径哦
  1. 修改root用户的密码
//上一步的窗口切记不要关闭!!!
//再次开启新的cmd窗口,直接输入命令mysql即可登陆数据库,此时虽然不是root用户的身份,但却拥有root身份的所有权限!
FLUSH PRIVILEGES;//先刷新权限,再修改密码,这两步不要弄反了
ALTER user 'root'@'localhost' IDENTIFIED BY '123456';//此时就可以正常地修改root用户的密码和主机名啦~
  1. 正常启动MySQL服务
//回到第2步的窗口,按下Ctrl+C,然后输入下面的命令
net start mysql80
//此时MySQL服务就正常启动啦~

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

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Ubuntu上创建root用户密码并允许远程访问MySQL,可以按照以下步骤操作: 1. 打开终端,运行以下命令以安装MySQL服务器: ```bash sudo apt-get install mysql-server ``` 2. 安装完成后,使用以下命令启动MySQL服务: ```bash sudo systemctl start mysql ``` 3. 运行以下命令以保护MySQL安装: ```bash sudo mysql_secure_installation ``` 4. 系统将提示您输入MySQL root用户密码。按照提示,先按Enter键,然后设置您自己的密码。请注意,您的输入将不会显示在命令行中。 5. 接下来,系统会询问您是否要继续使用密码验证插件。选择Y并按Enter键。 6. 在接下来的步骤中,您可以选择不使用匿名用户登录和禁用远程root登录。选择默认选项即可。 7. 完成安全设置后,使用以下命令连接到MySQL: ```bash sudo mysql -u root -p ``` 8. 输入刚才设置的root密码,然后按Enter键。 9. 连接成功后,可以创建远程访问MySQLroot用户。运行以下命令: ```sql GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '您的密码' WITH GRANT OPTION; ``` 10. 替换`您的密码`为您想要设置的远程root用户密码11. 接下来,刷新MySQL特权: ```sql FLUSH PRIVILEGES; ``` 12. 最后,运行以下命令以允许远程访问MySQL主机: ```bash sudo ufw allow mysql ``` 现在,您已成功创建了root用户密码,并且可以通过远程访问MySQL。请记住,远程访问MySQL可能存在安全风险,应谨慎使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值