Précédent   Forum des professionnels en informatique > Bases de données > Oracle
Oracle Forum Oracle : le serveur, les outils, ... Voir F.A.Q Oracle Tutoriels Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/01/2011, 10h00   #1
Membre habitué
 
Femme Chris
Développeur Web
Inscription : mai 2010
Messages : 225
Détails du profil
Informations personnelles :
Nom : Femme Chris
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mai 2010
Messages : 225
Points : 103
Points : 103
Par défaut Oracle Streams: démarche pour la mise en place entre 2 bases distantes

Bonjour,
Certains d'entre vous ont du voir que je souhaitais mettre en place Oracle streams pour une synchro entre ma base de prod et ma base de dév. toutes deux sur des serveurs différents.

J'ai fait un test avec les explication de ce site:http://blog.arkzoyd.com/2008/07/nouv...a-capture.html. tout fonctionne très bien.
Mon souci c'est que j'arrive pas à voir comment faire pareil mais entre ma base de prod et ma base de dév qui sont distantes. Quelque chose m'échappe: Quelles étapes je dois mettre sur la base de prod et quelles étapes sont sur la base de dév?

merci d'avance

ps:pour donner plus d'info,ma base de prod est sur 11g SE(c'est pour cette raison que j'utilise la capture synchrone) et ma base de dév sur oracle 10g
chris0938 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/01/2011, 16h10   #2
Membre habitué
 
Femme Chris
Développeur Web
Inscription : mai 2010
Messages : 225
Détails du profil
Informations personnelles :
Nom : Femme Chris
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mai 2010
Messages : 225
Points : 103
Points : 103
Bonjour, voila ce que j'ai pour le moment:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
 
/*étape 1 création utilisateur STRMADMIN sur la base source et destination en tant que  sysdba */
connect / AS sysdba
 
CREATE TABLESPACE streams_tbs DATAFILE
      '/opt/app/oracle/.../.../streams_tbs.dbf'
      size 25M AUTOEXTEND ON MAXSIZE 256M;
 
CREATE USER strmadmin IDENTIFIED BY strmadmin
      DEFAULT TABLESPACE streams_tbs
      QUOTA UNLIMITED ON streams_tbs;
 
GRANT dba TO strmadmin;
 
/*sur dev */
 connect 
 
CREATE TABLESPACE streams_tbs DATAFILE
      '/u01/.../.../streams_tbs.dbf'
      size 25M AUTOEXTEND ON MAXSIZE 256M;
 
CREATE USER strmadmin IDENTIFIED BY strmadmin
DEFAULT TABLESPACE streams_tbs
 QUOTA UNLIMITED ON streams_tbs;
 
GRANT dba TO strmadmin;
 
/*étape 2 Création dblink pour STRMADMIN sur la base source et destination en tant que STRMADMIN*/
/*sur prod*/
connect strmadmin/strmadmin
 
CREATE public DATABASE link dbldev 
connect TO strmadmin
IDENTIFIED BY strmadmin
USING 'BDDEV';
 
/*sur dev*/
connect strmadmin/strmadmin
 
CREATE public DATABASE link dblpro
connect TO strmadmin
IDENTIFIED BY "strmadmin"
USING 'BDPRO';
 
/*étape 3 mise en place de la file d'attente sur la base source et destination en tant que STRMADMIN */
BEGIN
  DBMS_STREAMS_ADM.SET_UP_QUEUE(
      queue_table => 'strmadmin.streams_queue_table',
      queue_name  => 'strmadmin.streams_queue');
END;
/
 
/*étape 4 Construction du schéma sur la base source et destination en tant que sysdba */
/*prod et dev*/
connect / AS sysdba
 
CREATE user demo
      IDENTIFIED BY demo
      DEFAULT tablespace users
      TEMPORARY tablespace temp;
 
GRANT connect,resource TO demo;
 
connect demo/demo
 
CREATE TABLE t1(
      id number PRIMARY KEY,
      text varchar2(80));  
 
 
/*étape 5 Process capture sur la base source(prod) en tant que STRMADMIN */	
connect strmadmin/strmadmin   
 
begin
dbms_streams_adm.add_table_rules(
  table_name   		=> 'demo.t1',
  streams_type 		=> 'sync_capture',
  streams_name 		=> 'sync_capture',
  queue_name   		=> 'strmadmin.streams_queue',
  include_dml        => true,
  include_ddl        => false, 
  inclusion_rule     => true);
 end;
/  
 
/*étape 6 Process de propagation sur la base source(prod) en tant que STRMADMIN */
connect strmadmin/strmadmin  
 
