• 欢迎访问废江网站,承蒙遇见 QQ群
  • 本站将致力于推送优质的java知识以及算法,开源代码!

数据库误删了root,如何解决?

个人日常 站点默认 2年前 (2021-11-15) 827次浏览 已收录 0个评论 扫描二维码

今天是真的倒霉的一天,本来学springcloud的时候,连接的数据库我想使用阿里云的远程数据库,但死活连接不上,离谱。于是,我开始进行分析:
首先:sqlyog等工具可以连接成功,但是idea使用springboot配置连接不行
分析:sqlyog是通过连接云主机,然后通过localhost去连接的,springboot则是通过你本地的电脑的ip地址去连接的,因此,区别就是一个ip地址的不同。其次,如果这个没问题的话,那出现的问题只有springboot配置,jar冲突啥的。

于是,我去阿里云查看对远程ip地址的的访问支持。这里后面我总结两点:1.数据的root用户的访问权限,2.mysql的配置文件

针对第一点:我们进入user表,对root用户进行赋予权限即可

例如:

表示给张三用户授予所有权限,在任意数据库任意表上

针对第二点:修改/etc目录或者/etc/mysql目录下的my. cnf,将这段代码:

注释掉,或者将其值改成0.0.0.0,表示允许任何ip主机访问此数据库。如果还是不行?添加这段代码

注意:这两句代码都是在[mysqld]配置下面

但是,我这两个问题都排查了,还是不行,也可能是最后我没去修改root的来源ip访问权限问题,我只是去添加了root的来源ip这一字段。此外,我还删了三个root字段,在最后。于是,悲剧来了。误删了root用户的数据库还能挽救吗?
这里,我有一个问题先贴出来:我为什么会删root账号呢,因为一个数据有四个root账号,我查了资料好像是为了更方便的控制访问权限,我在最后删除了其他三个root后,留下的ip地址为%,即通配符所有的ip地址。但我删了三个root后,后面居然登录不上两道mysql。
关于之后的理解:我删了三个root后,没有给剩下的一个root配置权限管理。有大佬看了文章,可以指点迷津给我一二,感激不尽。

那么现在问题如何解决?既然是删了root,重新创建回来就好了,想要重新创建就必须进入mysql,这里直接使用安全命令,不用输入密码进入。

登录成功后,创建root表,设置密码,设置权限等

每次授权后记得加上这语句

重启mysql

以下是一些参考资料

访问权限
root不能登录


重点来了,忙活了一下午加一个晚上,springboot远程连接阿里数据库没连上,现在root用户权限还弄坏了。总结:没事别找事,本来看视频连不上远程,就可以放手直接连接本地的,结果浪费了一个下午,一个晚上,以后绝不会有下次了!草

废江博客 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:数据库误删了root,如何解决?
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址