我做了一些更改postgres表,我想恢复到以前的状态。没有数据库的备份。有没有办法做到这一点?如在,postgres采取自动快照并将其存储在某处或原始数据永远丢失?Postgres恢复回
1
A
回答
6
默认情况下,PostgreSQL不会存储所有旧数据 - 当然会让很多人感到惊讶。然而,它有一个内置的Point-in-time Recovery机制,它几乎完全符合你的要求。您必须保留代表对数据库所做更改的“预写日志文件”的存档,并且可以定期进行基本备份。当你想恢复时,你可以恢复到特定的时间甚至特定的交易ID。
4
如果你没有备份,并且对数据做了一个操作,我认为你可以做的事情不多:数据库现在有你的新数据,而它的旧版本已被替换/删除。
数据库引擎的目标是坚持存储在其中的数据 - 而不是从中删除的数据。
对于下一次:如果您需要尝试一些事情,请使用事务,并且在您确定所做的事情是确定之前不要提交它 - 在commitint或rollbacking之前请注意不要等待太久,因为它可能会锁定某些内容,阻止其他人进行查询。
+0
谢谢马丁。这不是生产表。这是在我的本地盒子上。所以很想知道postgres是否每小时或每天都会自动拍摄快照或类似的东西。 – Abhi 2009-09-17 05:50:51
相关问题
- 1. SourceTree恢复回复
- 2. 错误恢复postgres数据库备份
- 3. 如何从Heroku中恢复数据Postgres
- 4. 从文件夹中恢复postgres db
- 5. 如何将APSchduelder sqlite恢复到Postgres
- 6. 如何恢复postgres数据库
- 7. ExtJS TabPanel SetActiveTab恢复回0
- 8. iphone - 连接恢复回调
- 9. 如何恢复hg回滚?
- 10. 将数据从9.1.7版本postgres文件恢复到8.4版本postgres
- 11. 恢复和恢复方案
- 12. 是否有可能将postgres DB恢复到本地liquibase
- 13. Postgres警告:在恢复时忽略错误:59
- 14. 只使用Postgres中的COPY STDIN恢复一些键值?
- 15. postgres函数/扩展没有被转储或恢复正确?
- 16. 当我恢复.backup文件到postgres时获取空表
- 17. 在没有pg dump的情况下恢复Postgres数据库?
- 18. 在9.6 postgres上恢复9.5 pgdump文件时出错
- 19. 如何处理磁盘损坏/恢复磁盘损坏/恢复已将主回购恢复到旧状态
- 20. golang恢复返回值语法
- 21. 恢复以前的回声状态
- 22. 返回后恢复活动状态
- 23. SimpleMessageListenerContainer一样回采后无法恢复
- 24. 测试性能 - 回退vs恢复点
- 25. 恢复git回购到以前承诺
- 26. Template10 - 恢复后返回主页面
- 27. 在Flash回调后恢复Jquery功能
- 28. 恢复返回修改记录
- 29. 恢复URL不返回预期结果
- 30. 光标不会恢复在JSON回调
要明确:只有在删除稍后可能要恢复的数据之前打开PITR才能使用。默认情况下,您需要归档的WAL文件才能工作,并不会永久保存在任何地方,您必须首先设置它。 – 2009-09-18 04:13:21