Постгрес возвращается - PullRequest
       12

Постгрес возвращается

1 голос
/ 17 сентября 2009

Я внес некоторые изменения в таблицу postgres и хочу вернуть ее в предыдущее состояние. Резервной копии базы данных нет. Есть ли способ сделать это? Например, использует ли postgres автоматические моментальные снимки и сохраняет их где-нибудь или исходные данные теряются навсегда?

Ответы [ 2 ]

6 голосов
/ 17 сентября 2009

По умолчанию PostgreSQL не будет хранить все ваши старые данные - это, конечно, удивит многих. Тем не менее, он имеет встроенный механизм Восстановление на момент времени , который делает в точности то, что вы хотите. Вы должны хранить архив «файлов журналов записи с опережением», которые представляют изменения, внесенные в базу данных, и вы можете делать периодические базовые резервные копии. Когда вы хотите восстановить, вы можете восстановить к определенному времени или даже к определенному идентификатору транзакции.

4 голосов
/ 17 сентября 2009

Если у вас нет резервной копии и вы сделали операцию с данными, я не думаю, что вы можете многое сделать: в базе данных теперь есть ваши новые данные, а старая версия заменена / удалена .

Цель механизма базы данных - сохранить данные, которые вы в нем храните, а не данные, которые вы из него удалили.

В следующий раз: если вам нужно что-то попробовать, используйте транзакцию и не фиксируйте ее до тех пор, пока не убедитесь, что все в порядке, - остерегайтесь не ждать слишком долго, прежде чем совершить или откатить ее потому что это может заблокировать некоторые вещи, не позволяя другим людям делать запросы тоже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...