Я пытаюсь переместить последние несколько баз данных со старого сервера mysql, но одна, в частности, меня озадачила:
ОШИБКА 1118 (42000) в строке 595: размер данных BLOB / TEXT, вставленных в одну транзакцию, превышает 10% от размера журнала повторов. Увеличьте размер журнала повторов с помощью innodb_log_file_size.
Сервер, на который выполняется миграция, работает 5.6.29-76.2-log Percona Server
, который, похоже, обходной путь для ошибки согласованности транзакций с большими BLOB-объектами.
Поскольку для изменения innodb_log_file_size требуется перезапуск службы, есть ли способ импортировать базу данных с отключенными транзакциями или чем-то еще? В SQL * Loader есть несколько опций для отключения транзакций при импорте, может быть, есть аналогичный инструмент и настройки для MySQL?
Здесь нет обходного пути. Вам нужно будет перезагрузить.
Все в InnoDB выполняется в транзакции. Иногда он неявный (когда автокоммит включен, каждый выполненный оператор - технически - запускает и фиксирует свою собственную транзакцию), но это все еще транзакция в соответствующем смысле.
Журнал повторов является важным компонентом, и его размер можно изменить только после перезапуска.