Heroku postgres:如何通过回滚来分叉 pg 数据库以恢复丢失的数据
Heroku postgres: How to fork pg database with rollback to recover lost data
我不小心从我们的生产数据库 (Heroku postgres) 中删除了 3 行。我按照 Heroku 的本指南创建了一个回滚叉:https://devcenter.heroku.com/articles/heroku-postgres-rollback
我的生产数据库称为 HEROKU_POSTGRESQL_IVORY 并且在计划 Standard-0 中。
我尝试了他们建议的多种命令组合:
$ heroku addons:create heroku-postgresql:standard-0 --rollback
HEROKU_POSTGRESQL_IVORY --TO '2018-11-22 13:13+00' --APP my_app
$ heroku addons:create heroku-postgresql:standard-0 --rollback
HEROKU_POSTGRESQL_IVORY --TO '2018-11-22 13:13+00:00' --APP my_app
$ heroku addons:create heroku-postgresql:standard-0 --rollback
HEROKU_POSTGRESQL_IVORY --BY '0 days 1 hours 0 minutes' --APP my_app
这三个都创建了一个没有回滚的数据库。当我 运行 heroku pg:info -a my_app
时,我可以看到新创建的数据库,但是它给出的回滚版本从来不是从期望的时间开始的,并且我删除的行不存在:
Plan: Standard 0
Status: Available
Data Size: 52.4 MB
Tables: 34
PG Version: 10.6
Connections: 8/120
Connection Pooling: Available
Credentials: 2
Fork/Follow: Available
Rollback: earliest from 2018-11-22 14:17 UTC
Created: 2018-11-22 14:10 UTC
Region: eu
Data Encryption: In Use
Continuous Protection: On
Forked From: HEROKU_POSTGRESQL_IVORY
Maintenance: not required
Maintenance window: Wednesdays 21:00 to Thursdays 01:00 UTC
Add-on: postgresql-deep-1111
发帖后很快发现:
确保使用小写的标志:
--to
相对于 --TO
--by
相对于 --BY
我不小心从我们的生产数据库 (Heroku postgres) 中删除了 3 行。我按照 Heroku 的本指南创建了一个回滚叉:https://devcenter.heroku.com/articles/heroku-postgres-rollback
我的生产数据库称为 HEROKU_POSTGRESQL_IVORY 并且在计划 Standard-0 中。
我尝试了他们建议的多种命令组合:
$ heroku addons:create heroku-postgresql:standard-0 --rollback
HEROKU_POSTGRESQL_IVORY --TO '2018-11-22 13:13+00' --APP my_app
$ heroku addons:create heroku-postgresql:standard-0 --rollback
HEROKU_POSTGRESQL_IVORY --TO '2018-11-22 13:13+00:00' --APP my_app
$ heroku addons:create heroku-postgresql:standard-0 --rollback
HEROKU_POSTGRESQL_IVORY --BY '0 days 1 hours 0 minutes' --APP my_app
这三个都创建了一个没有回滚的数据库。当我 运行 heroku pg:info -a my_app
时,我可以看到新创建的数据库,但是它给出的回滚版本从来不是从期望的时间开始的,并且我删除的行不存在:
Plan: Standard 0
Status: Available
Data Size: 52.4 MB
Tables: 34
PG Version: 10.6
Connections: 8/120
Connection Pooling: Available
Credentials: 2
Fork/Follow: Available
Rollback: earliest from 2018-11-22 14:17 UTC
Created: 2018-11-22 14:10 UTC
Region: eu
Data Encryption: In Use
Continuous Protection: On
Forked From: HEROKU_POSTGRESQL_IVORY
Maintenance: not required
Maintenance window: Wednesdays 21:00 to Thursdays 01:00 UTC
Add-on: postgresql-deep-1111
发帖后很快发现:
确保使用小写的标志:
--to
相对于--TO
--by
相对于--BY