[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Da Mysql to Postgresql



Davide Prina ha scritto:
Fabio La Farcioli wrote:

stavo pensando di migrare i DB MySQL a PostgreSQL in maniera indolore, ovvero evitando di reinsirire tutti i dati a mano...cosa impossibile!

ora io non conosco MySQL, ma quello che farei ... o cercherei di fare ... è il seguente:

1) creerei per ogni riga di ogni tabella una stringa dove inserirei ogni singola colonna con un separatore da me scelto (es: | che di solito non è mai usato all'interno dei dati) ... questo punto è semplice se in MySql esiste una tabella che elenca le tabelle presenti nel database e un'altra che per ogni tabella elenca i campi di ogni tabella, basta creare un ciclo innestato con un case per i vari tipi di dati utilizzati

Nota: questa parte potrebbe non essere banale da realizzare se ci sono tipi di dati complessi (es: geospaziali)

2) esporterei il contenuto delle tabelle così ottenuto

3) importerei il tutto in PostgreSQL

4) farei una procedura che rimette i dati al loro posto nel nuovo db (in PostgreSQL esistono funzioni adatte a spezzare una stringa in sotto-stringhe dove ogni sotto-stringa è divisa da separatori)

Ti dico subito che è da poco che sto studiando PostgreSQL, non sapevo neanche di una simile funzionalità.
Naturalmente la struttura delle tabelle dovrebbe essere più semplice da esportare e ricreare.

Il costo "umano" per realizzare tutto ciò è indipendente dalla dimensione del database ed è molto basso, l'unica cosa richiesta è la conoscenza dei tipi di dati di entrambi i database per capire come salvare i valori e come poi riscriverli nel nuovo db.

Comunque penso che mi documenterò meglio prima di far ciò, ho molte cose ancora da studiare...penso che questo processo di migrazione fosse più facile.

Grazie comunque...



Reply to: