File: reppragma.html

package info (click to toggle)
db5.3 5.3.28-9
  • links: PTS, VCS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 163,292 kB
  • sloc: ansic: 448,411; java: 111,824; tcl: 80,544; sh: 44,326; cs: 33,697; cpp: 21,604; perl: 14,557; xml: 10,799; makefile: 4,104; yacc: 1,003; awk: 965; sql: 801; erlang: 342; python: 216; php: 24; asm: 14
file content (289 lines) | stat: -rw-r--r-- 12,700 bytes parent folder | download | duplicates (8)
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Replication PRAGMAs</title>
    <link rel="stylesheet" href="gettingStarted.css" type="text/css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
    <link rel="start" href="index.html" title="Getting Started with the Oracle Berkeley DB SQL APIs" />
    <link rel="up" href="sqlrep.html" title="Chapter 4. Using Replication with the SQL API" />
    <link rel="prev" href="sqlrep.html" title="Chapter 4. Using Replication with the SQL API" />
    <link rel="next" href="repstatistics.html" title="Displaying Replication Statistics" />
  </head>
  <body>
    <div xmlns="" class="navheader">
      <div class="libver">
        <p>Library Version 11.2.5.3</p>
      </div>
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">Replication PRAGMAs</th>
        </tr>
        <tr>
          <td width="20%" align="left"><a accesskey="p" href="sqlrep.html">Prev</a> </td>
          <th width="60%" align="center">Chapter 4. Using Replication with the SQL API</th>
          <td width="20%" align="right"> <a accesskey="n" href="repstatistics.html">Next</a></td>
        </tr>
      </table>
      <hr />
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title" style="clear: both"><a id="reppragma"></a>Replication PRAGMAs</h2>
          </div>
        </div>
      </div>
      <div class="toc">
        <dl>
          <dt>
            <span class="sect2">
              <a href="reppragma.html#pragma_replication">PRAGMA replication</a>
            </span>
          </dt>
          <dt>
            <span class="sect2">
              <a href="reppragma.html#pragma_replication_initial_master">PRAGMA replication_initial_master</a>
            </span>
          </dt>
          <dt>
            <span class="sect2">
              <a href="reppragma.html#pragma_replication_local_site">PRAGMA replication_local_site</a>
            </span>
          </dt>
          <dt>
            <span class="sect2">
              <a href="reppragma.html#pragma_replication_remote_site">PRAGMA replication_remote_site</a>
            </span>
          </dt>
          <dt>
            <span class="sect2">
              <a href="reppragma.html#pragma_replication_remove_site">PRAGMA replication_remove_site</a>
            </span>
          </dt>
          <dt>
            <span class="sect2">
              <a href="reppragma.html#pragma_replication_verbose_output">PRAGMA replication_verbose_output</a>
            </span>
          </dt>
          <dt>
            <span class="sect2">
              <a href="reppragma.html#pragma_replication_verbose_file">PRAGMA replication_verbose_file</a>
            </span>
          </dt>
        </dl>
      </div>
      <p>
                To control replication when using the Berkeley DB SQL
                interface, you use the following PRAGMAs. For an example of
                how to use these, see
                <a class="xref" href="rep_usageexamples.html" title="Replication Usage Examples">Replication Usage Examples</a>.
            </p>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="pragma_replication"></a>PRAGMA replication</h3>
            </div>
          </div>
        </div>
        <pre class="programlisting">PRAGMA replication=ON|OFF </pre>
        <p>
                    Enables the local environment to participate in
                    replication. 
                </p>
        <p>
                    Before invoking this PRAGMA for a brand new
                    database (one that has never been opened), you
                    must invoke the
                    <code class="literal">replication_local_site</code> PRAGMA
                    and then either the
                    <code class="literal">replication_initial_master</code> or
                    the <code class="literal">replication_remote_site</code>
                    PRAGMA. These actions define the way this site fits
                    into the replication group.
                </p>
        <p>
                    If you are enabling replication for an existing
                    database, it must become the initial master for a
                    new replication group. You must invoke the
                    <code class="literal">replication_local_site</code> PRAGMA
                    followed by the
                    <code class="literal">replication_initial_master</code>
                    PRAGMA before enabling replication. 
                </p>
        <p>
                    If you use this PRAGMA to turn off replication,
                    then replication is completely disabled for the
                    environment. In order to enable replication again,
                    you follow the procedure used to enable replication
                    on an existing database; that is, invoke the
                    <code class="literal">replication_local_site</code> PRAGMA
                    followed by the
                    <code class="literal">replication_initial_master</code>
                    PRAGMA, followed by 
                    <code class="literal">PRAGMA replication=ON</code>.
                </p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="pragma_replication_initial_master"></a>PRAGMA replication_initial_master</h3>
            </div>
          </div>
        </div>
        <pre class="programlisting">PRAGMA replication_initial_master=ON|OFF </pre>
        <p>
                    Causes the local environment to start up as a
                    master site. This PRAGMA must be used once and only
                    once in the replicated lifetime of a BDB SQL
                    environment.
                </p>
        <p>
                    This PRAGMA is usually invoked for the first site in a
                    new replication group before the
                    <code class="literal">replication</code> PRAGMA is invoked
                    and before BDB SQL initially creates the underlying
                    BDB environment for a SQL database. Starting
                    replication on the initial master site establishes
                    the new replication group so that other sites can
                    join it.
                </p>
        <p>
                    However, you must call this PRAGMA 
                    when enabling replication for a database that
                    already exists. Doing so causes the existing
                    database to become the replication master for a new
                    replication group.
                </p>
        <p>
                    Note that subsequent election activity can cause
                    other sites in the replication group to become
                    master. Do not assume that the initial master site
                    will remain master indefinitely, or that it will
                    rejoin the replication group as master after a
                    shutdown.
                </p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="pragma_replication_local_site"></a>PRAGMA replication_local_site</h3>
            </div>
          </div>
        </div>
        <pre class="programlisting">PRAGMA replication_local_site="hostname:port" </pre>
        <p>
                    Sets the local site information for replication.
                </p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="pragma_replication_remote_site"></a>PRAGMA replication_remote_site</h3>
            </div>
          </div>
        </div>
        <pre class="programlisting">PRAGMA replication_remote_site="hostname:port" </pre>
        <p>
                    Sets information about a remote helper site in the
                    replication group.
                </p>
        <p>
                    This PRAGMA is needed when a site first joins an
                    existing replication group to specify a site that
                    is already in the replication group. It must be
                    invoked before the <code class="literal">replication</code>
                    PRAGMA is invoked. This PRAGMA is not needed on
                    the initial master site or when restarting a site
                    that is already a member of the replication group.
                    However, supplying this PRAGMA in those situations
                    does no harm.
                </p>
        <p>
                    Note that the information provided to this PRAGMA
                    can be superseded by normal replication activity 
                    over the course of the environment's lifetime.
                </p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="pragma_replication_remove_site"></a>PRAGMA replication_remove_site</h3>
            </div>
          </div>
        </div>
        <pre class="programlisting">PRAGMA replication_remove_site="hostname:port" </pre>
        <p>
                    Removes the specified site from the replication group.
                    Use this PRAGMA if you truly want to remove the
                    site permanently from the group. It is not
                    desirable to call this PRAGMA if a site has been
                    temporarily shut down or disconnected from the rest
                    of the replication group.
                </p>
        <p>
                    Removing a site from the replication group means
                    that the site is no longer counted towards the
                    total number of sites belonging to the group. This
                    is important when the replication group requires
                    knowledge about whether a quorum has been reached
                    (such as when, for example, elections are held).
                </p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="pragma_replication_verbose_output"></a>PRAGMA replication_verbose_output</h3>
            </div>
          </div>
        </div>
        <pre class="programlisting">PRAGMA replication_verbose_output=ON|OFF </pre>
        <p>
                    If set to TRUE, additional logging information
                    specifically related to replication is created.
                </p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="pragma_replication_verbose_file"></a>PRAGMA replication_verbose_file</h3>
            </div>
          </div>
        </div>
        <pre class="programlisting">PRAGMA replication_verbose_file="filename" </pre>
        <p>
                    Indicates that verbose replication output should be
                    sent to the specified file, as opposed to STDOUT.
                </p>
      </div>
    </div>
    <div class="navfooter">
      <hr />
      <table width="100%" summary="Navigation footer">
        <tr>
          <td width="40%" align="left"><a accesskey="p" href="sqlrep.html">Prev</a> </td>
          <td width="20%" align="center">
            <a accesskey="u" href="sqlrep.html">Up</a>
          </td>
          <td width="40%" align="right"> <a accesskey="n" href="repstatistics.html">Next</a></td>
        </tr>
        <tr>
          <td width="40%" align="left" valign="top">Chapter 4. Using Replication with the SQL API </td>
          <td width="20%" align="center">
            <a accesskey="h" href="index.html">Home</a>
          </td>
          <td width="40%" align="right" valign="top"> Displaying Replication Statistics</td>
        </tr>
      </table>
    </div>
  </body>
</html>