如何用dw连接远程MySQL服务器?,远程数据库连接失败怎么办?

连接远程服务器MySQL数据库,核心是解决网络可达性、账号授权和客户端工具三个环节,用DataGrip配合SSH隧道是最稳的一条路。 全程不用反复改服务器防火墙,也不用把3306端口暴露到公网,很多生产环境就是这样连的。

DataGrip连接远程服务器mysql的完整流程

先别急着打开DataGrip,我见过不少人在这一步翻车,是因为连前的信息没凑齐,你至少需要准备三样东西:服务器的公网IP、服务器的SSH登录账号和密码、MySQL里的业务账号和密码,如果你是用密钥登录服务器,那把私钥文件也找出来。

DataGrip: 通过SSH远程访问服务器上的MySQL数据库经验分享
加载中
DataGrip: 通过SSH远程访问服务器上的MySQL数据库经验分享
-
-阿彦翘尾狐-
3195--
原视频地址

连接前需要准备的三类信息

  • 服务器侧信息:公网IP、SSH端口,默认是22,如果你改过,记下实际端口。
  • MySQL侧信息:数据库用户名、密码、要连接的库名(可以留空,连上后再选)。
  • 网络侧信息:确认你的本机是否能访问服务器,如果服务器在国内云厂商,一般需要安全组放行22端口;如果源IP固定,直接加白名单。

这些信息准备好了,后面的操作基本就是填空。

在DataGrip中新建数据源的具体操作

打开DataGrip,右侧边栏找到Database工具窗口,点左上角的加号,选择Data Source,再选MySQL,这一步会打开一个连接配置面板,分成General和SSH/SSL两个主要区域。

General区域里这样填:

  • Host:填0.0.1,原因后面说。
  • Port:填3306,保持默认。
  • User:填你的MySQL账号,比如root或app_user。
  • Password:填对应的密码。
  • Database:可以暂时留空,测试连接成功后再选具体库。

重点在SSH/SSL选项卡,勾选Use SSH tunnel,然后填入服务器的公网IP、SSH端口(默认22)、服务器登录用户名和密码,如果你的服务器只允许密钥登录,把认证方式切到Key pair,选好私钥文件。

填完之后点Test Connection,如果提示需要下载驱动,点Download等它装完,等待几秒后,DataGrip会显示连接成功,这里有个细节:Host填127.0.0.1是因为SSH隧道已经把你本地的请求转发到了服务器内网,MySQL看到的连接来源是服务器本机,所以IP填本地回环地址反而更稳。

测试连接时常见的驱动问题

测试连接报错Public Key Retrieval is not allowed时,不用慌,这是在MySQL 8的caching_sha2_password认证插件下出现的典型问题,解决办法是在连接URL末尾加上allowPublicKeyRetrieval=true,或者把驱动版本升级到较新版本,行业共识认为,这是DataGrip连接MySQL 8时遇到最多的一个坑。

mysql远程连接不上的常见原因与排查

如果你按上面的流程走完,还是提示连不上,那问题基本就落在网络、授权、MySQL配置这三层里,这里把每一层的排查路径拆开讲。

网络层:端口不通还是IP不通

先确认最基本的网络可达性,在你本机打开终端,执行:

ping 服务器公网IP

能ping通说明网络链路正常,ping不通就要看服务器安全组或防火墙是否放行了ICMP,接下来测端口:

telnet 服务器公网IP 3306

如果返回Connection refused,说明MySQL端口没对外开放;如果卡住不动,可能是防火墙丢包,但需要注意,多数云厂商的安全组默认不会放行3306端口,直连测不通,不代表SSH隧道连不上。

MySQL用户授权:Host字段的坑

这是数据库连接工具使用中最容易忽视的一点,MySQL的用户表里,用户是用户名+Host组合识别的,你本地连接时用的账号,Host可能是localhost,但远程连接时MySQL会按或具体IP去匹配。

登录服务器,执行MySQL命令:

SELECT user, host FROM mysql.user;

如果看到业务账号的Host是localhost,那远程连接一定会报1130 Host is not allowed to connect,解决办法是在服务器上执行授权语句:

CREATE USER 'app_user'@'%' IDENTIFIED BY '你的密码';
GRANT ALL PRIVILEGES ON 你的库名. TO 'app_user'@'%';
FLUSH PRIVILEGES;

MySQL 8里GRANT不能再顺带创建用户,所以CREATE USER和GRANT要分开写,这一步做完,mysql远程连接不上的情况会少一大半。

配置文件:bind-address和skip-networking

