mysql– 将Django连接到代理服务器后面的数据库

mysql– 将Django连接到代理服务器后面的数据库,第1张

概述我想将Django连接到我的生产MySQL数据库(只读),以便我可以使用它来使用真实数据测试分析应用程序.有没有办法指定django应该通过ssh代理连接到db,就像Sequel Pro允许你指定通过特定的SSH代理用用户名和密码连接一样?如果是这样,DATABASES条目会是什么样子?最佳答案只需使用SSH隧道.为了简化您的工作,您可以安装autossh,

我想将Django连接到我的生产MySQL数据库(只读),以便我可以使用它来使用真实数据测试分析应用程序.

有没有办法指定django应该通过ssh代理连接到db,就像Sequel Pro允许你指定通过特定的SSH代理用用户名和密码连接一样?

如果是这样,DATABASES条目会是什么样子?

最佳答案只需使用SSH隧道.为了简化您的工作,您可以安装autossh,它会自动检查ssh连接是否处于活动状态,并在其关闭时重新建立.

然后,您可以使用以下命令打开隧道:

autossh -f -N -L LocalPort:MysqLAddress:MysqLPort your_login@your_server

哪里:

> your_server – 您通过ssh连接的服务器
> your_login – 您在your_server上的登录信息
> LocalPort – 运行Django的机器上任何未使用的端口.该端口将用于隧道.
> MysqLAddress – MysqL服务器的地址,因为它可以从your_server访问(也就是说,如果MysqL在your_server上运行,它将是127.0.0.1)
> MysqLPort – MysqL正在侦听的端口

然后在Django设置中,将MysqL IP指定为127.0.0.1,将端口指定为上面设置的LocalPort.

一个例子:

autossh -f -N -L 10000:127.0.0.1:3306 a_user@192.168.1.3

运行此命令时,将在本地端口10000上侦听SSH隧道.因此,如果连接到localhost:10000,则您的连接将通过隧道传输到192.168.1.3服务器上的localhost:3306. 总结

以上是内存溢出为你收集整理的mysql – 将Django连接到代理服务器后面的数据库全部内容,希望文章能够帮你解决mysql – 将Django连接到代理服务器后面的数据库所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1168904.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存