pg_dump ignorando sequenza tavolo?
-
25-09-2019 - |
Domanda
Ho giocato in giro con PostgreSQL ultimamente, e sto avendo difficoltà a capire come il backup e il ripristino di una singola tabella.
Ho usato pgadmin3 per il backup una singola tabella nel mio database, al fine di copiarlo su un altro server. Quando provo a fare un pg_restore sul file, vengono visualizzati messaggi di errore che dice che la sequenza non esiste:
pg_restore: [archiver (db)] could not execute query: ERROR: relation "businesses_id_seq" does not exist
Command was:
CREATE TABLE businesses (
id integer DEFAULT nextval('businesses_id_seq'::regclass) NOT NULL,
name character varyin...
Sembra che il file di immagine non ha incluso la sequenza per la mia auto l'incremento colonna. Come faccio a farlo per includere questo?
Soluzione
dumping da parte unico tavolo - scaricherà solo la tabella. È necessario scaricare la sequenza separatamente in aggiunta alla tabella.
Se non conoscete la vostra sequenza è possibile elencare con \d yourtable
in psql. Si vedrà qualcosa nella riga sequenza è su che assomiglia: nextval('yourtable_id_seq'::regclass')
Poi dalla riga di comando, pgdump -t yourtable_id_seq
http://www.postgresql.org/docs/9.0/ static / app-pgdump.html