I've noticed that there are two options for Heroku for a Postgres Database in the Admin and Dashboard Area when visiting a database instance.
1: Reset Database:
Heroku Dashboard describes this action as:
Reset the database to its originally-provisioned state, deleting all data inside it.
2: Destroy Database:
Heroku Dashboard describes this action as:
Destroys the database and all of the data inside it.
That said, it's still left a little open to interpretation as to the differences behind the scenes of these two actions.
I've looked around the Heroku help but couldn't find much on specifically the differences between the actions.
Perhaps some insights as to the Postgres actions in SQL terms etc that are made by each action would develop a better understanding?
In summary, what are the key differences between these actions?
The explanation provided by Heroku is quite clear, however let me try to interpret that. The main difference is that Reset will preserve the database, whereas Destroy will remove the database.
If you destroy the database, the instance will no longer be available. You will loose the entire database, and that will also affect billing and any app associated.
Reset instead will simply clear the entire content, leaving the database resource available. It's like a "start fresh" button.