Как получить надежную контрольную сумму в таблице InnoDB? Я хочу что-то вроде CHECKSUM TABLE foo QUICK;
, которое есть у MyISAM, и оно должно быть быстрым. Я разрабатываю инструмент для надежного мониторинга и быстрого реагирования на изменения в моей базе данных.
Таблицы InnoDB не обновляются UPDATE_TIME
в information_schema.TABLES
, и я не могу добавить в таблицу автоматически обновляемый столбец last_update, чтобы я мог сделать MAX(last_update)
. Во всяком случае, это не сработает для удаления. Кроме того, я не доволен условиями гонки, которые вводят временные метки с точностью до полных секунд.
Я видел предложения использовать NUM_ROWS
и MODIFIED_COUNTER
из information_schema.INNODB_SYS_TABLESTATS
в качестве контрольной суммы, но в моем тестировании на MariaDB 10.0 эти значения не изменялись в запросах UPDATE
.
SHOW ENGINE INNODB STATUS
- person akuzminsky   schedule 10.06.2015