我的电脑上有一个需要每天运行的 Python 脚本,因为我的主机提供商不支持我使用的 Python 模块。
python 脚本收集数据,然后将其在线提供给 mySql 数据库。我遇到的问题是,使用远程 mySql 时,我需要添加我的 IP 地址,以便在我的 IP 地址更改时允许远程访问。
有没有其他方法可以做到这一点,而不需要每隔一天手动更新我的 IP?
答案1
最好不要在网络上公开实际数据库。相反,将与数据库相关的代码拆分为第二个脚本,并为自己创建一个“数据上传 API”:
- 脚本 1 在本地机器上运行,收集数据并通过 HTTPS POST 上传。
- 脚本 2 作为服务器上的 Web 应用程序运行,接收 HTTPS POST 上传并将数据插入 SQL 数据库。
但如果您不想这样做,另一种选择可能是 SSH 隧道。使用该-L
选项查看您的服务器是否接受 SSH 连接,如果是,请使用它来隧道端口 3306(MySQL 端口)。
(根据模块注释,我假设服务器是网络托管系统的一部分,并且不向其用户提供完全的根权限,因此第三个选项 - 完整的 VPN - 可能无法实现。)