Прежде всего, я не вижу смысла в написании сценария для этого. Почему бы вам просто не получить дамп SQL от phpMyAdmin и отредактировать его так, чтобы он подходил для другой базы данных? Или они такие разные?
Но чтобы ответить на ваш вопрос: моей первой мыслью было бы, как и другие люди, уже говорили, что проблема будет в ограничении времени. Прежде чем пытаться что-то с этим сделать, вы должны проверить значение max_execution_time
в php.ini (это примерно 30 секунд большую часть времени) и сколько времени занимает выполнение сценария. Если он завершается примерно через 30 секунд (или значение max_execution_time
, если оно отличается), вероятно, в этом проблема, хотя php должен выдать ошибку (или хотя бы предупреждение).
Я не думаю, что есть ограничение на размер массива в php. Однако в php.ini есть директива, а именно memory_limit
, определяющая объем памяти, который может использовать скрипт.
Если у вас есть доступ к файлу php.ini, я предлагаю установить для max_execution_time
и memory_limit
более высокое значение. Если у вас нет доступа к php.ini, вы не сможете изменить директиву memory_limit
. Вам придется обойти это, например, используя LIMIT
в вашем SQL. Обязательно сбросьте использованные переменные, иначе вы можете столкнуться с той же проблемой.