mirror of
https://github.com/mongodb/mongo.git
synced 2024-11-28 16:24:56 +01:00
347 lines
11 KiB
Groff
347 lines
11 KiB
Groff
.TH "MONGOOPLOG" "1" "March 14, 2013" "2.2.3" "mongodb-manual"
|
|
.SH NAME
|
|
mongooplog \- MongoDB
|
|
.
|
|
.nr rst2man-indent-level 0
|
|
.
|
|
.de1 rstReportMargin
|
|
\\$1 \\n[an-margin]
|
|
level \\n[rst2man-indent-level]
|
|
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
-
|
|
\\n[rst2man-indent0]
|
|
\\n[rst2man-indent1]
|
|
\\n[rst2man-indent2]
|
|
..
|
|
.de1 INDENT
|
|
.\" .rstReportMargin pre:
|
|
. RS \\$1
|
|
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
|
|
. nr rst2man-indent-level +1
|
|
.\" .rstReportMargin post:
|
|
..
|
|
.de UNINDENT
|
|
. RE
|
|
.\" indent \\n[an-margin]
|
|
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
.nr rst2man-indent-level -1
|
|
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
|
..
|
|
.\" Man page generated from reStructuredText.
|
|
.
|
|
.sp
|
|
New in version 2.2.
|
|
.SH SYNOPSIS
|
|
.sp
|
|
\fI\%mongooplog\fP is a simple tool that polls operations from
|
|
the \fIreplication\fP \fIoplog\fP of a remote server, and applies
|
|
them to the local server. This capability supports certain classes of
|
|
real\-time migrations that require that the source server remain online
|
|
and in operation throughout the migration process.
|
|
.sp
|
|
Typically this command will take the following form:
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongooplog \-\-from mongodb0.example.net \-\-host mongodb1.example.net
|
|
.ft P
|
|
.fi
|
|
.sp
|
|
This command copies oplog entries from the \fBmongod\fP instance
|
|
running on the host \fBmongodb0.example.net\fP and duplicates
|
|
operations to the host \fBmongodb1.example.net\fP. If you do not need
|
|
to keep the \fI\%--from\fP host running during
|
|
the migration, consider using \fBmongodump\fP and
|
|
\fBmongorestore\fP or another \fBbackup\fP operation, which may be better suited to
|
|
your operation.
|
|
.IP Note
|
|
If the \fBmongod\fP instance specified by the \fI\%--from\fP
|
|
argument is running with \fBauthentication\fP, then
|
|
\fI\%mongooplog\fP will not be able to copy oplog entries.
|
|
.RE
|
|
.IP "See also"
|
|
.sp
|
|
\fBmongodump\fP, \fBmongorestore\fP,
|
|
"\fB/administration/backups\fP", "\fIOplog Internals Overview\fP", and "\fIReplica Set Oplog Sizing\fP".
|
|
.RE
|
|
.SH OPTIONS
|
|
.INDENT 0.0
|
|
.TP
|
|
.B mongooplog
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-help
|
|
Returns a basic help and usage text.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-verbose, \-v
|
|
Increases the amount of internal reporting returned on the command
|
|
line. Increase the verbosity with the \fB\-v\fP form by including the
|
|
option multiple times, (e.g. \fB\-vvvvv\fP.)
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-version
|
|
Returns the version of the \fI\%mongooplog\fP utility.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-host <hostname><:port>, \-h
|
|
Specifies a resolvable hostname for the \fBmongod\fP instance
|
|
to which \fI\%mongooplog\fP will apply \fIoplog\fP operations
|
|
retrieved from the serve specified by the \fI\%--from\fP
|
|
option.
|
|
.sp
|
|
\fI\%mongooplog\fP assumes that all target \fBmongod\fP
|
|
instances are accessible by way of port \fB27017\fP. You may,
|
|
optionally, declare an alternate port number as part of the
|
|
hostname argument.
|
|
.sp
|
|
You can always connect directly to a single \fBmongod\fP
|
|
instance by specifying the host and port number directly.
|
|
.sp
|
|
To connect to a replica set, you can specify the replica set seed
|
|
name, and a seed list of set members, in the following format:
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
<replica_set_name>/<hostname1><:port>,<hostname2:<port>,...
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-port
|
|
Specifies the port number of the \fBmongod\fP instance where
|
|
\fI\%mongooplog\fP will apply \fIoplog\fP entries. Only
|
|
specify this option if the MongoDB instance that you wish to
|
|
connect to is not running on the standard port. (i.e. \fB27017\fP)
|
|
You may also specify a port number using the \fI\%--host\fP command.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-ipv6
|
|
Enables IPv6 support that allows \fI\%mongooplog\fP to connect
|
|
to the MongoDB instance using an IPv6 network. All MongoDB programs
|
|
and processes, including \fI\%mongooplog\fP, disable IPv6
|
|
support by default.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-ssl
|
|
New in version 2.4: MongoDB added support for SSL connections to \fBmongod\fP
|
|
instances in mongooplog.
|
|
.IP Note
|
|
SSL support in mongooplog is not compiled into the default
|
|
distribution of MongoDB. See \fB/administration/ssl\fP for more
|
|
information on SSL and MongoDB.
|
|
.sp
|
|
Additionally, mongooplog does not support connections to
|
|
\fBmongod\fP instances that require client certificate
|
|
validation.
|
|
.RE
|
|
.sp
|
|
Allows \fI\%mongooplog\fP to connect to \fBmongod\fP
|
|
instance over an SSL connection.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-username <username>, \-u <username>
|
|
Specifies a username to authenticate to the MongoDB instance, if
|
|
your database requires authentication. Use in conjunction with the
|
|
\fI\%--password\fP option to supply a
|
|
password.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-password <password>, \-p <password>
|
|
Specifies a password to authenticate to the MongoDB instance. Use
|
|
in conjunction with the \fI\%--username\fP
|
|
option to supply a username.
|
|
.sp
|
|
If you specify a \fI\%--username\fP
|
|
without the \fI\%--password\fP option, \fI\%mongooplog\fP will
|
|
prompt for a password interactively.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-authenticationDatabase <dbname>
|
|
New in version 2.4.
|
|
.sp
|
|
Specifies the database that holds the user\(aqs (e.g
|
|
\fI\%--username\fP) credentials.
|
|
.sp
|
|
By default, \fI\%mongooplog\fP assumes that the database specified to the
|
|
\fI\-\-db\fP argument holds the user\(aqs credentials, unless you
|
|
specify \fI\%--authenticationDatabase\fP.
|
|
.sp
|
|
See \fBuserSource\fP,
|
|
\fB/reference/privilege\-documents\fP and
|
|
\fB/reference/user\-privileges\fP for more information about
|
|
delegated authentication in MongoDB.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-authenticationMechanism <name>
|
|
New in version 2.4.
|
|
.sp
|
|
Specifies the authentication mechanism. By default, the
|
|
authentication mechanism is \fBMONGODB\-CR\fP, which is the MongoDB
|
|
challenge/response authentication mechanism. In the MongoDB Subscriber Edition,
|
|
\fI\%mongooplog\fP also includes support for \fBGSSAPI\fP to handle
|
|
Kerberos authentication.
|
|
.sp
|
|
See \fB/tutorial/control\-access\-to\-mongodb\-with\-kerberos\-authentication\fP
|
|
for more information about Kerberos authentication.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-dbpath <path>
|
|
Specifies a directory, containing MongoDB data files, to which
|
|
\fI\%mongooplog\fP will apply operations from the \fIoplog\fP
|
|
of the database specified with the \fI\%--from\fP
|
|
option. When used, the \fI\%--dbpath\fP option enables
|
|
\fBmongo\fP to attach directly to local data files and write
|
|
data without a running \fBmongod\fP instance. To run with
|
|
\fI\%--dbpath\fP, \fI\%mongooplog\fP needs to restrict access
|
|
to the data directory: as a result, no \fBmongod\fP can be
|
|
access the same path while the process runs.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-directoryperdb
|
|
Use the \fI\%--directoryperdb\fP in conjunction with the
|
|
corresponding option to \fBmongod\fP. This option allows
|
|
\fI\%mongooplog\fP to write to data files organized with each
|
|
database located in a distinct directory. This option is only
|
|
relevant when specifying the \fI\%--dbpath\fP option.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-journal
|
|
Allows \fI\%mongooplog\fP operations to use the durability
|
|
\fIjournal\fP to ensure that the data files will
|
|
remain in a consistent state during the writing process. This
|
|
option is only relevant when specifying the \fI\%--dbpath\fP
|
|
option.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-fields [field1[,field2]], \-f [field1[,field2]]
|
|
Specify a field or number fields to constrain which data
|
|
\fI\%mongooplog\fP will migrate. All other fields will be
|
|
\fIexcluded\fP from the migration. Comma separate a list of fields to
|
|
limit the applied fields.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-fieldFile <file>
|
|
As an alternative to "\fI\%--fields\fP" the
|
|
\fI\%--fieldFile\fP option allows you to specify a file
|
|
(e.g. \fB<file>\fP) that holds a list of field names to \fIinclude\fP in
|
|
the migration. All other fields will be \fIexcluded\fP from the
|
|
migration. Place one field per line.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-seconds <number>, \-s <number>
|
|
Specify a number of seconds of operations for \fI\%mongooplog\fP
|
|
to pull from the \fI\%remote host\fP. Unless
|
|
specified the default value is \fB86400\fP seconds, or 24 hours.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-from <host[:port]>
|
|
Specify the host for \fI\%mongooplog\fP to retrieve \fIoplog\fP
|
|
operations from. \fI\%mongooplog\fP \fIrequires\fP this
|
|
option.
|
|
.sp
|
|
Unless you specify the \fI\%--host\fP option,
|
|
\fI\%mongooplog\fP will apply the operations collected with this
|
|
option to the oplog of the \fBmongod\fP instance running on
|
|
the localhost interface connected to port \fB27017\fP.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-oplogns <namespace>
|
|
Specify a namespace in the \fI\%--from\fP
|
|
host where the oplog resides. The default value is
|
|
\fBlocal.oplog.rs\fP, which is the where \fIreplica set\fP members
|
|
store their operation log. However, if you\(aqve copied \fIoplog\fP
|
|
entries into another database or collection, use this option to
|
|
copy oplog entries stored in another location.
|
|
.sp
|
|
\fINamespaces\fP take the form of
|
|
\fB[database].[collection]\fP.
|
|
.UNINDENT
|
|
.SS Usage
|
|
.sp
|
|
Consider the following prototype \fI\%mongooplog\fP command:
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongooplog \-\-from mongodb0.example.net \-\-host mongodb1.example.net
|
|
.ft P
|
|
.fi
|
|
.sp
|
|
Here, entries from the \fIoplog\fP of the \fBmongod\fP running
|
|
on port \fB27017\fP. This only pull entries from the last 24 hours.
|
|
.sp
|
|
In the next command, the parameters limit this operation to only apply
|
|
operations to the database \fBpeople\fP in the collection \fBusage\fP on
|
|
the target host (i.e. \fBmongodb1.example.net\fP):
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongooplog \-\-from mongodb0.example.net \-\-host mongodb1.example.net \-\-database people \-\-collection usage
|
|
.ft P
|
|
.fi
|
|
.sp
|
|
This operation only applies oplog entries from the last 24 hours. Use
|
|
the \fI\%--seconds\fP argument to capture a
|
|
greater or smaller amount of time. Consider the following example:
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongooplog \-\-from mongodb0.example.net \-\-seconds 172800
|
|
.ft P
|
|
.fi
|
|
.sp
|
|
In this operation, \fI\%mongooplog\fP captures 2 full days of
|
|
operations. To migrate 12 hours of \fIoplog\fP entries, use the
|
|
following form:
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongooplog \-\-from mongodb0.example.net \-\-seconds 43200
|
|
.ft P
|
|
.fi
|
|
.sp
|
|
For the previous two examples, \fI\%mongooplog\fP migrates entries
|
|
to the \fBmongod\fP process running on the localhost interface
|
|
connected to the \fB27017\fP port. \fI\%mongooplog\fP can also
|
|
operate directly on MongoDB\(aqs data files if no \fBmongod\fP is
|
|
running on the \fItarget\fP host. Consider the following example:
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongooplog \-\-from mongodb0.example.net \-\-dbpath /srv/mongodb \-\-journal
|
|
.ft P
|
|
.fi
|
|
.sp
|
|
Here, \fI\%mongooplog\fP imports \fIoplog\fP operations from the
|
|
\fBmongod\fP host connected to port \fB27017\fP. This migrates
|
|
operations to the MongoDB data files stored in the \fB/srv/mongodb\fP
|
|
directory. Additionally \fI\%mongooplog\fP will use the durability
|
|
\fIjournal\fP to ensure that the data files remain in a consistent
|
|
state.
|
|
.SH AUTHOR
|
|
MongoDB Documentation Project
|
|
.SH COPYRIGHT
|
|
2011-2013, 10gen, Inc.
|
|
.\" Generated by docutils manpage writer.
|
|
.
|