设为首页 加入收藏

TOP

Ubuntu安装宝塔面板之后无法访问云数据库及解决方法
2018-03-20 08:51:10 】 浏览:570
Tags:Ubuntu 安装 宝塔 面板 之后 无法 访问 数据库 解决 方法

问题 & 思路

Ubuntu 按照官网指示,安装宝塔面板之后,在运营商的安全组里, 导入了相关的出站入站规则(此处有坑,下文详述),然后发现无法连接外网的云 数据库。 前后排查了很多原因,发现服务器能访问自己的本地数据库,而云数据库也能通过 TCP/IP 能正常连接,但是服务器却连不上云数据库。 这说明,是 安装宝塔面板之后的服务器,与云数据库直接的连接通信出了问题 Created with Rapha?l 2.1.2 A服务器 A服务器 A本地Mysql A本地Mysql 甲 云数据库 甲 云数据库 TCP/IP 连接 localhost 端口3306 连接正常 socket 连接 连接正常 TCP/IP 连接 外网地址 端口 12345 连接超时

宝塔面板内的指示中,安装完之后会要求调整出站入站的端口。相关链接有一个默认的入站出站规则文件下载,下载后可导入安全组。

但是,该安全组的出站规则不是常见的全部放行,而是只放行以下端口;

规则协议 端口 目标 策略
TCP 21 0.0.0.0/0 允许
TCP 433 0.0.0.0/0 允许
TCP 5880 0.0.0.0/0 允许
TCP 80 0.0.0.0/0 允许

经过排查,发现原因在于服务器的安全组出站端口未开放,导致无法通过外网连接按照指定端口连接云数据库。

解决方法

因此,只需要在运营商的服务器安全组内增添一条如下的出站规则即可。

规则协议 端口 目标 策略
TCP 此处填云数据库的外网端口,例如12345 0.0.0.0/0 允许

或者修改安全组规则,使其默认全部出站端口都放开,再次尝试连接即可。

规则协议 端口 目标 策略
ALL `ALL 0.0.0.0/0 允许

附:如何解决无法连接数据库的问题 ?

连接数据库的本质,无非是 服务器程序 – 连接设置 – Mysql服务 三者的联通,因此出现无法访问数据库时,可以按以下思路去排查原因。

账号密码是否正确

服务器是否正常运行 ?

服务器运行是否正常(有足够内存和cpu执行数据库操作) 服务器是否ip可达(连接云数据库需要网络) web服务器配置是否正常 (Nginx Apache IIS)

Mysql服务是否正常运行?

检查Mysql是否启动 Mysql版本是否兼容 系统,是否兼容程序 系统防火墙是否拦截 系统启动项是否拦截 配置文件是否异常 连接方式是否已设置
Socket 连接
mysql.sock 文件是否异常 mysql配置是否已填写 .sock文件路径 web服务器是否已填写 .sock文件路径 数据库的程序代码,是否有要求一定要填写 .sock文件路径相关参数 TCP/IP连接
连接地址是否正确 web服务器是否是否正确配置 localhost 和 127.0.0.1

连接的端口是否畅通?

端口是多少,有没有修改过 端口是否已被占用 服务器安全组里,端口的出站入站规则是否正常

连接数据库的程序是否异常 ?

编程语言下连接数据库所需的拓展是否有安装 (比如php的pdo拓展) 连接使用的函数是否用法不当 程序与数据库服务是否不兼容
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Redis列表类型 下一篇linuxoracle数据库启动步骤

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目