如何在SQL中编辑大量的记录和图片


How to edit huge amount of records and pics in SQL

我有一个旧表,里面有数千个帖子。每个帖子都有0-4个图片链接,关于一个产品。现在我必须使用旧表中的数据来装箱新的,并将图片移动到不同的文件夹中。我还必须为每张图片创建缩略图。

这项任务听起来是一项艰巨的工作,运行时间很长。我应该只在一个.php文件中编写代码,而不是让服务器运行它,或者有一种特殊的技术。总而言之,如何通过php处理巨大的表和大量的图片?

PHP可以在需要的时候动态创建它(即,当用户试图访问旧表上的帖子时,PHP会检测到它并自动将其处理到新位置),这样你只需要做你需要的,并且每个只需要做一次。您还可以在更长的时间内分配工作,这将为您节省一些服务器负载。

如果您有大量用户和/或高流量,则不建议使用此方法。

最后我发现了如何解决它,所以我分享了我使用的技术。

我用PHP写了一段代码,可以操作数据库,移动图片,并为每个帖子(表中的行)创建缩略图。由于发布的帖子太多,我无法正确运行,因为max_execution_time设置为30,当然运行时要大得多,所以我将任务分为30秒。我向表中添加了一个新列(如果一行已处理,则存储在其中),并且始终只选择以前未处理的行。毕竟,我创建了一个cron作业,它在每分钟内运行这个PHP文件。

我也可以使用命令行,因为没有时间限制,但我没有SSH访问权限。