2010-12-12 4 views
0

J'ai une base de données MySQL avec plus de 40 000 enregistrements que je veux importer dans une nouvelle base de données PostgreSQL; Je veux pouvoir mapper les valeurs des anciens noms de tables et de colonnes dans de nouveaux noms de tables et de colonnes ... comment faire?Comment traduire un vidage de base de données MySQL vers une nouvelle base de données PG?

Par exemple, je veux profiter de:

Table name: Horribly_Named_Table 
=> Horribly_Named_Column: value1 

(MySQL) 

... et traduisez ceci:

Table name: better_named_table 
=> better_named_column: value1 

(PostgreSQL) 

Je ne l'ai jamais fait un geste comme ça avant, de sorte que toute aide est apprécié!

Répondre

2

Je recommande d'utiliser une simple transformation au sein de Pentaho Data Integration: La configuration est très simple et il y a un assistant pour les données de base de la base de données de chargement d'une base de données à l'autre:

Voir une réponse similaire ici:

Migrate from Oracle to MySQL

+0

Merci, je vais donner un coup d'oeil. – neezer

0

Si vous ne faites référence qu'à la différence entre les noms UPPER/minuscules, vous n'avez pas vraiment besoin de faire quelque chose. Assurez-vous de ne pas citer les noms des tables et qu'elles ne seront pas sensibles à la casse.

This_Table_Name est la même que this_table_name et c'est la même chose que THIS_TABLE_NAME.

Mais "this_table_name" est quelque chose de différent alors "This_Table_Name"

+0

Notez qu'un vidage mysql peut ajouter 'des marques autour des noms de tables/colonnes. Il suffit d'utiliser un éditeur de texte ou awk ou sed pour enlever ces marques et vous êtes en or –

Questions connexes