Получить ошибку SQL 20006 во время миграции Laravel - PullRequest
0 голосов
/ 05 сентября 2018

Я пытаюсь перенести некоторые данные, используя сеялки laravel. Мой сеялка берет некоторые записи из базы данных MSSQL и вставляет их в MySQL.

Дело в том, что он правильно берет данные из MSSQL, но при запуске для вставки в MySQL выдает ошибку:

SQLSTATE[HY000]: General error: 20006 Write to the server failed [20006] (severity 9) [(null)]

Я работаю через VPN, поскольку оба DDBB находятся в облаке Azure. Я запускаю сеялку из локального контейнера в Docker, чей .env указывает на обе базы данных.

Тот же сеялка работает нормально, когда я меняю соединение MySQL на локальную базу данных, что заставляет меня думать, что есть какая-то ошибка соединения с реальной базой данных MySQL, но я не могу ее найти. Кажется, все правильно.

Я о самоубийстве. Любая идея, пожалуйста?

1 Ответ

0 голосов
/ 05 сентября 2018

Я нашел решение. Это была проблема с памятью.

В своем скрипте я использовал chunk для выполнения операций с блоками. Я установил блоки по 200 операций, поэтому он не мог работать с таким количеством записей одновременно.

Я изменил число на 50, и теперь все работает.

...