MySQL默认配置文件里,bind-address如果被写成0.0.1,它只会监听本机连接,远程访问自然被挡在门外,在服务器上执行:

grep -r "bind-address" /etc/my.cnf /etc/mysql/

如果结果里有0.0.1,改成0.0.0,然后重启MySQL服务,另一处是skip-networking这个参数,一旦开启,MySQL直接不走TCP/IP协议,只允许本地socket连接,把它注释掉再重启。

认证插件不匹配

MySQL 8默认用caching_sha2_password,旧版本客户端或驱动可能不认识,如果你用老版本的mysql命令行客户端,连接时会报Authentication plugin 'caching_sha2_password' cannot be loaded,要么升级驱动,要么把账号认证改回mysql_native_password:

ALTER USER 'app_user'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';

数据库连接工具选型:DataGrip、Navicat还是命令行

聊到这儿,不少朋友会纠结到底用哪个工具,我直接说结论:长期开发选DataGrip,日常运维选命令行,Windows下习惯图形界面选Navicat。

对比维度 DataGrip Navicat mysql命令行
跨平台 Win/macOS/Linux Win/macOS 全平台
代码提示 强,支持多语言 一般 无
SSH隧道 内置,配置简单 内置 需额外用ssh命令
免费程度 社区版可用 付费 开源免费
适合场景 开发调试、写复杂SQL 快速查看数据 服务器上排障

你问navicat连接远程mysql会不会更简单?配置逻辑完全一样,只是入口位置不同,Navicat的SSH隧道配置在连接的“SSH”选项卡里,填的内容和DataGrip几乎一致,选哪个看你的桌面环境偏好,不影响连接原理。

连接远程mysql数据库的高频问题排查

如果在服务器上一时半会儿找不到原因,也可以先用命令行验证一遍,在服务器本机执行:

mysql -u 用户名 -p -h 127.0.0.1

能连上说明MySQL服务正常,问题出在远程访问链路,连不上就直接看MySQL日志,一般在/var/log/mysql/error.log。

你还需要检查一下本机到服务器的SSH连接是否正常,SSH隧道连不上,DataGrip会一直卡在等待状态,可以先在本机单独执行:

ssh 用户名@服务器IP

确认能登进去,再回DataGrip里重试,很多情况下,mysql远程连接不上不是MySQL的问题,而是SSH账号密码错了。

DataGrip连接远程服务器mysql时常见问题

问:DataGrip连接远程服务器mysql时提示Public Key Retrieval is not allowed,怎么处理?

答:在DataGrip的连接URL末尾加上allowPublicKeyRetrieval=true,或者把JDBC驱动更新到8.0.13以上版本,根本原因是MySQL 8的默认认证插件需要先通过公钥交换获取加密密钥,客户端默认不允许这个行为。

问:mysql远程连接不上,改了bind-address还是无效,为什么?

答:先确认skip-networking没被打开,再检查云安全组是否放行了3306端口,如果用的是CentOS,还要看SELinux状态,执行getenforce,如果返回Enforcing,需要放行MySQL的3306端口,或者临时关闭SELinux测试,还有一种情况是服务器上装了多个MySQL实例,你改的配置文件不是实际运行的那个,用ps aux | grep mysqld确认进程对应的配置文件路径。

问:用Navicat还是DataGrip连接远程mysql更稳?

答:连接稳定性取决于网络环境和服务器配置,和客户端工具关系不大,DataGrip的查询控制台对复杂SQL支持更好,Navicat在表格编辑和数据导出上更直观,如果你在Windows桌面环境且更看重界面简洁,Navicat上手更快;如果长期写SQL和调试,DataGrip的代码提示更友好。

最终一句话收束:连接远程服务器MySQL数据库,优先走SSH隧道,配好MySQL用户授权,问题多半出在Host字段和防火墙规则上。 按这个顺序排查,一次通过的概率很高。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/789031.html

赞 (0)
上一篇 2026年11月8日 15:29
下一篇 2026年11月8日 15:30

