File: mysqlrplshow.1

package info (click to toggle)
mysql-utilities 1.3.5-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 2,100 kB
  • ctags: 1,681
  • sloc: python: 19,938; makefile: 34
file content (501 lines) | stat: -rw-r--r-- 13,595 bytes parent folder | download
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
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
'\" t
.\"     Title: \fBmysqlrplshow\fR
.\"    Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\"      Date: 08/30/2013
.\"    Manual: MySQL Utilities
.\"    Source: MySQL 1.3.4
.\"  Language: English
.\"
.TH "\FBMYSQLRPLSHOW\FR" "1" "08/30/2013" "MySQL 1\&.3\&.4" "MySQL Utilities"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.\" mysqlrplshow
.\" utilities: mysqlrplshow
.\" scripts
.SH "NAME"
mysqlrplshow \- Show Slaves for Master Server
.SH "SYNOPSIS"
.HP \w'\fBmysqlrplshow\ [\fR\fB\fIoptions\fR\fR\fB]\fR\ 'u
\fBmysqlrplshow [\fR\fB\fIoptions\fR\fR\fB]\fR
.SH "DESCRIPTION"
.PP
This utility shows the replication slaves for a master\&. It prints a graph of the master and its slaves labeling each with the host name and port number\&.
.PP
You must specify the
\fB\-\-discover\-slaves\-login \fR
option to provide the user name and password to discover any slaves in the topology\&.
.PP
To explore the slaves for each client, use the
\fB\-\-recurse\fR
option\&. This causes the utility to connect to each slave found and attempt to determine whether it has any slaves\&. If slaves are found, the process continues until the slave is found in the list of servers serving as masters (a circular topology)\&. The graph displays the topology with successive indents\&. A notation is made for circular topologies\&.
.PP
If you use the
\fB\-\-recurse\fR
option, the utility attempts to connect to the slaves using the user name and password provided for the master\&. By default, if the connection attempt fails, the utility throws an error and stops\&. To change this behavior, use the
\fB\-\-prompt\fR
option, which permits the utility to prompt for the user name and password for each slave that fails to connect\&. You can also use the
\fB\-\-num\-retries=n\fR
option to reattempt a failed connection \*(Aqn\*(Aq times before the utility fails\&.
.PP
An example graph for a typical topology with relay slaves is shown here:
.sp
.if n \{\
.RS 4
.\}
.nf
# Replication Topology Graph::
localhost:3311 (MASTER)
   |
   +\-\-\- localhost:3310 \- (SLAVE)
   |
   +\-\-\- localhost:3312 \- (SLAVE + MASTER)
       |
       +\-\-\- localhost:3313 \- (SLAVE)
.fi
.if n \{\
.RE
.\}
.PP
MASTER,
SLAVE, and
SLAVE+MASTER
indicate that a server is a master only, slave only, and both slave and master, respectively\&.
.PP
A circular replication topology is shown like this, where
<\-\->
indicates circularity:
.sp
.if n \{\
.RS 4
.\}
.nf
# Replication Topology Graph
localhost:3311 (MASTER)
   |
   +\-\-\- localhost:3312 \- (SLAVE + MASTER)
       |
       +\-\-\- localhost:3313 \- (SLAVE + MASTER)
           |
           +\-\-\- localhost:3311 <\-\-> (SLAVE)
.fi
.if n \{\
.RE
.\}
.PP
To produce a column list in addition to the graph, specify the
\fB\-\-show\-list\fR
option\&. In this case, to specify how to display the list, use one of the following values with the
\fB\-\-format\fR
option:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBgrid\fR
(default)
.sp
Display output in grid or table format like that of the
\fBmysql\fR
monitor\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBcsv\fR
.sp
Display output in comma\-separated values format\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBtab\fR
.sp
Display output in tab\-separated format\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBvertical\fR
.sp
Display output in single\-column format like that of the
\eG
command for the
\fBmysql\fR
monitor\&.
.RE
.PP
The utility uses of the
\fBSHOW SLAVE HOSTS\fR
statement to determine which slaves the master has\&. If you want to use the
\fB\-\-recurse\fR
option, slaves should have been started with the
\-\-report\-host
and
\-\-report\-port
options set to their actual host name and port number or the utility may not be able to connect to the slaves to determine their own slaves\&.
      OPTIONS
.PP
\fBmysqlrplshow\fR
accepts the following command\-line options:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-help
.sp
Display a help message and exit\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-discover\-slaves\-login=<slave\-login>
.sp
Supply the user and password in the form <user>[:<passwd>] or <login\-path> for discovering slaves and relay slaves in the topology\&. For example, \-\-discover=joe:secret will use \*(Aqjoe\*(Aq as the user and \*(Aqsecret\*(Aq as the password for each discovered slave\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-format=<format>, \-f<format>
.sp
Specify the display format for column list output\&. Permitted format values are
\fBgrid\fR,
\fBcsv\fR,
\fBtab\fR, and
\fBvertical\fR\&. The default is
\fBgrid\fR\&. This option applies only if
\fB\-\-show\-list\fR
is given\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-master=<source>
.sp
Connection information for the master server in the format: <\fIuser\fR>[:<\fIpasswd\fR>]@<\fIhost\fR>[:<\fIport\fR>][:<\fIsocket\fR>] or <\fIlogin\-path\fR>[:<\fIport\fR>][:<\fIsocket\fR>]\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-max\-depth=<N>
.sp
The maximum recursion depth\&. This option is valid only if
\fB\-\-recurse\fR
is given\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-num\-retries=<num_retries>, \-n<num_retries>
.sp
The number of retries permitted for failed slave login attempts\&. This option is valid only if
\fB\-\-prompt\fR
is given\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-prompt, \-p
.sp
Prompt for the slave user and password if different from the master user and password\&.
.sp
If you give this option, the utility sets
\fB\-\-num\-retries\fR
to 1 if that option is not set explicitly\&. This ensures at least one attempt to retry and prompt for the user name and password should a connection fail\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-quiet, \-q
.sp
Turn off all messages for quiet execution\&. This option does not suppress errors or warnings\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-recurse, \-r
.sp
Traverse the list of slaves to find additional master/slave connections\&. User this option to map a replication topology\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-show\-list, \-l
.sp
Display a column list of the topology\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-verbose, \-v
.sp
Specify how much information to display\&. If this option is used, the IO thread status of each slave is also displayed\&. Use this option multiple times to increase the amount of information\&. For example,
\fB\-v\fR
= verbose,
\fB\-vv\fR
= more verbose,
\fB\-vvv\fR
= debug\&. If you use \-vvv, the output will contain the state of the IO and SQL threads for each slave\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\-\-version
.sp
Display version information and exit\&.
.RE
      NOTES
.PP
The login user must have the
\fBREPLICATE SLAVE\fR
and
\fBREPLICATE CLIENT\fR
privileges to successfully execute this utility\&. Specifically, the login user must have appropriate permissions to execute
\fBSHOW SLAVE STATUS\fR,
\fBSHOW MASTER STATUS\fR, and
\fBSHOW SLAVE HOSTS\fR\&.
.PP
For the
\fB\-\-format\fR
option, the permitted values are not case sensitive\&. In addition, values may be specified as any unambiguous prefix of a valid value\&. For example,
\fB\-\-format=g\fR
specifies the grid format\&. An error occurs if a prefix matches more than one valid value\&.
.PP
Mixing IP and hostnames is not recommended\&. The replication\-specific utilities will attempt to compare hostnames and IP addresses as aliases for checking slave connectivity to the master\&. However, if your installation does not support reverse name lookup, the comparison could fail\&. Without the ability to do a reverse name lookup, the replication utilities could report a false negative that the slave is (not) connected to the master\&.
.PP
For example, if you setup replication using MASTER_HOST=ubuntu\&.net on the slave and later connect to the slave with mysqlrplcheck and have the master specified as \-\-master=192\&.168\&.0\&.6 using the valid IP address for ubuntu\&.net, you must have the ability to do a reverse name lookup to compare the IP (192\&.168\&.0\&.6) and the hostname (ubuntu\&.net) to determine if they are the same machine\&.
.PP
The path to the MySQL client tools should be included in the PATH environment variable in order to use the authentication mechanism with login\-paths\&. This will allow the utility to use the my_print_defaults tools which is required to read the login\-path values from the login configuration file (\&.mylogin\&.cnf)\&.
      EXAMPLES
.PP
To show the slaves for a master running on port 3311 on the local host, use the following command:
.sp
.if n \{\
.RS 4
.\}
.nf
$ mysqlrplshow  \-\-master=root@localhost:3311 \-\-discover\-slaves\-login=root
# master on localhost: \&.\&.\&. connected\&.
# Finding slaves for master: localhost:3311
# Replication Topology Graph
localhost:3311 (MASTER)
   |
   +\-\-\- localhost:3310 \- (SLAVE)
   |
   +\-\-\- localhost:3312 \- (SLAVE)
.fi
.if n \{\
.RE
.\}
.PP
As shown in the example, you must provide valid login information for the master\&.
.PP
To show additional information about the IO thread status (to confirm if the slaves are really connected to the master) use the option
\fB\-\-verbose\fR:
.sp
.if n \{\
.RS 4
.\}
.nf
$ mysqlrplshow  \-\-master=root@localhost:3311 \-\-discover\-slaves\-login=root \-\-verbose
# master on localhost: \&.\&.\&. connected\&.
# Finding slaves for master: localhost:3311
# Replication Topology Graph
localhost:3311 (MASTER)
   |
   +\-\-\- localhost:3310 [IO: Yes, SQL: Yes] \- (SLAVE)
   |
   +\-\-\- localhost:3312 [IO: Yes, SQL: Yes] \- (SLAVE)
.fi
.if n \{\
.RE
.\}
.PP
To show the full replication topology of a master running on the local host, use the following command:
.sp
.if n \{\
.RS 4
.\}
.nf
$ mysqlrplshow  \-\-master=root@localhost:3311 \-\-recurse \-\-discover\-slaves\-login=root
# master on localhost: \&.\&.\&. connected\&.
# Finding slaves for master: localhost:3311
# Replication Topology Graph
localhost:3311 (MASTER)
   |
   +\-\-\- localhost:3310 \- (SLAVE)
   |
   +\-\-\- localhost:3312 \- (SLAVE + MASTER)
       |
       +\-\-\- localhost:3313 \- (SLAVE)
.fi
.if n \{\
.RE
.\}
.PP
To show the full replication topology of a master running on the local host, prompting for the user name and password for slaves that do not have the same user name and password credentials as the master, use the following command:
.sp
.if n \{\
.RS 4
.\}
.nf
$ mysqlrplshow \-\-recurse \-\-prompt \-\-num\-retries=1 \e
  \-\-master=root@localhost:3331 \-\-discover\-slaves\-login=root
Server localhost:3331 is running on localhost\&.
# master on localhost: \&.\&.\&. connected\&.
# Finding slaves for master: localhost:3331
Server localhost:3332 is running on localhost\&.
# master on localhost: \&.\&.\&. FAILED\&.
Connection to localhost:3332 has failed\&.
Please enter the following information to connect to this server\&.
User name: root
Password:
# master on localhost: \&.\&.\&. connected\&.
# Finding slaves for master: localhost:3332
Server localhost:3333 is running on localhost\&.
# master on localhost: \&.\&.\&. FAILED\&.
Connection to localhost:3333 has failed\&.
Please enter the following information to connect to this server\&.
User name: root
Password:
# master on localhost: \&.\&.\&. connected\&.
# Finding slaves for master: localhost:3333
Server localhost:3334 is running on localhost\&.
# master on localhost: \&.\&.\&. FAILED\&.
Connection to localhost:3334 has failed\&.
Please enter the following information to connect to this server\&.
User name: root
Password:
# master on localhost: \&.\&.\&. connected\&.
# Finding slaves for master: localhost:3334
# Replication Topology Graph
localhost:3331 (MASTER)
   |
   +\-\-\- localhost:3332 \- (SLAVE)
   |
   +\-\-\- localhost:3333 \- (SLAVE + MASTER)
       |
       +\-\-\- localhost:3334 \- (SLAVE)
.fi
.if n \{\
.RE
.\}
.SH "COPYRIGHT"
.br
.SH "SEE ALSO"
For more information, please refer to the MySQL Utilities section
of the MySQL Workbench Reference Manual, which is available online
at http://dev.mysql.com/doc/workbench/en/.
.SH AUTHOR
Oracle Corporation (http://dev.mysql.com/).