1
0
mirror of https://github.com/spantaleev/matrix-docker-ansible-deploy.git synced 2024-12-12 08:43:55 +02:00
matrix-docker-ansible-deploy/docs/importing-postgres.md
Slavi Pantaleev 76506f34e0 Make media-store restore work with server files, not local
This is a simplification and a way to make it consistent with
how we do Postgres imports (see 6d89319822), using
files coming from the server, not from the local machine.

By encouraging people NOT to use local files,
we potentially avoid problems such as #34 (Github issue),
where people would download `media_store` to their Mac's filesystem
and case-sensitivity issues will actually corrupt it.

By not encouraging local files usage, it's less likely that
people would copy (huge) directories to their local machine like that.
2019-01-01 15:57:50 +02:00

1.3 KiB

Importing an existing Postgres database from another installation (optional)

Run this if you'd like to import your database from a previous installation of Matrix Synapse. (don't forget to import your media_store files as well - see the importing-media-store guide).

Prerequisites

For this to work, the database name in Postgres must match what this playbook uses. This playbook uses a Postgres database name of homeserver by default (controlled by the matrix_postgres_db_name variable). If your database name differs, be sure to change matrix_postgres_db_name to your desired name and to re-run the playbook before proceeding.

The playbook supports importing Postgres dump files in text (e.g. pg_dump > dump.sql) or gzipped formats (e.g. pg_dump | gzip -c > dump.sql.gz).

Before doing the actual import, you need to upload your Postgres dump file to the server (any path is okay).

Importing

To import, run this command (make sure to replace <server-path-to-postgres-dump.sql> with a file path on your server):

ansible-playbook -i inventory/hosts setup.yml --extra-vars='server_path_postgres_dump=<server-path-to-postgres-dump.sql>' --tags=import-postgres

Note: <server-path-to-postgres-dump.sql> must be a file path to a Postgres dump file on the server (not on your local machine!).