服务器使用宝塔面板,本地用Navicat Mysql远程连接数据库失败

今天白天的同事在做维护网站工作时,为方便查看数据库数据,于是在本地借助Navicat Mysql数据库管理工具远程连接服务器数据库。但在连接过程中一直报错,虽说最终解决连接失败的问题,但期间却绕了很多弯路。为了避免大家走同样的弯路,本文白天就来给大家讲讲具体是怎么解决的。

服务器使用宝塔面板,本地用Navicat Mysql远程连接数据库失败

首先先介绍下该网站的服务器:腾讯云服务器,CentOS 7.6.1810(Py2.7.5)系统,使用宝塔面板Linux版本。

Navicat Mysql使用的是常规连接方式——直接输入服务器IP地址、数据库端口(3306)、数据库用户名、密码等。

在连接之前,白天特意检查了:

  • 服务器的安全组规则,已确认3306端口入站规则中已有3306端口;
  • 打开MySql的配置文件my.cnf(路径:/etc/my.cnf)确认服务器默认的数据库端口是3306;
    服务器使用宝塔面板,本地用Navicat Mysql远程连接数据库失败

到这,按道理来说应该已经可以正常连接了,可是依然连接不上。

服务器使用宝塔面板,本地用Navicat Mysql远程连接数据库失败

万般无奈,白天在网上也找了很多相关文章来确定问题,虽说依然没有解决,但也有所收获。

要说服务器是刚买的没问题、数据库用户名及密码没问题、Navicat Mysql是刚从官网下载的肯定也没问题,那么问题很有可能就出在宝塔面板的某一些地方没有配置好,于是白天就在宝塔后台找原因,果然找到了问题所在。

原来宝塔面板为了安全,并不是服务器安全组策略放行了端口就可以了,还需要做以下两步操作:

  1. 在服务器的防火墙配置中需要自行设置放行端口。路径: 宝塔面板后台安全 选项内输入需要放行的端口并确认放行才行。如下图所示:
    服务器使用宝塔面板,本地用Navicat Mysql远程连接数据库失败
  2. 数据库权限改为所有人。路径: 宝塔面板后台数据库 在对应需要本地远程连接的数据库权限改为“所有人”。如下图所示:
    服务器使用宝塔面板,本地用Navicat Mysql远程连接数据库失败

放行之后,再使用Navicat Mysql连接网站数据库果然就顺利打开了。

服务器使用宝塔面板,本地用Navicat Mysql远程连接数据库失败

总结一下,使用宝塔面板搭建的网站要想本地使用Navicat Mysql远程连接服务器数据库,那么需满足三个条件:

  1. 服务器安全组规则添加数据库端口3306;
  2. 网站数据库访问权限改为所有人(路径:宝塔面板 → 数据库 → 设置想要访问的数据库权限);
  3. 宝塔面板后台系统安全放行3306端口(路径:宝塔面板 → 系统安全 → 放行3306端口)。

到此,总算解决了本地连接服务器数据库失败的问题,如果大家也遇到这样的问题,希望本文能为大家带来帮助。

文章最后一次修改于

© 版权声明
THE END
喜欢就支持一下吧
赞赏