on_click
@on_click

Как вылечить зависание при импорте в бд?

Всех с наступающим!

Есть массив с заказами на 7к элементов. Предварительно разбив, пытаюсь сложить в базу
foreach (array_chunk($orders, 500) as $o)
{
    \DB::table('orders')->insert($o);
}

Первые 500 строк записываются моментально но после, по какой-то причине зависает.
Если выставляю лимит в 3000 он первые так же быстро записывает, но ко второй итерации не приступает.
В обоих случаях после ожидания ловлю Maximum execution time...

Убрать лимит совсем не могу, будет ошибка Prepared statement contains too many placeholders

Laravel 8, mariaDb-10.4, php_7.4

Подскажите пожалуйста, в какую сторону смотреть, из за чего такое может происходить?
  • Вопрос задан
  • 211 просмотров
Пригласить эксперта
Ответы на вопрос 1
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
Запускать операцию через командную строку (cli), а не через браузер.
https://laravel.com/docs/8.x/artisan#writing-commands
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы