Ho provato molte soluzioni diverse per ripristinare il mio backup postgres. Mi sono imbattuto in permesso negato problemi su MacOS, nessuna soluzione sembrava funzionare.
Ecco come l'ho fatto funzionare:
Postgres viene fornito con Pgadmin4. Se usi macOS puoi premere CMD
+ SPACE
e digitare pgadmin4
per eseguirlo. Questo aprirà una scheda del browser in Chrome.
Se si verificano errori durante il funzionamento di pgadmin4, provare killall pgAdmin4
nel terminale, quindi riprovare.
I passaggi per ottenere pgadmin4 + backup / restore
1. Creare il backup
Per fare ciò, fai clic con il pulsante destro del mouse sul database -> "backup"
2. Assegna un nome al file.
Come test12345
. Fai clic su backup. Questo crea un dump di file binario, non è in un .sql
formato
3. Guarda dove è stato scaricato
Dovrebbe esserci un popup nella parte inferiore destra dello schermo. Fai clic sulla pagina "Ulteriori dettagli" per vedere dove è stato scaricato il backup
4. Trova la posizione del file scaricato
In questo caso, lo è /users/vincenttang
5. Ripristinare il backup da pgadmin
Supponendo di aver eseguito correttamente i passaggi da 1 a 4, avrai un file binario di ripristino. Potrebbe venire un momento in cui il collega desidera utilizzare il file di ripristino sul proprio computer locale. Ho detto che la persona va su pgadmin e ripristina
Fatelo facendo clic con il tasto destro sul database -> "ripristina"
6. Seleziona il file finder
Assicurati di selezionare manualmente il percorso del file, NON trascinare e rilasciare un file sui campi del caricatore in pgadmin. Perché ti imbatterai in permessi di errore. Trova invece il file che hai appena creato:
7. Trova detto file
Potrebbe essere necessario modificare il filtro in basso a "Tutti i file". Trova il file in seguito, dal passaggio 4. Ora premi il pulsante "Seleziona" in basso per confermare
8. Ripristina detto file
Vedrai di nuovo questa pagina, con la posizione del file selezionata. Vai avanti e ripristinalo
9. Successo
Se tutto va bene, in basso a destra dovrebbe apparire un indicatore che mostra un ripristino riuscito. Puoi passare alle tue tabelle per vedere se i dati sono stati ripristinati correttamente su ciascuna tabella.
10. Se non ha avuto successo:
Se il passaggio 9 fallisce, prova a eliminare il tuo vecchio schema pubblico sul tuo database. Vai a "Strumento di query"
Eseguire questo blocco di codice:
DROP SCHEMA public CASCADE; CREATE SCHEMA public;
Ora prova di nuovo i passaggi da 5 a 9, dovrebbe funzionare
Sommario
È così che ho dovuto eseguire il backup / ripristino del mio backup su Postgres, quando avevo problemi di autorizzazione e non potevo accedere come superutente. Oppure imposta le credenziali per la lettura / scrittura usando chmod
per le cartelle. Questo flusso di lavoro funziona per un dump di file binario predefinito "Personalizzato" da pgadmin. Presumo .sql
sia allo stesso modo, ma non l'ho ancora testato
ERROR: syntax error at or near "t"
. Si è scoperto che avevo importato solo uno schema parziale e quindiCREATE TABLE
un'affermazione precedente nella sceneggiatura non era riuscita. Guarda l'output completo dell'importazione per trovarlo.