sql >> Database teknologi >  >> RDS >> PostgreSQL

Django:tilladelse nægtet ved forsøg på at få adgang til databasen efter gendannelse (migrering)

Det viser sig, at du bør give eksplicit ejerskab af alle objekter i databasen til ejeren efter gendannelse. Ejeren er ikke en superbruger. Det er ikke nok kun at indstille ejeren på tidspunktet for oprettelse af databasen. Den endelige løsning til migrering ser sådan ud:

på klienten:

pg_dump -f dump.sql -Ox database

på serveren:

su postgres    
dropdb database
createdb database -O user
psql database -f dump.sql

og derefter for at indstille privilegierne:

psql database -c "GRANT ALL ON ALL TABLES IN SCHEMA public to user;"
psql database -c "GRANT ALL ON ALL SEQUENCES IN SCHEMA public to user;"
psql database -c "GRANT ALL ON ALL FUNCTIONS IN SCHEMA public to user;"

Bemærk, at vi kunne have kørt kommandoen sql i psql-konsollen, men denne formular kan nemt integreres i scripts og sådan.



  1. Sådan installeres Apache Cassandra på Ubuntu 20.10/Ubuntu 20.04

  2. Tilslutning af Delphi på Linux til SQL Server

  3. Flet flere rækker til en enkelt række

  4. PostgreSQL-indeks på JSON