在之前的博客中介绍过在阿里云上部署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