Как отменить / отменить откат в infinidb?

Когда я запускаю infinidb, я получаю следующее сообщение об ошибке, что делает невозможным запуск службы. В файле журнала написано, что есть проблема с откатом. Есть ли способ отменить откат, чтобы я мог снова запустить службу? Я в порядке с потерей некоторых данных.

Запуск платформы базы данных Calpont InfiniDB:....... СДЕЛАНО Предупреждение! DBRM в настоящее время находится в режиме только для чтения! Обновления не будут распространяться! Запуск Calpont InfiniDB MySQL: запуск MySQL
. * Проверка системного каталога InfiniDB: проверка успешно завершена Проверка функциональности выполнения: Проверка ведения журнала InfiniDB: Проверка процесса платформы DONE: ОШИБКА: проблема с процессом InfiniDB DMLProc, должна быть запущена одна версия *** Остановка InfiniDB, чтобы разрешить проблему процесса. Завершение работы Calpont InfiniDB MySQL: завершение работы MySQL
... * Завершение работы платформы базы данных Calpont InfiniDB:

/var/log/Calpont/crit.log

DMLProc [4292]: 41.458706 | 0 | 0 | 0 | C 20 CAL0002: Не удалось запустить DMLProc из-за: проблемы с откатом. Буфер версии файла не существует.

Я уже пытался удалить файлы в /usr/local/Calpont/data1/systemFiles/dataTransaction но это все равно не начнется.

1 ответ

Вот как я смог это решить.

Пока служба запускается:

# service infinidb start

В другой сессии SSH перейти к /usr/local/Calpont/bin и найдите идентификатор транзакции, вызывающий проблему:

# ./rollback -p

Как только вы узнаете, немедленно запустите команду отката с идентификатором транзакции, который вы видите:

./rollback -r 64536

Он ответит OK, и служба успешно запустилась на этот раз. Мне пришлось сделать это дважды, потому что моя первая попытка, вероятно, не смогла откатить транзакцию вовремя.

Другие вопросы по тегам