Esporta
- Accedi
- Vai alla scheda "Esporta"
- Fai clic sul pulsante di opzione "Struttura e dati"
- Fai clic sul pulsante di opzione "Scarica"
- Fai clic sul pulsante "Esporta" e salvalo sul tuo computer locale.
Importa
- Vai su http://www.pgadmin.org/ per scaricare pgAdmin III (uno dei migliori strumenti grafici gratuiti di Postgres)
- Installalo
- Usalo per tutte le tue esigenze Postgres.
Per quanto riguarda le autorizzazioni, basta aprire il dump del database (è testo semplice) e cercare le righe in cui tenta di modificare l'utente corrente o imposta il proprietario di una tabella. Quindi fai una ricerca/sostituisci e sostituisci il proprietario originale con il tuo nuovo nome utente. Non devi preoccuparti di concedere/modificare i permessi :D
Prima dovevamo farlo tutte le volte che passavamo dallo sviluppo alla produzione, il proprietario originale del db/table sarebbe stato lo sviluppatore e dovevamo cambiarlo nell'account del cliente una volta che eravamo pronti per il lancio.
Abbiamo sempre lavorato dalla console usando pg_dump
e altri strumenti da riga di comando correlati, ma mi aspetto che questi corrispondano alle opzioni che hai nell'interfaccia web.
L'esportazione phpPgAdmin utilizza pg_dump. Puoi documentarti su questo se vuoi sapere cosa sta facendo.
Potresti anche voler esportarlo come SQL invece di COPY. COPY è per Postgres e avrai bisogno di SQL se vuoi provare a usare un database diverso. È anche più facile capire se sei abituato a database diversi.
Quello che otterrai con "Struttura e dati" è un file sql che inizierà con la struttura della tabella del database, quindi tutti i dati, quindi i vincoli e le chiavi.
Come ha sottolineato sascha, potresti avere problemi con le autorizzazioni. Ho sempre trovato più semplice eliminare le righe di autorizzazione o commentarle poiché si tratta solo di un database di sviluppo. Rimuovi/commenta/modifica le righe che contengono "PROPRIETARIO". Mi piace
ALTER TABLE schema.table OWNER TO pguser;
Ogni istruzione CREATE TABLE avrà uno di questi dopo per impostare il proprietario della tabella.
IMPORTAZIONE
Se hai errori SQL (che ho visto abbastanza spesso, a seconda dei dati. Le stringhe con caratteri dispari possono essere un problema) potrebbe essere più semplice dividere il file e copiare prima la struttura ed eseguirlo come standard Interrogazione SQL. Quindi inizia con i dati e importali una tabella alla volta. Rende molto più facile trovare l'errore quando lo tagli in parti. Soprattutto quando si ha a che fare con i messaggi di errore molto inutili.
Sì, è un sacco di lavoro di copia e incolla, ma porta a termine il lavoro e probabilmente richiederà meno tempo rispetto al porting in MySQL e alla necessità di modificare il PHP per connettersi e ottenere dati da MySQL invece che da Postgres.
PhpPgAdmin e pgadminIII hanno entrambi la capacità di eseguire istruzioni SQL.
pgAdminIII -> seleziona database -> seleziona il pulsante 'Esegui query SQL arbitrarie'.PhpPgAdmin -> seleziona database -> seleziona il link 'SQL'.
Onestamente questo è il modo meno irritante di spostare i database che ho trovato. Ci vuole più tempo, ma solo se non si verificano errori.