У меня проблема с вставкой данных из одной таблицы в другую, это база данных MySQL. Стол, который должен быть импортирован, составляет около 4 ГБ. Я использую этот запрос для импорта данных.Вставить огромную таблицу в ошибку SQL 1206
insert into table1(column1, column 2)
select table2.column1, table2.column2
from table2 left join table1 on table2.column1 = table1.column1
where table1.column1 is null
Я получаю эту ошибку: Код ошибки 1206: общее количество замков превышает размер таблицы блокировок.
Увеличение размера пула буферов не является вариантом, у меня нет прав на это. SQL-запрос работает с меньшими таблицами.
У кого-нибудь есть решение для моей проблемы?
Решение:
insert IGNORE into table1(column1, column 2)
select table2.column1, table2.column2
from table2;
Спасибо Том Мелли за ответ. Спасибо, Стефан Винклер за помощь.
Привет, в столбце есть уникальный индекс. Я пробовал это раньше, но каким-то образом данные не были вставлены. Часть 2 таблиц - это наложение, это был один большой Перед тем как придумать, что может привести к тому, что вставка IGNORE не будет вставлена? – Kevin
Nevermind, как-то это сработало сейчас :) спасибо, сэр! – Kevin
«Я ничего не менял»;) –