Navicat远程连接阿里云上数据库时,出现错误:1045-Access denied for user 'root'@'localhost'解决方法

在之前的博客中介绍过在阿里云上部署mariadb数据库,并通过Navicat实现远程连接数据库的方法。好多天过去了,一直没有管理数据库,今天通过Navicat登录时突然报错:

å¨è¿éæå¥å¾çæè¿°

我又通过xshell登录阿里云,通过命令行的方式登录数据库,发现一切正常,但是用Navicat连接就报错,这就很奇怪了。于是就在网上找啊找,突然发现一个方法解决了我的问题,因此在这里记录一下:

先扯个淡
其实有些人看到这个问题,可能一上来就感觉是不是密码输入错误了。因为本人之前一直也没动过这个数据库,既然曾经连接好使过,那密码确实不应该出错。括号中(using password:?)?处如果输入密码了,就显示YES,如果啥也没输入,就显示NO。

另外网上还说,还有可能是端口冲突了。如果项目多,占用了3306端口的话就自己kill一下进程或者修改一下端口吧。

我的解决办法
进入到mariadb的安装目录下,我的是/etc/mysql,进入之后,文件目录如图所示:

å¨è¿éæå¥å¾çæè¿°
上述安装目录中,有两个配置文件需要重点关注一下:my.cnf和debian.cnf

在xshell命令行中cd到这个目录下,并分别用vim打开上述两个文件:

1.my.cnf

å¨è¿éæå¥å¾çæè¿°

在[mysqld]下添加:skip-grant-tables(如果没有mysqld的话就自己照着格式写一个)

å¨è¿éæå¥å¾çæè¿°
2.debian.cnf

å¨è¿éæå¥å¾çæè¿°
同样,在[mysqld]下添加:skip-grant-tables(如果没有mysqld的话就自己照着格式写一个)

å¨è¿éæå¥å¾çæè¿°
修改完上面两个文件之后,重启数据库 service mysql restart

这时候再用Navicat连接一下就好使了。又可以愉快的干活了~

最后
其实我认为上面两个应该是修改一个就可以,但是具体是修改哪个我也不知道,以防万一,就都改了吧。
如果找不到自己mariadb或者mysql安装到那个文件目录下了,用 whereis mysql 语句寻找(mariadb和mysql都是查找mysql)

然后å¨è¿éæå¥å¾çæè¿°挨个点进去找就行了。
最后别忘了重启数据库。
————————————————
版权声明:本文为CSDN博主「酷酷的橙007」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xiecheng1995/article/details/93203119

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值