【问题标题】:Local connect to phpMyAdmin本地连接到 phpMyAdmin
【发布时间】:2015-05-09 06:48:18
【问题描述】:

我在本地设置了 phpMyAdmin。我无法将它连接到我的远程服务器。我使用 1&1 托管,我找到了一个关于做我想做的事的教程,除了我只能使用 SFTP 连接并且教程使用 SSH 的事实。我以为这些是一样的。

http://franklinstrube.com/blog/remote-mysql-administration-for-1and1/

本教程告诉我需要安装 socat 并进行 SSH 隧道,但它不接受本教程中的任何命令,因为我只能使用 SFTP。

这是 phpMyAdmin 的本地主机配置

$cfg['Servers'][$i]['host']          = '';
$cfg['Servers'][$i]['port']          = '';
$cfg['Servers'][$i]['socket']        = '';
$cfg['Servers'][$i]['connect_type']  = 'tcp';
$cfg['Servers'][$i]['extension']     = 'mysql';
$cfg['Servers'][$i]['compress']      = FALSE;
$cfg['Servers'][$i]['auth_type']     = 'config';
$cfg['Servers'][$i]['user']          = 'username';
$cfg['Servers'][$i]['password']      = 'password';

我目前的问题是教程中他们使用 SSH 和我只能使用 SFTP 之间的区别。我该如何克服这个问题?

【问题讨论】:

    标签: php mysql ssh phpmyadmin


    【解决方案1】:

    我该如何克服这个问题?

    简单地说,通过在您的 1&1 托管网页上安装 phpMyAdmin(并妥善保护它,因为它是面向公众的!)而不是在本地计算机上运行 phpMyAdmin。您将使用主机 1&1 告诉您在其文档或设置中使用的任何内容来访问 MySQL;它可能是“localhost”,也可能是其他内部数据库服务器名称。

    下面是更深层次的解释: SFTP 和 SSH 是相似且相关但不同的协议。它们的异同在这里并不重要,但 SSH 旨在为用户提供命令 shell,而 SFTP 旨在提供文件级功能;主要是文件传输。

    有两种方法可以使用 phpMyAdmin 连接到您的 MySQL 服务器;通过在同一台服务器上运行它(通过套接字或本地主机网络连接连接)或从其他服务器连接。 MySQL 权限可以根据主机分配,因此拥有从 localhost 连接的权限与一些随机的外部网络连接是不一样的。

    大多数主机阻止外部 MySQL 连接;这是提供安全性的好方法,因为随机攻击者甚至无法连接到他们的 MySQL 服务器,但它使管理对您来说不太方便。如果您有 SSH 访问权限,您可以通过隧道建立连接,并且由于隧道的原因,您似乎来自网络内部。由于您没有 SSH 访问权限,并且由于 SFTP 不提供该级别的功能,因此您只能在 1&1 的网站上安装 phpMyAdmin 并远程访问网页,而不是访问 MySQL 守护程序本身。实际上,这对你来说可能比隧道连接 MySQL 更快,但是你会想要保护你的安装(我建议至少使用一个非标准的目录名并确保你有一个强密码;你也可以希望使用验证码,这是最近 phpMyAdmin 版本的一个选项)。

    【讨论】:

      猜你喜欢
      • 2013-01-15
      • 2015-11-08
      • 2016-10-10
      • 1970-01-01
      • 1970-01-01
      • 2020-02-18
      • 1970-01-01
      • 2014-09-28
      • 2019-03-11
      相关资源
      最近更新 更多