首页 > 解决方案 > 在家中为宠物项目托管数据库

问题描述

我正在做一个宠物项目,任何人都可能会或可能不会使用它,这取决于它的好坏。我目前在云提供商上运行 MySQL 实例,即使我几乎不使用该实例,甚至其中没有任何数据,我也开始意识到数据库并不便宜。我每月在 AWS 上花费大约 20 美元,几乎没有使用任何东西。我想看看我是否可以在家里运行一个 MySQL 服务器并使用静态 IP 完成我的工作,直到应用程序准备好迎接黄金时段。我确实需要一个静态 IP,因为我的应用程序托管在 Vercel 和 Heroku 之类的东西上,它们需要与数据库通信。另外,如果我只是在家里的一台运行 MySQL Server 的机器上打开 MySQL 端口,会有任何安全风险吗?

标签: mysqldatabasehosting

解决方案


我一直在我的家用机器上运行 MySQL。有几次,我在路由器/防火墙中打开了一个端口以提供外部访问。这很慢,但它确实有效。

如果你这样做,你会很聪明地使用一些随机选择的奇怪端口号而不是 3306。减慢网络爬虫和脚本小子的速度。

如果我是你,我会非常小心地在任何对公共网络开放的 MySQL 实例上存储机密或不可替代的数据。(“非常小心”=== 不要这样做。)您应该考虑在 MySQL 上创建特定于主机的帐户,例如,

CREATE USER 'herokuApp'@'192.0.2.123' IDENTIFIED BY 'REDACTED';

192.0.2.123Heroku dyno 的 IP 地址在哪里。为该用户提供必要的最低权限,以使事情正常运行并从您自己的环境或机器进行管理。

你知道,Heroku 的 postgreSQL 服务有一个免费层。也许这是一个好方法?

另一种可能的选择:在 AWS、DigitalOcean 或其他地方的每月 5 美元的 VM 上建立您自己的 MySQL 服务器。不是免费的,但更便宜。

并且,请阅读:Mysql 添加用户进行远程访问


推荐阅读