Cluster migration can be done in different ways depending on requirements and plans.
It is possible to upgrade/downgrade automatically and seamlessly between shared plans. Go to the ElephanSQL control panel and press Edit and change plan type.
There are many different options if you would like to migrate between dedicated plans or from a shared plan to a dedicated plan.
Easiest is to create a new plan and perform a pg_dump, where you manually
pipe the data into a new database:
pg_dump postgres://user:pass@host/db | psql postgres://user:pass@host2/newdb
A follower is a read-only copy of the master database but it can at any time be promoted to accept new writes and updates. A fork creates a copy of all your data, a standalone copy of your database.
Both options can be used to copy/restore all current data from the main database to a new server.
It's possible to make a fork or a follower to the production server at any time. Setup the replication instance, and then move all reads and writes to the new instance. When you have moved all apps, promote the replication to the new master. This way there will be no data loss and downtime is minimised.
Automated backups are performed every day on all plans (pg_dump). These are all accessible to you from the ElephanSQL control panel for up to 30 days.
All backups are compressed with lzop, to restore the data you can
usually use the following:
lzop -cd "$FILE_NAME" | psql "$DATABASE_NAME"
A backup API is available, that allows you to list, create, and restore from backups programmatically.