在阿里云的服务器上安装了MySQL, 然后远程访问总是不通。 查询了很久,排查思路如下:

  1. 检查mysql是否启动
  2. 检查本机3306端口是否处于监听状态
  3. 检查阿里云控制台是否开启了安全限制
  4. 检查mysql用户能否在远程进行登录
  5. mysql 的 bind-address 设置为 127.0.0.1

我们来一步步排查。

  1. mysql是否启动
    这个比较简单, ps -ef | grep mysql 如果能看到对应的进程就是没有问题的

  2. 检查本机3306端口是否处于监听状态
    可以通过netstat -tlanp | grep 3306 来看mysql是否在监听。 如果本地端口监听状态 telnet 127.0.0.1 3306 看看是否成功, 如果成功, 则 在远程 telnet 公网ip 3306 来判断一下是否成功, 如果成功说明没有问题, 如果失败,继续往下看

  3. 检查阿里云控制台是否开启了安全限制
    阿里云默认是不会打开 3306端口的, 需要进行设置, 设置方法见: https://help.aliyun.com/document_detail/25471.html?spm=5176.11065259.1996646101.searchclickresult.42468fa7McebNN

  4. 检查mysql用户能否在远程进行登录
    这个主要是在新建mysql用户的时候 授权ip需要填写 % , 可以在远程进入mysql然后查询下。

$ sudo mysql -u root -p
进入mysql客户端之后,
use mysql;
select * from user;
查看一下 host 是否为 %

  1. mysql 的 bind-address 设置为 127.0.0.1

要找到bind-address的设置, 需要找到mysql的配置文件
$ sudo find / -name my.cnf

这个时候就能看到所有的配置相关的文件, 我看到的文件中有这么一段描述

'''
The MariaDB/MySQL tools read configuration files in the following order:

  1. "/etc/mysql/mariadb.cnf" (this file) to set global defaults,
  2. "/etc/mysql/conf.d/*.cnf" to set global options.
  3. "/etc/mysql/mariadb.conf.d/*.cnf" to set MariaDB-only options.
  4. "~/.my.cnf" to set user-specific options.
    '''

大意是根据根据 1,2,3,4的优先级来判断,那么就根据这4个文件寻找一下,
最后在 vi /etc/mysql/mariadb.conf.d/50-server.cnf 这个文件中找到了 bind-address 127.0.0.1 修改之后, 就完成了

阿里云telnet 3306端口失败的更多相关文章

  1. 解决阿里云服务器3306端口无法访问的问题(windows server 2008r2)

    3306端口一般是指mysql数据的默认端口.郁闷了几天的问题,远程无法连接服务器上的mysql服务.今天终于得到彻底解决. 首先,你要确保在服务器上安装好Mysql,并能本地启动.修改密码(如不知道 ...

  2. 阿里云服务器25端口禁用之如何使用Java发邮件(解决25端口禁用问题)

    通常我们在本地使用Java发送邮件,通常是没有问题的,但是部署到服务器的话,就可能遇到问题.当然了,这与运营商也有关系.比如我之前在咖啡主机上购买虚拟机,然后将个人网站部署上去,通常是没有问题的,没有 ...

  3. 阿里云WindowsServer2012安装IIS失败

    本文地址:http://www.cnblogs.com/drfxiaoliuzi/p/6388417.html 首先,向微软官方论坛的大神致敬: https://social.technet.micr ...

  4. sendEmail 阿里云使用587端口

    使用sendEmail使用参数   -o tls=yes -s smtp服务器+端口 因为阿里云屏蔽了25端口,我使用465也不成功,只有使用587端口,我使用的qq企业邮箱,测试可用

  5. telnet mysql3306端口失败

    在linux上telnet远程mysql端口失败,经过上网查找后,找到多种方法. (1)我在本地的Navicat上新增了一个用户,主机名是linux的ip,也可以是 %(百分号代表这个用户可以在任何地 ...

  6. 阿里云ECS新增端口

    由于本地开多台虚拟机玩集群,发现内存有点吃不消,好奇心的驱使下,买了一台阿里云玩玩,发现外面访问不了端口. 解决: 登陆阿里云网站,进入控制台,点击云服务器ECS 进入服务器控制台,点击要选择的服务器 ...

  7. 关于阿里云 ETC服务器 端口开放问题

    今天整了个阿里云,为了开放一个端口 各种入出规则整了半天 最后连一个hello world都发不出来.. 最后的最后 才知道 开端口除了做入规则操作 还得调一下阿里的控制台 当你也买了个ECS不要像我 ...

  8. 阿里云安装nginx 启动失败的原因。

    阿里云编译安装nginx服务器后启动一直报下面错误. 百度了一圈,看到一个说要先关掉apache服务,感觉这个好像是对的,立马做了下面操作. 果然把nginx起了起来. 从这边才知道apache和ng ...

  9. 关于阿里云Centos7 Mailx发送邮件失败的处理

    开始通过配置系统自带的mail 发送邮件 在其中一台服务器怎么都不行 /etc/mail.rc配置: set from="邮箱名" set smtp="smtp.163. ...

随机推荐

  1. Ansible--inventory

    简介 Inventory 是 Ansible 管理主机信息的配置文件,相当于系统 HOSTS 文件的功能,默认存放在 /etc/ansible/hosts.为方便批量管理主机,便捷使用其中的主机分组, ...

  2. Django中使用bookstarp框架(4)

    Django中使用bookstarp框架(4) 注意:要使用bookstarp框架前,要先有css的基础 因为主要是研究后台的使用方法,就引入前端的框架,简化html上的耗时(主要是不想把时间浪费在前 ...

  3. 一文学redis操作(记录向)

    相关内容: 虽然有参考文档,而且记忆太多也是耗脑,但学习的时候还是想要有个系统划分开知识点的文档,即使不要求去细致记忆,但划分开知识块后脑子里的印象才会更清晰,所以就有了这个博文. 主要是将各种命令进 ...

  4. Android清单文件合并的那些事

    APK文件只能包含一个AndroidManifest.xml文件,但Android Studio项目可以包含多个文件(通过buildSrc.导入的库引入).因此,在构建应用时,Gradle构建会将所有 ...

  5. Django电商项目---完成注册页面和用户登录day1

    完成基本的创建项目.用户注册.登录.注销功能 创建Django项目,创建df_user的App 创建静态文件夹static(跟manage.py保持在同一级别下) 复制静态文件(css + image ...

  6. Dos命令讲解

    目录 一.什么是DOS 二.启动DOS的多种方法 三.DOS的内部命令与外部命令 四.系统环境变量讲解 增加Path环境变量路径 常见的系统环境变量 五.常用的运行命令 六.DOS使用技巧 设置CMD ...

  7. c#中//注释和///注释的区别

    c#中//注释和///注释的区别 ///会被编译,//不会所以使用///会减慢编译的速度(但不会影响执行速度)///会在其它的人调用你的代码时提供智能感知 也是一种注释,但是这种注释主要有两种作用:1 ...

  8. February 7th, 2018 Week 6th Wednesday

    We are all resigned to death: it is life we aren't resigned to. 我们可以屈从于死神,但我们却不能让生活任意摆布. Of all the ...

  9. IntelliJ IDEA 2017 激活

    http://idea.lanyus.com/ 直接获取注册码 或者复制,在license server中添加: http://intellij.mandroid.cn/ http://idea.im ...

  10. Mybatis&orcale update语句中接收参数为对象

    Mybatis的 mapper.xml 中 update 语句使用 if 标签判断对像属性是否为空值. UserDTO是传过来参数的类型,userDTO是在mapperDao接口中给更新方法的参数起的 ...