|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() |
Je suis le super novice de la pratique d'Oracle...
J'expose la situation : - Une base oracle 8i - Une base Oracle 9i - Je connais les structures des deux bases(Quelques tables sont différentes : 3 ou 4). A faire : Repliquer les donnée d'une base vers l'autre tout en conservant la première. C'est à dire, créer des trigger qui vont mettre à jours la base sous oracle 9.i lors d'une insertion, modification, mise à jours de la base sous 8.i Je ne connais pas la strategie à prendre pour ce genre d'exercice. Si quelqu'un a une solution assez simple et pratique à mettre en place, je prends. Existe-il des personnes qui ont pu rencontrer ce genre de situation et a combien de temps est évaluer ce genre de tache. Merci. Cordialement. |
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
fait une recherche sur les vues matérialisées
|
|
|
00
|
|
|
#3 |
|
Membre régulier
![]() Inscription : octobre 2006 Messages : 73 ![]() |
Pour répliquer tes données entre tes deux bases tu as plusieurs solutions :
- une réplication par snapshot - la réplication procédurale - la réplication en utilisant l'AQ En fait le type de réplication dépend surtout de tes bases DB1 et DB2. Si elles sont identiques, la réplication par snapshots est l'idéale, tu crées des tables snapshots sur DB2 à partir de tes tables maîtres de DB1, des snapshots logs sur DB1 et tu schédules un rafraîchissement de tes snapshots suivant tes besoins. Si les maj doivent se faire dans les deux sens ou que DB2 a le droit de rajouter des données à celles qui lui viennent de DB1, la réplication procédurale est sans doute la meilleure. Enfin si tu as des tables différentes ou que la réplication doit être possible dans les deux sens (DB1 => DB2 et DB2 => DB1), alors l'utilisation de l'Advanced Queuing peut être préférable (tu gères des messages et peut ainsi gérer le côté hétérogène des tables, les deux sens de réplication et enfin les problèmes de priorité en mise à jour). Pour résumer, il faut surtout que tu définisses tes besoins des deux côté, tes sens de mise à jour.... afin de choisir l'architecture la plus adaptée. Dans le cadre de mon précédent travail, j'ai mis en place une réplication procédurale dans un seul sens (niveau national => niveau régional), une réplication par snapshot (dans le sens niveau régional => niveau local), toutes les deux portant sur des tables identiques des deux côtées (en 8i). Puis j'ai aussi mis en place une réplication asynchrone dans les deux sens entre une base en 10G (de consolidation nationale) et n bases en 8i (bases métiers de type régionale) en utilisant l'AQ, puis des triggers appelant des procédures métiers car les tables étaient différentes dans ces deux types de base. Quel que soit le type de réplication mis en oeuvre, il faut surtout bien y réfléchir, et à part les snapshots, la mise en place n'est jamais très aisée. Bon courage Pour ces |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com