Migrating to new Docker based AMI - how to restore postgres DB?


Issue Summary

We’re currently running an oldish non-Docker based Redash instance in AWS that originally ran off an AMI but we’ve since been manually running updates. We’d like to move over to the newest version as it fixes some issues with being able to see views in AWS Athena.

I figured this might be the right time to move over to the more up to date AMI so have spun up the latest AMI image. We have our box sitting behind a Route 53 entry so once I have the new box set up and migrated I can simply switch the DNS entry in Route 53 and magically have the latest version. Nice!

I have the new AMI set up nice and easy but am not sure how to migrate the Postgres DB from the existing instance we have set up, to the new redash instance. I have made a dump of the existing Postgres DB using the instructions on this page: https://redash.io/help/open-source/admin-guide/maintenance

I’ve successfully dumped this to S3 and copied over to the new box but I’m hitting issues actually restoring this into the postgres container on the new box (which I’m assuming is what I need to do?)

I’ve run docker exec -i redash_postgres_1 pg_restore -C --clean --no-acl --no-owner < backup.dump which appears to do something - I get a message telling me the dump has been restored - but I’m not seeing the queries and dashboards in the front end.

I’ve stopped and restarted all containers with no success. Is there anything obvious I’m doing wrong here? The info for making a dump of your DB is great but I can’t seem to find anything that tells be how to restore this elsewhere!

Technical details:

  • Redash Version: 5.0.2
  • Browser/OS: N/A
  • How did you install Redash: AWS AMI