Я почти уверен, что существуют технологии синхронизации БД, но поскольку у вас уже есть требование, я бы рекомендовал использовать журнал изменений.
Итак, у вас будет таблица «CHANGE_LOG», в которую вы будете вставлять строки всякий раз, когда будете «записывать» в свои таблицы (INSERT, UPDATE, DELETE). Раз в день вы можете применить эти изменения по одному к кеш-базе данных.
Удаление журнала изменений после его применения - это нормально, но вы также можете присвоить «версию» БД. Таким образом, каждое изменение в БД будет увеличивать номер версии. Это может быть использовано для управления несколькими базами данных.
Чтобы обеспечить дополнительную уверенность, например, в кеш-базе данных может быть триггер, который увеличивает свои собственные номера версий. Таким образом, ваш процесс может запросить кеш-базу данных и узнает, какие изменения необходимо применить, не поддерживая их в основной БД (таким образом, подключение новой кеш-базы данных, обновление сбойной кеш-базы данных тоже легко .).
Обратите внимание, что вам, вероятно, время от времени необходимо очищать журнал изменений.