如何通过SSH隧道连接远程数据库_本地端口转发与phpMyAdmin

根本原因是远程MySQL未开启远程访问或SSH隧道绑定地址错误;需确保MySQL监听127.0.0.1、SSH显式绑定127.0.0.1、phpMyAdmin配置host为'127.0.0.1'且port匹配隧道端口,并确认隧道进程存活。ssh -L 本地端口转发连不上远程 MySQL 怎么办根本原因通常是远程数据库没开远程访问,或者 ssh 隧道的绑定地址不对。mysql 默认只监听 127.0.0.1:3306,而 ssh -l 默认把本地端口绑在 localhost 上------这本身没问题,但如果你用 127.0.0.1 连 phpmyadmin 却失败,大概率是 phpmyadmin 的配置或浏览器同源策略在作祟。实操建议:确认远程 MySQL 允许本地回环连接:登录服务器后执行 mysql -h 127.0.0.1 -u root -p,能进就说明服务本身 OKSSH 命令必须显式指定绑定地址为 127.0.0.1(不是默认的 localhost),避免某些系统里 localhost 走 socket 而非 TCP:ssh -L 127.0.0.1:3307:127.0.0.1:3306 user@remote-server别用 0.0.0.0:3307 绑定,除非你真需要局域网其他机器连------这会暴露隧道端口,且 phpMyAdmin 可能因 host 头不匹配拒绝连接检查远程服务器防火墙是否放行了 MySQL 端口(仅限本地流量):sudo ufw status 或 sudo iptables -L -n | grep 3306,重点看 INPUT 链里有没有 127.0.0.1 相关规则phpMyAdmin 报错 #2002 Cannot log in to the MySQL server这个错误几乎全是连接参数和隧道状态不匹配导致的,不是 phpMyAdmin 本身坏了。它看到的是"连不到 localhost:3306",但你其实想让它走 localhost:3307。实操建议:改 config.inc.php 里的 cfg\['Servers'\]\[i]['host'] 必须设成 '127.0.0.1'(不能是 'localhost'),同时 cfg\['Servers'\]\[i]['port'] 设为 '3307'如果 phpMyAdmin 和 MySQL 在同一台机器跑(比如本地 Docker),host 写 '127.0.0.1' 是唯一稳妥选择;'localhost' 在 PHP 里可能触发 Unix socket,绕过你的 SSH 隧道确认隧道进程还在:执行 ps aux | grep ssh,看到那条 -L 命令才说明隧道活着;断开后 phpMyAdmin 不会自动重连,得手动刷新页面甚至重启服务浏览器开发者工具 Network 标签页里看 phpMyAdmin 登录请求发到了哪个地址------如果还是 :3306,说明配置根本没生效为什么用 ssh -L 而不是直接开放 MySQL 的 3306 端口因为直接暴露 MySQL 端口等于把数据库钥匙挂在公网门口。哪怕加了密码、限制 IP,MySQL 协议本身不加密,抓包就能看到明文账号密码;而且只要一个弱口令或未修复漏洞,整库就凉。立即学习"PHP免费学习笔记(深入)"; 通义听悟 阿里云通义听悟是聚焦音视频内容的工作学习AI助手,依托大模型,帮助用户记录、整理和分析音视频内容,体验用大模型做音视频笔记、整理会议记录。

相关推荐
脉动数据行情5 分钟前
Python 实现融通金行情数据对接(实时推送 + K 线 + 产品列表)
开发语言·python
wltx168821 分钟前
谷歌SEO如何做插床优化?
大数据·人工智能·python
2301_7815714231 分钟前
JavaScript中Object-getOwnPropertySymbols获取方法
jvm·数据库·python
倒霉熊dd1 小时前
Python学习(第一部分 语法与数据结构/核心基础)
大数据·python·学习·pip
jump_jump1 小时前
Drizzle 凭什么贴着 Go 跑——从设计哲学到热路径源码
数据库·性能优化·orm
jay神1 小时前
基于SpringBoot的宠物生命周期信息管理系统
java·数据库·spring boot·后端·web开发·宠物·管理系统
仅此,1 小时前
deep agent整合 DeepSeek 记录
python·langchain·agent·deep agent sdk
苍煜1 小时前
生产环境 JVM 参数实战计算指南
jvm
秋92 小时前
MySQL 8.0.46 与 MySQL 9.7.0在sql语句方面的区别并举例说明
数据库·sql·mysql
一只数据集2 小时前
NVIDIA Nemotron AIQ Agentic Safety Dataset:面向企业级智能体系统的安全与防护评估数据集全面解析
网络·数据库·安全