У меня возникли проблемы с использованием INSERT в таблице.По сути, я запускаю команду вставки и получаю:
Код ошибки 2013: потеря соединения с сервером MySQL во время запроса.
Это моя команда вставки:
INSERT IGNORE INTO t1(a_id, b_id, c_id, d_id, e_id)
SELECT t1 a_id, b_id, c_id, d_id, e_id FROM all_data;
Для этой проблемы я пытаюсь увеличить время ожидания соединения.
Однако после этого я получаю:
Превышено время ожидания блокировки;попробуйте перезапустить транзакцию
Я попытался убить все возможные процессы.Без какого-либо успеха.Не говоря уже о том, что если вы увеличите время ожидания, тогда процесс уничтожения может занять в 30 раз больше времени, чем выполнение запроса.
Я думаю, что моим решением этой проблемы было бы попытаться добавить меньше данныхвовремя.Следовательно, мой вопрос, как вставить только один столбец в таблицу с несколькими столбцами?
TL; DR:
Проблема 1: Команда вставкипроисходит сбой из-за «Потеря соединения с сервером MySQL во время запроса»
Мое решение: Увеличение времени ожидания соединения.
Проблема 2: ВставкаСбой команды из-за «Превышено время ожидания блокировки».
Мое решение: Убить процессы.После этой попытки добавить один столбец за раз.
Мой последний вопрос: Как вставить только один столбец из другой таблицы в таблицу с несколькими столбцами?например,
INSERT IGNORE INTO t1(a_id, b_id, c_id, d_id, e_id)
SELECT a_id FROM all_data;