gpt4 book ai didi

php - 是否可以保持 MYSQL session 打开?

转载 作者:行者123 更新时间:2023-11-29 14:06:09 25 4
gpt4 key购买 nike

是否可以在 PHP 程序迭代之间保持 SQL 连接/ session “打开”,这样程序就不必不断重新登录?

我编写了一个 PHP 程序,它不断地(合法地/尊重地)在网络上轮询统计天气数据,然后将其转储到本地 MYSQL 数据库中进行分析。我不想通过本地数据库浏览器查看数据,而是希望将其作为由外部网络主机托管的在线网页提供。

不确定解决这个问题的最佳方法,我将本地 MYSQL 数据库导出到我的网络主机的服务器上,因为 PHP 程序需要不断循环(并且比默认运行时间更长,HTML 也会不断刷新)它的页面),如果我将“引擎”保留在我的本地计算机上,我可以让页面在浏览器中不断循环,然后让它连接到我的网络服务器上的数据库并将数据转储到那里,那将是最好的。

它工作了几个小时。但随后,正如我担心的那样,我失去了对 cPanel 登录/主机的访问权限。我通过自己的测试确认我的IP已被封锁(托管公司目前已关闭),毫无疑问是由于PHP程序每10分钟重新连接一次在线SQL数据库。我不认为这种行为和连接之间的时间足以保证 IP 黑名单,但可惜的是,事实确实如此。

现在,除了可以将我的 IP 列入托管公司白名单之外,是否有办法保持 MYSQL session /连接处于事件状态,以便程序不必在迭代之间重新登录?

我想这只有在我可以让 PHP 程序无限期地运行时才有可能,也许是在手动调整最大运行时间限制之后(我不知道是否还会有其他外部限制,也许是浏览器限制) 。我不确定这是否可行,或者是否有效。

是否有某种类型的低级系统范围“cookie”用于 MYSQL 连接?随着 PHP 程序完成并关闭(然后等待 HTML 刷新页面),我想不必再次重新登录的唯一方法是使用某种类型的 cookie 或 IP 地址访问(这需要服务器端功能/实现)。

我承认我的方法可能不是实现这一目标的最有效的方法。因此,我也愿意接受替代方法和建议,以实现相同的最终结果 - 转储到数据库的持续网络抓取循环,然后将数据库不断转储到网页。

(我正在寻找一种方法来完成此任务,而不是向我的网络主机请求 IP 白名单,或者仅仅确定其防火墙的访问禁止率。如果确实没有可行或更好的方法,我会执行其中任何一个。)

最佳答案

也许您可以尝试持久数据库连接。

此链接解释了有关持久连接的信息:http://in2.php.net/manual/en/function.mysql-pconnect.php

关于php - 是否可以保持 MYSQL session 打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14312854/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com