0

到目前为止没有人回答我的问题,所以我被困在这里......

基本上我制作了一个程序(它连接到我的PostgreSQL数据库),根据用户输入,它将更改数据库中的表内容。这是一种注册/登录系统。(如果您想查看脚本,请单击此处) 。当我在我的电脑(Windows 10 x64)上运行它时,它就像一个魅力。但是当我的一个朋友(Windows 10 x64)尝试运行它(在不同的网络上)时,它给了他这个错误:

Could not connect to server: Connection refused

Is the server running on host “192.168.1.113” and accepting TCP/IP connections on port 5432?

(如果它可以帮助你,我也尝试了 MySQL,但我得到了相同的结果......我的朋友无法访问我的数据库!)

所以,我问自己“是否有可能允许其他设备从其他网络访问我的数据库?如果是,我该怎么做?”

4

2 回答 2

2

192.168.*.* 用于本地网络地址。您不会期望它可以从另一个网络访问。你必须弄清楚你的真实地址是什么。例如,通过转到https://whatismyipaddress.com/或只是谷歌搜索“我的 IP 地址是什么”。

然后您会遇到地址更改频率(取决于您的 ISP)以及如何通过您的家庭路由器获得连接的问题,这可能会阻止它,或者至少不会将其路由到您的数据库服务器,无需特殊配置做端口转发。这是一项基本的网络任务,目前并不特定于 PostgreSQL。

您的 ISP 也可能会阻止连接,因为您的标准家庭 ISP 计划中的托管服务器可能违反服务条款。尽管由于高使用率或滥用投诉而导致流量从未引起他们的注意,但他们中的大多数人都允许这样做。

于 2020-06-28T20:55:50.043 回答
-2

我建议不要这样做,我们使用数据库来存储元数据、基于文本的数据、您需要对其运行查询的数据,用于存储图像,像 instagram、pinterest 这样的服务所做的——它们是否将图像存储在像 s3 这样便宜的服务上, [因为数据库非常昂贵]。加上每秒生成的图像数量,如果您收到的流量将是天文数字。

他们所做的是将图像存储在 s3 上——它就像您的硬盘,但托管在互联网上,然后将路径存储在数据库中,当有人要求该图像时,我们从 s3 提供它。

于 2020-06-28T20:43:39.673 回答