Как обновлять более 500к строк, без длительной блокировки MySQL таблицы?

После разбора прайса, выполняется очень большой сложный SQL запрос (UPDATE)
Можно ли разбить один большой запрос на множество мелких ?

В laravel -> ORM Eloquent ?
И SpringBoot -> Hibernate (Persistence) ?
Чтобы не дублировать вопрос, дайте пожалуйста решение под две разные платформы
(Два проекта, одна проблема)
  • Вопрос задан
  • 373 просмотра
Решения вопроса 1
@BorisKorobkov Куратор тега MySQL
Web developer
Вариант 1. Обновлять данные кусочками. Блокировки все равно будут, но небольшие.

Вариант 2. Master-slave репликация. Обновлять данные на master, а читать со slave. В этом случае блокировка master не помешает читать данные со slave. В качестве бонуса - повышенная отказоустойчивость.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
vesper-bot
@vesper-bot
Любитель файрволлов
Копировать таблицу, которую собрались изменять, в другую таблицу, обновлять данные там, переименовывать или переносить данные обратно. По-моему так.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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