无法从远程计算机上的 mysql 工作台连接到 phpmyadmin 或数据库

Posted

技术标签:

【中文标题】无法从远程计算机上的 mysql 工作台连接到 phpmyadmin 或数据库【英文标题】:Unable to connect to phpmyadmin or to database from mysql workbench on remote computer 【发布时间】:2016-02-19 02:27:54 【问题描述】:

我环顾四周,发现了很多关于如何让它工作的文章,但我尝试过的都没有成功。

我在本地网络上有一个 Windows 8(64 位)虚拟机,我正在尝试连接到它以编辑数据库。通过 Microsoft 远程桌面,我可以毫无问题地连接到 phpmyadmin,但无法通过运行 MRD 的计算机上的浏览器连接到它。我尝试添加第二个用户,并将 root 和辅助用户的主机列设置为 %。我还为 root 创建了密码。

我在 Wamp 的 Alias 文件夹中的 .conf 文件中尝试了很多不同的 Allow/Deny 指令。我看到的例子有点不同,因为他们只是显示指令,而我在 confs 中有这个:

  <IfDefine APACHE24>
    Require local
  </IfDefine>
  <IfDefine !APACHE24>
    Order Allow,Deny
    Allow from all
    </IfDefine>

我的头撞墙已经好几个星期了。虽然我可以通过远程桌面访问数据库,但我不是 VM 的唯一用户,如果我可以通过我的计算机访问它会更高效,如果我可以使用 Workbench 会更好。

忘了提一下:虽然我自己需要上述内容,但它也需要可供网络的任何用户使用,即使是通过 ***。

【问题讨论】:

wampserver 启动了吗? - 愚蠢的问题,只是检查! 是的。启动并重新启动了几次。 @Eric...你有远程授予对mysql db的访问权限吗? 【参考方案1】:

您可以使用 SSH 隧道将 localhost:13306 转发到 remote:3306

ssh -L13306:dbhost:3306 user@remotehost

这将侦听本地主机上的端口13306,通过ssh 隧道将连接转发到remotehost,然后将它们转发到dbhost 端口3306。 如果该数据库在远程机器上运行,请使用localhost 代替dbhost,从远程机器上可以看到,它只是127.0.0.1

ssh -L13306:localhost:3306

如果您使用的是 Windows,则可以使用 Putty 设置 SSH 隧道。

登录后,您可以通过连接到计算机上的localhost:13306 来连接到远程数据库。

【讨论】:

【参考方案2】:

经过一番绝望的挖掘,我终于找到了问题所在。我能够将 phpmyadmin 的 config.php 中的一些设置从 localhost 更改为 Web 服务器 URL。我以前做过一次,所以不知道为什么它第一次不起作用。可能是我没有将数据库中的主机更改为 %。

【讨论】:

以上是关于无法从远程计算机上的 mysql 工作台连接到 phpmyadmin 或数据库的主要内容,如果未能解决你的问题,请参考以下文章

计算机无法连接到远程计算机上的另一个控制台会话,您正在运行一个控制台会话,怎么办?

Visual Studio 2012 无法连接到远程计算机上的 BizTalk 适配器服务

无法从 Mac lion 连接到远程 mysql

无法远程连接到 SQL Server 实例

无法从 Windows 和 Linux (CentOS7) 连接到我的远程 MySQL 服务器

远程桌面是什么 Windows电脑用什么远程桌面工具