在node-mysql中使用SSH隧道连接到MySQL

Nyx*_*nyx 5 javascript mysql node.js npm

使用node-mysqlnpm包时,是否可以使用SSH密钥而不是密码连接到MySQL服务器?

Ste*_* Lu 6

我今天有这个确切的系统工作,它应该花了10分钟,但我浪费了5个小时我写的一个愚蠢的错误(这是我在5分钟内努力做到这一点的直接结果).

您可以完全独立地执行SSH隧道组件,然后使用通过SSH隧道传输的TCP将node-mysql(或任何其他sql客户端...)指向您的数据库.

只需像这样设置SSH隧道

ssh -N -p 22 sqluser@remoteserverrunningmysql.your.net -L 33306:localhost:3306
Run Code Online (Sandbox Code Playgroud)

将其留在后台(有关详细信息,请参阅此类文章).

然后将任何MySQL客户端发送到localhost上的端口33306.它实际上将连接,就像您在远程服务器上并使用端口3306一样.