我正在使用 csv 格式的皇家邮件 PAF 数据库(大约 2900 万行),并且需要使用 php 将数据拆分到 sql server 中。
谁能推荐最好的方法来防止超时?
我正在使用 csv 格式的皇家邮件 PAF 数据库(大约 2900 万行),并且需要使用 php 将数据拆分到 sql server 中。
谁能推荐最好的方法来防止超时?
To disable the script execution time limit, start your script off with this:
set_time_limit(0);
Another problem you will likely run into is a memory limit. Make sure you are reading your file line-by-line or in chunks, rather than the whole file at once. You can do this with fgets()
.
开始你的脚本
ini_set('max_execution_time', 0);
我发现最快的方法是使用 SQL Servers BULK INSERT 直接将数据从 csv 文件中加载到匹配的数据库导入表中。然后从这些导入表中自己操作和填充特定于应用程序的表。
我发现 BULK INSERT 将在短短几分钟内导入主 CSVPAF 文件,其中包含近 3100 万条地址记录。