Ребята, подскажите Есть MySQL, в котором несколько баз. В одну из них

(InnoDB) копировались данные из другой базы (из таблицы в таблицу):
INSERT INTO base1.table SELECT * from base2.table

Копирование длилось ~ 12 часов, и в какой-то момент операция прервалась с ошибкой, что мол таблица повреждена и теперь (даже после перезапуска сервера)
mysqld съдает 100% CPU и не открывает подключения (Unable to connect to localhost).
Я так понимаю, что он откатывает изменения, но это продолжается уже 5 суток. В логах ничего нет.

Мне на самом деле эти конкретные базы (base1 и base2) не нужны (я могу восстановить их из резервной копии).
Как мне отменить эту операцию отката и просто запустить сервер, чтобы работали все мои другие базы?

16 ответов

20 просмотров

Это ещё надо доказать, что там что-то происходит, а не дедлок

Рома- Автор вопроса
Vladislav Sh.
Это ещё надо доказать, что там что-то происходит, ...

а как узнать? к бд подключиться не могу мб какой-то уровень детализации в логах повысить?

Рома
а как узнать? к бд подключиться не могу мб какой-т...

/var/log/mysqld.log Можно отсюда начать, дальше я не так сильно шарю к сожалению

Рома
а как узнать? к бд подключиться не могу мб какой-т...

С чего подключиться не можете? Место свободное есть?

Рома
а как узнать? к бд подключиться не могу мб какой-т...

Для начала смотреть в error log, как выше и написали, чтобы понять, что происходит при запуске. Потом, возможно, использовать innodb_force_recovery - https://dev.mysql.com/doc/refman/8.0/en/forcing-innodb-recovery.html Но не советую бежать и сразу играться с переменной, пока не понятно, что там вообще происходит. Так что в первую очередь обязательно error log смотреть. Касаемо уровня логирования, он выставляется вот этой переменной - https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_log_error_verbosity

Это сервер откатывает транзакции, что не удалось завершить, почти наверняка. Жди.

Отменить - просто установить сервер с нуля

Рома
а как узнать? к бд подключиться не могу мб какой-т...

Смотри в логи сервера, там всё написано

Рома- Автор вопроса
Ilya Zviagin
Отменить - просто установить сервер с нуля

а с текущими бд как быть? я их и забэкапить не могу сейчас

Рома
а с текущими бд как быть? я их и забэкапить не мог...

Никак. Либо стирай всё, либо жди когда откатится транзакции

Рома
в логах пусто

В логах что-то да должно быть

Рома- Автор вопроса
Ilya Zviagin
В логах что-то да должно быть

я подозреваю что уровень детализации низкий, но если повысить и ребутнуть, то заново начнёт откатывать. скоро 6е сутки пойдут!

Рома
я подозреваю что уровень детализации низкий, но ес...

Нет там достаточный уровень чтобы всё что надо выводить

Рома- Автор вопроса
Ilya Zviagin
Нет там достаточный уровень чтобы всё что надо выв...

# tail -f /var/log/mysql/error.log 2023-08-03T06:15:22.769281Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.26-0ubuntu0.20.04.2) starting as process 1039454 2023-08-03T06:15:22.782695Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.

Рома
а с текущими бд как быть? я их и забэкапить не мог...

Если очень не терпится, то innodb_force_recovery про который я уже писал. В ссылке выше все написано, какие значение что делают: innodb_force_recovery=3 - скипает rollback транзакций innodb_force_recovery=5 вообще не смотреть в undo, считать, что все транзакции «закоммичены» Любое значение выше 3 с высокой долей вероятности «закораптит» файлы данных, потому что данные будут не консистентны. Но сервер поднимется, можно будет сделать дамп. В вашем случае, если проблема в одной таблице, то ставить параметр в 3, поднимать и дропать эту таблицу. Такой сценарий порямо там же описан, но кто бы читал…

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

Обсуждают сегодня

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
2
Привет!) Кто как юзает переменные в строках?) Чисто ради интереса Вот так: echo "У меня {$bananasAmount} бананов"; Или вот так: echo "У меня ${bananasAmount} бананов";
Виталий
3
разработчик ботов скидывает портфолио, боты которые он уже создал. А вот как узнать что это именно он их создал?
Gosudar
4
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
кто-нибудь уже пробовал это?
Lencore
4
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
❓ Подскажите как сделать в группе телеги функцию (кнопку) пересылки сообщения где есть нарушение правил? Бот к каждому сообщению (по определенным ключам) добавляет снизу кнопк...
Alexander
4
Вопрос: Здравствуйте! У меня возникла проблема с использованием плагина Mall в OctoberCMS. Я использую все файлы и компоненты в их исходном виде, без изменений. Однако на стр...
𐩱𐩪𐩣𐩱𐩲𐩺𐩡
8
Карта сайта