zoukankan      html  css  js  c++  java
  • MySQL数据库远程连接

    3306端口一般是指MySQL数据库的默认端口。

    折腾了一晚上,远程无法连接服务器上的MySQL服务。天亮前终于得到彻底解决。

    我使用的是阿里云的服务器,系统为CentOS7

    首先,你要确保在服务器上安装好Mysql,并能本地启动。修改密码后,通过诸如Navicat的可视化界面管理工具连接数据库,打开mysql这个数据库中的user表,将user是root的这一行数据的host由localhost改为%,表示任何ip都可以通过这个用户连接;

      然后,我配置好了防火墙并且开启了80和3306端口,之后使用ping 我的公网IP地址,能接通,说明网络没问题,接下来我使用 “telnet 公网IP 3306”测试3306端口是否能够被访问,结果显示连接超时,接着谷歌后发现需要再阿里云中开启3306端口 

      第三步,在阿里云的云服务器管理控制台添加安全组规则(端口3306),通常还需要配置80端口,但是一般来说既然都能远程连接服务器了,这个都是配置了;

      第四步,在服务器的mysql服务启动的情况下,尝试远程用navicat去连接一下,如能成功就是人品好啊,我就是到这一步连接成功了

    ======================================================================================================================

      如果就是连不上,错误代码10060;

      错误解决:

      第一步:下载端口扫描工具,方便一点。这里我用的是这个:链接:http://pan.baidu.com/s/1qYfkIpI 密码:3h0j ;输入IP地址和端口范围,扫描一下服务器上开放的ip有哪些。比如我开始的情况是:服务器上能连接本地mysql3306,然后远程用端口扫描工具只能扫出80,3389(远程连接端口),8080(tomcat默认端口)这几个端口,所以一直远程连接不上,如果你80、3389端口都扫不出来的话,那问题很可能就是开了防火墙,或者云控制台没有加入规则;

      第二步:

      检查错误:

      1、防火墙是否已经关闭,或者3306端口是否加入入站规则(前面说了,后者我这行不通);

      2、检查云控制平台是否加入了相应端口规则。

      3、服务器安装了安全狗等安全防御软件,检查防御软件是否屏蔽了3306端口。 (坑:我就是因为这个,安装这些软件的时候,又不提醒我屏蔽了3306端口),关闭安全狗的安全防护即可。

    这里贴上解决我问题的帖子(阿里云服务器配置的帮助文档):https://help.aliyun.com/knowledge_detail/36129.html

  • 相关阅读:
    面向接口程序设计思想实践
    Block Chain Learning Notes
    ECMAScript 6.0
    Etcd Learning Notes
    Travis CI Build Continuous Integration
    Markdown Learning Notes
    SPRING MICROSERVICES IN ACTION
    Java Interview Questions Summary
    Node.js Learning Notes
    Apache Thrift Learning Notes
  • 原文地址:https://www.cnblogs.com/wjlbk/p/12633488.html
Copyright © 2011-2022 走看看