Восстановить / Восстановить / Восстановить таблицу токодов (из отсутствующего файла состояния)
У меня есть таблица TokuDB, в которой по какой-то причине отсутствует файл ***_status.tokudb.
Я еще не уверен, отсутствует ли файл из-за сбоя TokuDB или нет.
Вопрос:
- Есть ли способ восстановить или воссоздать файл состояния из основного и ключевого файлов (который, как я вижу, присутствует на карте tokudb_file)?
- Как я могу отладить, что вызвало удаление файла состояния tokuDB?
Это действительно частая или известная ошибка? https://github.com/percona/tokudb-engine/wiki/Broken-tables-caused-by-non-transactional-table-operations
1 ответ
Итак, я смог восстановить мои файлы из основных файлов.
Я до сих пор не знаю, что удалило файлы статуса, хотя.
В репозитории toku-ft есть встроенный инструмент отладки, называемый tokuftdump.
После анализа дерева он сбрасывает потоки байтов на листовые записи, которые не распакованы. Некоторое быстрое шестнадцатеричное редактирование преобразованных шестнадцатеричных потоков раскрывает структуру, и затем вы можете изменить утилиту, чтобы выводить точные значения после анализа, как показано структурой.
Поскольку toku имеет буферы сообщений на узлах, вам также может потребоваться дополнительная обработка сообщений. В моем случае это было просто, так как у меня были только вставки...
Обновление: более подробную информацию можно найти здесь.