This is an old revision of the document!
PostgreSQL
Password fix
SELECT
rolname, rolpassword ~ '^SCRAM-SHA-256\$' AS has_upgraded
FROM pg_authid
WHERE rolcanlogin;
\password postgres
DEV refresh
Backup fuelwatcher on PROD
docker exec -it FW_PostgreSQL /bin/bash cd /var/lib/postgresql/data/backups/ pg_dump -d fuelwatcher > fuelwatcher_all_`date +%Y-%m-%dT%H-%M-%S`.backup
Login to root:
sudo su - rsync -av /var/lib/docker/volumes/fw_stack_postgres-data/_data/backups/ /media/usb/backup/postgresql/backups/
Copy backup to STONARD with MobaXterm
Copy backup to Container with beyond Compare (backups ←→ RPi-WiFi backups)
Restore on DEV
Login:
docker exec -it dev-container_devcontainer_db_1 /bin/bash su - postgres
DROP and CREATE DATABASE
psql
select pg_terminate_backend(pid) from pg_stat_activity where datname='fuelwatcher';
DROP DATABASE fuelwatcher;
CREATE DATABASE fuelwatcher
WITH
OWNER = postgres
ENCODING = 'UTF8'
LC_COLLATE = 'en_US.utf8'
LC_CTYPE = 'en_US.utf8'
TABLESPACE = pg_default
CONNECTION LIMIT = -1;
Backup DEV then Restore PROD to DEV:
cd /var/lib/postgresql/data/backups/ pg_dump -d fuelwatcher > fuelwatcher_all_`date +%Y-%m-%dT%H-%M-%S`.backup psql -d fuelwatcher < fuelwatcher_all_2021-08-01T05-23-25.backup
TMP
pg_dumpall > dev-container_devcontainer_db_1_all_`date +%Y-%m-%dT%H-%M-%S`.backup cd /workspace/fuelwatcher/data/STONARD\ backups/ cd /workspace/fuelwatcher/data/RPi-WiFi\ backups/
Data Dictionary export
For comparison between PROD and DEV. Perform on both:
pg_dump -Cs fuelwatcher > /workspace/FuelWatcher/backups/fuelwatcher_STONARD_`date +%Y-%m-%dT%H-%M-%S`.bak
References
How to Upgrade Your PostgreSQL Passwords to SCRAM - https://blog.crunchydata.com/blog/how-to-upgrade-postgresql-passwords-to-scram
Postgres dump database schema with or without data - https://www.chrisnewland.com/postgres-dump-database-schema-with-or-without-data-61