相关推荐

  • Win7找不到DNS服务器怎么办,DNS未响应怎么解决?

    遇到“Windows 7找不到服务器DNS”提示,核心解决办法是:先检查路由器是否断网,再用命令提示符刷新DNS缓存并临时指定公共DNS地址(如阿里DNS或114DNS),多数情况下5分钟内就能恢复上网,为什么Win7会突然提示找不到服务器DNS这个报错几乎都出现在本机DNS解析链路受阻的时候,Windows……

    2026年10月19日
    400
  • 如何在ASPX中实现网页打印 | 网页打印热门方法

    在ASP.NET Web Forms (ASPX) 应用中实现网页打印功能,核心在于理解不同打印需求场景(直接打印当前页面、打印特定区域、生成格式化的PDF再打印)并选用最合适的技术方案,最常用且推荐的核心方案是结合CSS打印样式表 (@media print) 与 JavaScript window.prin……

    2026年2月8日
    14130
  • k3中层服务器不可用该怎么解决,是什么原因

    当K3中层服务器不可用时,应立即执行网络连通性测试并检查服务进程,多数情况下可通过重启服务或回滚近期配置恢复,k3中层服务器不可用怎么办?先做快速诊断遇到k3中层服务器突然无法访问,第一反应不是重启,而是按顺序排查三个层面,操作前先记录下当前现象,比如管理页面报错还是API调用超时,这能帮你缩小范围,测试网络连……

    2026年8月11日
    1000
  • Offshore-ServersVPS测评,14美元/月,无视DMCA实测表现,海外免备案VPS哪家好,便宜稳定海外服务器推荐

    14美元/月无视DMCA的海外VPS在2026年仍具极高性价比,实测显示其在抗投诉与基础性能上表现均衡,适合对内容合规性有特定需求的中小站长及开发者,但需接受其网络延迟略高于国内直连的客观事实,产品核心参数与价格竞争力分析在2026年的海外服务器市场中,14美元/月是一个极具杀伤力的价格锚点,该方案通常由位于冰……

    2026年5月14日
    4700
  • 家用电脑用服务器CPU到底怎么样,值得装吗?

    家用电脑用服务器CPU不是不行,关键看用途:主力游戏机不建议,NAS、虚拟机、渲染、多开等场景可以考虑二手服务器平台,但要把主板、内存、功耗、噪音和电费算进总成本,家用电脑用服务器CPU怎么样?先看用途再谈性价比很多人第一次看到二手Xeon或EPYC的价格,会觉得“这核心数也太香了”,十几核、几十核,价格却和主……

    2026年9月26日
    200
  • 如何更新游标循环的数据库?数据库游标循环更新方法

    更新游标循环的数据库时,核心在于避免逐行处理的性能陷阱,应优先采用集合操作(Set-based Operations)替代游标,若必须使用游标,则需通过批量提交和索引优化来降低资源消耗,在数据库开发的日常场景中,我们常遇到需要逐行处理复杂逻辑的需求,许多初级开发者会本能地选择游标(Cursor),认为这样逻辑清……

    程序编程 2026年5月27日
    4800
  • 泰拉瑞亚云服务器如何开mod,泰拉瑞亚mod怎么安装?

    泰拉瑞亚云服务器开mod的核心路径是:租一台Windows云服务器,安装与客户端同版本的tModLoader,把mod放入Mods目录并启用,在安全组和系统防火墙放行7777端口,队友用公网IP直连即可, 下面按实际开服顺序拆解,重点解决版本、端口和mod同步这三个最容易卡住的地方,泰拉瑞亚云服务器开mod教程……

    程序编程 2026年10月30日
    1000
  • 中兴r5300g4服务器装系统怎么这么难

    如果你正被“中兴r5300g4服务器装系统怎么这么难”这个问题卡到怀疑人生,答案其实很简单:它难的不是系统本身,而是那块带特殊口令的RAID卡和一套不太友好的配置流程,绕开这两个坑,半小时就能装完,先把R5300G4的“脾气”摸清楚不少同行第一次接触中兴R5300G4,都是在机房拆开包装的那一刻,机箱做工扎实……

    2026年8月20日
    600
  • 戴尔r540服务器怎么重装系统,有哪些操作步骤。

    戴尔R540服务器重装系统,核心结论是:通过iDRAC挂载镜像或U盘引导,配合Lifecycle Controller进行RAID配置和驱动加载,约30到60分钟可完成,很多维护服务器的朋友第一次接触R540,面对的不是普通的台式机,而是一台带独立RAID卡、iDRAC管理口和生命周期控制器的企业级设备,重装系……

    程序编程 2026年10月23日
    300
  • AI智能办公是干什么的,AI智能办公有什么功能?

    AI智能办公的核心本质在于利用人工智能技术深度重塑工作流程,将员工从重复性、低价值的劳动中解放出来,转向更具创造性和战略性的任务,它不仅是一套软件工具的组合,更是一种能够自主学习、预测需求并辅助决策的数字化生产力体系,通过自然语言处理、机器学习和知识图谱等技术,AI智能办公实现了对文档、数据、沟通和流程的全面智……

    2026年2月27日
    14600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注