连接MySQL数据库遇到的问题_远程连接mysql数据库碰到的问题及解决方案

直接用SecureCRT登录到我的linux服务器,连接mysql后出现以下错误

575f0bea2c67abf8441708a94d9f4f83.png

然后我用root用户登录到mysql查看了我的用户信息,如下

2bbf3e8c12386524ebe271438e0ac256.png

出现问题1的原因有很多种,我这里是因为用错了yanglibin这个用户的密码,用正确的密码就ok了

那篇博客里面还提到过一种很常见的问题就是mysql无法远程登录,

也就是“原因2 : 用户账号存在,但未对其所在的客户端的IP进行远程访问授权允许”

为了模拟这种情况,我创建了一个用户 testmysql如下

eae2f6b76a3ad26010576dd7494ed572.png

提示错误信息如下

853f6341c73f6aa57c34b2d6ef9ec5e9.png

这种情况就如博客中所说的“原因2”解决方法是给testmysql用户赋予它所有机器可以登录的权限

注:用以下方式授权用户的前提是mysql.user表中没有其他的testmysql用户,否则很容易报错

5ffb414ccee888fc1a7512acc848a244.png

4c915c2b5ce33c99810944eb41f8641f.png

为了测试方便我另建了一个用户testmysql1;

133a621457326b1f227e3fed04d2487a.png

最后发现用testmysql1这个用户还是无法登陆的mysql,从那篇博客中的以下截图中找到了一个方法,就是把testmysql1这个用户的密码置空

update mysql.user set Password = PASSWORD('') where User= 'testmysql1';

然后去登陆就可以了,不太清楚这是为什么,很疑惑

d9b4436930357f33ddbd835eb14a4b06.png

这个时候已经可以通过远程链接,如用secureCRT用testmysql1用户去登录mysql,可以行通,但是用这个用户通过navicat这个软件去连接mysql会提示如下错误

2e78c6243fe580161340f038125ae3ba.png

到了这一步碰到这个问题找了很多网上的解决方法,比如

但是都无法解决我的问题,没办法只有继续找了,无意中看到有可能是因为本地机的3306端口被占用,根据这一提示就试着改了下/etc/my.cnf

如下:

vim /etc/my.cnf

85d1a77207e14744beff7f5a0266ce67.png

再去用navicat连接mysql就可以了,当然这只是一个测试用例为了去说明问题,正式情况一般不会去改mysql的端口号

dd734d54ba57838bdda39103c0812c8d.png

另外推荐一篇关于mysql用户权限的文章

http://blog.csdn.net/mchdba/article/details/45934981

Navicat for mysql 远程连接 mySql数据库10061、1045错误

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值