root/traduc/trunk/slony/dropthings.xml

Revision 1018, 7.3 kB (checked in by daamien, 7 months ago)

coquilles

Line 
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- DerniÚre modification
3      le       $Date$
4      par      $Author$
5      révision $Revision$ -->
6
7 <sect1 id="dropthings"> <title>Supprimer des éléments de la réplication</title>
8
9 <indexterm><primary>retirer des objets de la réplication</primary></indexterm>
10
11 <para>Il y a plusieurs choses que vous pouvez supprimer de la réplication &slony1;.</para>
12
13 <sect2><title>Retirer un noeud entier</title>
14
15 <indexterm><primary>retirer un noeud de la réplication</primary></indexterm>
16
17 <para>Si vous voulez retirer un noeud entier de la replication, la commande <xref
18 linkend="slonik"/> <xref linkend="stmtdropnode"/> fera l'affaire.</para>
19
20 <para>Cela provoquera la suppression des triggers (en général ceux qui empêche la mise à jour
21   des données), la restauration des triggers <quote>originels</quote>,
22   la suppression du schéma utilisé par &slony1;, et l'arrêt du
23   processus <xref linkend="slon"/> lui-même.</para>
24
25 <para>La base de données sera alors disponible pour toute utilisation standard.
26 </para>
27
28 <para>Il s'agit d'une opération majeure, avec un potentiel de destruction de données
29   considérable; Assurez-vous que vous retirer le bon noeud !</para>
30
31 <para>L'opération échouera si il y a des noeuds abonnés au noeuds
32   que vous voulez retirer, ce qui constitue une petite sécurité contre
33   les erreurs.</para>
34
35 <para>La paragraphe <link linkend="faq17"> <envar>sl_log_1</envar> n'est pas purgée
36     </link> de la FAQ décrit des taches supplémentaires de maintenance que vous
37     devez effectuer sur <xref linkend="table.sl-confirm"/> si vous utilisez une
38     version antérieures à la version 1.0.5.</para></sect2>
39
40 <sect2><title>Retirer un ensemble de réplication</title>
41
42 <indexterm><primary>retirer un ensemble de réplication</primary></indexterm>
43
44 <para>Si vous souhaitez arrêter la réplication d'un ensemble de réplication particulier,
45   la commande <xref linkend="slonik"/> <xref linkend="stmtdropset"/> est faite pour vous.
46 </para>
47
48 <para>Comme avec <xref linkend="stmtdropnode"/>, cela provoque le retrait
49   des triggers &slony1; sur les tables et la restauration des triggers
50   <quote>originels</quote>.  La différence est que cela se produit sur
51   <emphasis>tous</emphasis> les noeuds du cluster, plutÃŽt que sur un seul.
52   Une autre différence est que cela ne nettoie pas les autres schémas du cluster,
53   car ils sont toujours utilisés.</para>
54
55 <para>Cette opération est nettement plus dangereuse que <xref
56 linkend="stmtdropnode"/>, car <emphasis>il n'y a pas</emphasis>
57   de <quote>sécurités</quote> équivalentes. Si vous demandez à
58   <xref linkend="stmtdropset"/> de retirer le <emphasis>mauvais</emphasis>
59   ensemble de réplication, il n'y a rien qui vous empêchera de réaliser
60   une opération pourrait avoir des effets <quote>malencontreux</quote>
61   sur les données et sur votre carriÚre. À manipuler avec précaution...</para>
62 </sect2>
63
64 <sect2><title>Désabonner un noeud d'un ensemble de réplication</title>
65
66 <indexterm><primary>désabonner un noeud d'un ensemble de réplication</primary></indexterm>
67
68 <para>L'opération <xref linkend="stmtunsubscribeset"/> est un peu moins
69   puissante que <xref linkend="stmtdropset"/> ou <xref
70 linkend="stmtdropnode"/>; elle implique la suppression des triggers &slony1; et
71   et la restauration des triggers <quote>originels</quote> sur un seul noeuds, pour
72   un seul ensemble de réplication.</para>
73
74 <para>Tout comme <xref linkend="stmtdropnode"/>, cette opération échouera
75   si un noeud est abonné à l'ensemble de réplication via le noeud
76   que vous voulez retirer.
77
78 <warning>
79 <para>Pour toutes les opérations ci-dessus, <quote>revenir en arriÚre</quote>
80   nécessitera une copie du noeud à partir d'un ensemble de données
81   <emphasis>complet</emphasis> en provenance d'un fournisseur. Le fait que les
82   données aient été répliquées encore récemment ne suffit pas;
83   &slony1; voudra des données reconstituées à partir de zéro.</para>
84 </warning>
85 </para>
86
87 </sect2>
88 <sect2><title> Retirer une table de la réplication</title>
89 <indexterm><primary>retirer une table de la réplication</primary></indexterm>
90
91 <sect3><title> En utilisant les outils altperl</title>
92
93 <para>
94 Si les outils <link linkend="altperl"> altperl </link> sont installés,
95 vous pouvez utiliser le script d'aide <link linkend="slonik-drop-table">
96 slonik_drop_table </link> pour supprimer une table dans un ensemble de réplication.
97 Lancez simplement <command>slonik_drop_table</command> sans arguments pour afficher
98 la méthode d'utilisation du script. AprÚs avoir retiré la table, vous devez également
99 la retire du fichier <filename>slon_tools.conf</filename>.
100 </para>
101
102 </sect3>
103 <sect3><title> En utilisant directement les commandes slonik</title>
104
105 <para>À partir de  &slony1; 1.0.5, il existe une commande Slonik <xref
106 linkend="stmtsetdroptable"/> qui permet de supprimer une table de la réplication
107   sans forcer l'utilisateur à supprimer la totalité de l'ensemble de réplication.
108 </para>
109
110 <para>Si vous utiliser une version antérieure, il y a une <quote>astuce</quote>
111 pour réaliser cela :</para>
112
113 <para>Vous pouvez réaliser cela <quote>à la main</quote> en trouvant l'identifiant
114   de la table dont vous voulez vous débarrassez, que vous pouvez trouver dans
115   <xref linkend="table.sl-table"/>, et exécuter les trois requêtes suivantes sur chaque hÃŽte :
116 <programlisting>
117   select _slonyschema.alterTableRestore(40);
118   select _slonyschema.tableDropKey(40);
119   delete from _slonyschema.sl_table where tab_id = 40;
120 </programlisting>
121 </para>
122
123 <para>Bien entendu, le nom du schéma dépend de celui qui a été défini pour le cluster
124   &slony1;.  L'identifiant de la table, dans ce cas 40, doit être remplacé par l'identifiant
125   de la table que vous souhaitez retirer.
126   </para>
127
128 <para>Vous devrez exécuter ces trois requêtes sur tous les noeuds, de préférence
129   en commençant par le noeud d'origine, afin que l'événement
130   se propage correctement. Réaliser cette opération avec une
131   commande <xref linkend="slonik"/> avec un nouvel événement
132   &slony1; permet de faire cela.  Soumettre les trois requêtes
133   en utilisant <xref linkend="stmtddlscript"/> permet cela également;
134   Se reporter au chapitre <xref linkend="ddlchanges"/> pour plus de détails.
135   Il est également possible de se connecter à chaque base de données
136   et de soumettre manuellement les requêtes.
137 </para>
138 </sect3>
139 </sect2>
140
141 <sect2><title>Retirer une séquence de la réplication</title>
142
143 <indexterm><primary>retirer une séquence de la réplication</primary></indexterm>
144
145 <para>À l'image de <xref linkend="stmtsetdroptable"/>, la version 1.0.5
146 introduit l'opération <xref linkend="stmtsetdropsequence"/>.</para>
147
148 <para>Si vous utilisez une version antérieure, voici les instructions pour
149   retirer des séquences:</para>
150
151 <para>Ci-dessous les données nécessaires pour supprimer les
152   séquence numérotées 93 and 59 :
153
154 <programlisting>
155 delete from _oxrsorg.sl_seqlog where seql_seqid in (93, 59);
156 delete from _oxrsorg.sl_sequence where seq_id in (93,59);
157 </programlisting>
158 </para>
159
160 <para> Ces deux requêtes doivent être soumises à tous les noeuds via
161 &funddlscript; / <xref linkend="stmtddlscript"/>, afin d'éliminer la
162 séquence partout en <quote>même temps</quote>. Elles peuvent également être
163 appliquées à la main sur chaque noeud.</para>
164 </sect2>
165 </sect1>
Note: See TracBrowser for help on using the browser.