sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur man uppgraderar pg_restore i docker postgres image 10.3 till 10.5

Om jag förstår dig rätt vill du återställa en anpassad formatdump tagen med 10.5 till en 10.3-databas.

Det kommer inte att vara möjligt om arkivformatet har ändrats mellan 10.3 och 10.5.

Som en lösning kan du använda en "vanligt format"-dump (alternativ --format=plain ) som inte har en "arkivversion". Men eventuella problem under återställning är dina att ta itu med, eftersom nedgradering av PostgreSQL inte stöds.

Du bör alltid använda samma version för utveckling och produktion, och du bör alltid använda den senaste mindre versionen (för närvarande 10.13). Allt annat kräver problem.

  1. säkerhetskopiering som vanlig text så här:varning! filen kommer att bli enorm. Cirka 17 gånger mer än vanligt anpassat format. Min typiska 90mb är nu 1,75 Gb
  2. kopiera säkerhetskopian till postgres-behållaren docker cp ~/path/to/dump/in-host-system/2020-07-08-1.dump <name_of_postgres_container>:/backups
  3. gå till bash för din postgres-behållare docker exec -it <name_of_postgres_container> bash
  4. inuti bash of postgres container:psql -U username -d dbname < backups/2020-07-08-1.dump

Det kommer att fungera




  1. Välj en kolumn med ett nyckelordsnamn

  2. Smart (?) Databascache

  3. Hur tar jag hänsyn till saknade xPaths och håller mina data enhetliga när jag skrapar en webbplats med DOMXPath-frågemetoden?

  4. Hur undviker man flera funktionsevaler med syntaxen (func()).* i en SQL-fråga?