Запускайте скрипт по ajax событию, частями.
Пусть работает так:
При заходе на страницу кнопка "старт"
после ее нажатия скрипт стартует, отправляя ajax запрос, после каждой 1000 строк например, возвращайте результат ему снова, а он пусть снова запускает, только уже со строки 1001