begin 
 dbms_streams_adm.add_table_propagation_rules( 
 table_name => 'demo.t1',
 streams_name => 'PROD_TO_DEV',
 source_queue_name => 'strmadmin.streams_queue',
 destination_queue_name => 'strmadmin.streams_queue@dbldev',
 include_dml => true,
 include_ddl => false,
 source_database => 'PROD',
 inclusion_rule => true);
 end;
 /
 
 /*étape 7 Instanciation de la table en tant que STRMADMIN*/
/*prod*/
 col apply_scn format 999999999999999 new_value apply_scn
 
SELECT dbms_flashback.get_system_change_number apply_scn
FROM dual; 
 
/*dev*/
begin
  dbms_apply_adm.set_table_instantiation_scn(
        source_object_name   => 'demo.t1@dblpro',
        source_database_name => 'PROD',
        instantiation_scn    =>  apply_scn );
end;
/
 
/*étape 8 Configuration du process d'apply sur la base de destination(dev) en tant que STRMADMIN*/
connect strmadmin/strmadmin  
 
begin
dbms_streams_adm.add_table_rules(
     table_name         => 'demo.t1',
     streams_type       => 'apply',
     streams_name       => 'streams_apply',
     queue_name         => 'strmadmin.streams_queue',
     include_dml        => true,
     include_ddl        => false,
     include_tagged_lcr => false,
     source_database    => 'PROD',
     inclusion_rule     => true);
end;
/
 
/*étape 9 start de l'apply sur dev*/
exec dbms_apply_adm.start_apply('streams_apply');
 
 
/*étape 10 test de la synchro*/
/*sur prod*/
INSERT INTO demo.t1(id,text) VALUES(1,'essai synchro');
commit;
 
/*vérification*/
SELECT * FROM demo.t1@dbldev;
mais malheureusement cela ne fonctionne pas.
les dblink fonctionnent bien pourtant.
est ce qu'il me manque quelque chose? est ce que j'ai mal écrit une partie?
chris0938 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/05/2011, 14h39   #3
Membre habitué
 
Avatar de jlm22
 
Homme Jean-Louis
Etudiant
Inscription : décembre 2010
Messages : 199
Détails du profil
Informations personnelles :
Nom : Homme Jean-Louis
Âge : 20
Localisation : France

Informations professionnelles :
Activité : Etudiant

Informations forums :
Inscription : décembre 2010
Messages : 199
Points : 114
Points : 114
salut!

As tu résolu ton problème car je suis interressé par la démarche que tu as pus faire pour mettre Streams en place

cordialement
jlm22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 14h04   #4
Futur Membre du Club
 
Inscription : septembre 2004
Messages : 39
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 39
Points : 18
Points : 18
Il semblerait que Stream soit abandonné par Oracle et que son remplaçant soit le GoldenGate..
Je suis en train de le tester justement et c'est relativement simple à mettre en place

Si tu n'as pas de contraintes particulière je t'invite à jeter un oeil sur le GoldenGate
hkhan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 14h07   #5
Membre habitué
 
Avatar de jlm22
 
Homme Jean-Louis
Etudiant
Inscription : décembre 2010
Messages : 199
Détails du profil
Informations personnelles :
Nom : Homme Jean-Louis
Âge : 20
Localisation : France

Informations professionnelles :
Activité : Etudiant

Informations forums :
Inscription : décembre 2010
Messages : 199
Points : 114
Points : 114
ah je te remercie beaucoup je vais regarder sa parce que là je me prend la tête avec Streams ! tu me tiens au courant si sa fonctionne chez toi ?

Merci d'avance
jlm22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 14h24   #6
Futur Membre du Club
 
Inscription : septembre 2004
Messages : 39
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 39
Points : 18
Points : 18
pas de soucis, pour le moment les tests sont concluants : excellentes réponses, pas de pertes, et relativement simple à utiliser !
hkhan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2011, 16h39   #7
Membre habitué
 
Avatar de jlm22
 
Homme Jean-Louis
Etudiant
Inscription : décembre 2010
Messages : 199
Détails du profil
Informations personnelles :
Nom : Homme Jean-Louis
Âge : 20
Localisation : France

Informations professionnelles :
Activité : Etudiant

Informations forums :
Inscription : décembre 2010
Messages : 199
Points : 114
Points : 114
Rebonjour, j'en suis au même point que toi chris après de nombreux essai toutes les procédures passe et au moment du test rien ne se copie.


En ce qui concerne golden gate je n'ai pas trouver de version 32 bit donc voilà ...

cordialement
jlm22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h29.


 
 
 
 
Partenaires

Hébergement Web