2010-10-27 16 views
1

Hé les gars, Je dois trouver un moyen de sauvegarder et également migrer notre base de données Oracle de notre schéma de production vers le schéma de développement et inversement.Migration et sauvegarde de schémas (structures de base de données complexes)

Nous avons un tas de tables de configuration qui pilotent le fonctionnement des systèmes sur notre plateforme, et lors de la configuration de nouveaux systèmes ou de la maintenance, nous devons mettre à jour nos tables de configuration. Nous voulons être en mesure de travailler sur les schémas de développement et après avoir installé un système/fonctionnalité, nous voulons être en mesure de migrer toutes ces configurations vers les schémas de développement.

Je pensais lancer une procédure où nous donnions l'ID du système (à partir de la table principale) et je parcourais toutes les tables et sélectionnait nvl (..) et si elle n'existait pas, j'insérais dans, et si cela existe, je viens de lancer une mise à jour sur cette ligne.

Ce code sera très compliqué et compliqué d'autant plus que tout le schéma de configuration est très complexe et qu'il peut être difficile de gérer correctement toutes les clés. Une autre option que je regardais était des déclencheurs, donc lors de la mise en place d'un nouveau système, il y aurait un journal de toutes les instructions que nous avons exécutées lors de la configuration/modification d'un système, puis nous l'exécuterions sur notre schéma de production. Je travaille en collaboration avec des bases de données depuis 6 mois, donc je ne connais pas grand-chose et toute information/conseil serait grandement appericiée.

(Nous utilisons pl/sql)

Répondre

1

Qu'en utilisant l'import/export (ou datapump) pour amener sur les tables de configuration?

1

Consultez les outils de comparaison de données comme this Pensez que TOAD en a intégré un. Je suis sûr qu'il y en a d'autres aussi.

0

Il est courant d'avoir des tables dans un schéma qui sont ce que nous appelons des "données statiques", c'est-à-dire que les utilisateurs ne les modifient pas parce qu'elles contrôlent le fonctionnement de l'application.

Chaque modification apportée aux données de configuration ne doit pas être exécutée de manière ad-hoc dans l'environnement cible. Au lieu de cela, vous concevez et codez votre DML avec soin dans un ou plusieurs scripts, qui sont testés dans un environnement de développement, contrôlés dans le contrôle des modifications, et peuvent être réexécutés dans n'importe quel environnement si nécessaire.