我尝试过使用,mysql-workbench
但它太混乱了,所以我决定改用emma
。我正尝试通过 SSH 连接到我的 MySQL DB,但当我尝试建立新连接时,我没有看到该选项。有什么建议吗?谢谢!
(我确实尝试进行了一些研究,但没有找到有用的结果)
答案1
您可以使用以下命令手动创建 SSH 隧道:
ssh -L 33060:localhost:3306 user@remotehost
当此 ssh 会话打开时,到端口 33060 的连接将被转发到远程服务器上的(标准 mysql 服务器)端口 3306。
然后任何 mysql 客户端都可以连接到在“remotehost”上运行的 mysql 服务器,例如:
mysql -P 33060 -h 127.0.0.1 -u mysqluser -p
我以前曾使用这种方法将 emma 连接到另一台机器上私下运行(外部无法访问)的 mysql 服务器。不幸的是,使用这种方法,您必须手动建立隧道,然后 emma 的存储服务器连接才能正常工作。
答案2
创建到远程 mysql 数据库的 ssh 隧道的更可靠方法是使用 gstm,Gnome SSH 隧道管理器...
sudo apt-get install gstm
然后运行 GUI 应用程序,为你的连接创建一个名为的配置,使用主持人设置为目标主机并港口设置为 22(可能)作为 ssh 端口。勾选自动启动如果您希望此隧道在启动时自动启动。然后添加端口重定向,类型当地的,港口33060,主持人与目的地相同,前往港口3306.
需要注意的一点是,在客户端、php 配置等中,您可能希望使用127.0.0.1:33060
而不是localhost:3306
因为原因。(与插座有关)。