Provided by: mongodb-clients_2.6.10-0ubuntu1_amd64 bug

NAME

       mongooplog - MongoDB

       New in version 2.2.

SYNOPSIS

       mongooplog  is  a simple tool that polls operations from the replication oplog 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.

       Typically this command will take the following form:

       mongooplog  --from mongodb0.example.net --host mongodb1.example.net

       This  command  copies  oplog  entries  from  the  mongod  instance  running  on  the  host
       mongodb0.example.net and duplicates operations to the host mongodb1.example.net. If you do
       not need to keep the --from host running during the migration,  consider  using  mongodump
       and  mongorestore  or  another  backup  operation,  which  may  be  better  suited to your
       operation.

       Note   If  the  mongod  instance  specified  by  the  --from  argument  is  running   with
              authentication, then mongooplog will not be able to copy oplog entries.

       See also

              mongodump, mongorestore, "/administration/backups", "Oplog Internals Overview", and
              "Replica Set Oplog Sizing".

OPTIONS

       mongooplog

       --help Returns a basic help and usage text.

       --verbose, -v
              Increases the amount of internal reporting returned on the command  line.  Increase
              the  verbosity  with  the  -v  form  by  including the option multiple times, (e.g.
              -vvvvv.)

       --version
              Returns the version of the mongooplog utility.

       --host <hostname><:port>, -h
              Specifies a resolvable hostname for the mongod instance to  which  mongooplog  will
              apply oplog operations retrieved from the serve specified by the --from option.

              mongooplog  assumes that all target  mongod instances are accessible by way of port
              27017. You may, optionally, declare  an  alternate  port  number  as  part  of  the
              hostname argument.

              You  can always connect directly to a single mongod instance by specifying the host
              and port number directly.

              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:

              <replica_set_name>/<hostname1><:port>,<hostname2:<port>,...

       --port Specifies  the port number of the mongod instance where mongooplog will apply oplog
              entries. Only specify this option if the MongoDB instance that you wish to  connect
              to  is  not  running on the standard port. (i.e. 27017) You may also specify a port
              number using the --host command.

       --ipv6 Enables IPv6 support that allows mongooplog to  connect  to  the  MongoDB  instance
              using  an  IPv6  network. All MongoDB programs and processes, including mongooplog,
              disable IPv6 support by default.

       --ssl  New in version 2.4: MongoDB added support for SSL connections to  mongod  instances
              in mongooplog.

       Note   SSL support in mongooplog is not compiled into the default distribution of MongoDB.
              See /administration/ssl for more information on SSL and MongoDB.

              Additionally, mongooplog does not support  connections  to  mongod  instances  that
              require client certificate validation.

       Allows mongooplog to connect to mongod instance over an SSL connection.

       --username <username>, -u <username>
              Specifies  a  username  to  authenticate  to the MongoDB instance, if your database
              requires authentication. Use in conjunction with the --password option to supply  a
              password.

       --password <password>, -p <password>
              Specifies  a  password  to authenticate to the MongoDB instance. Use in conjunction
              with the --username option to supply a username.

              If you specify a --username without the --password option, mongooplog  will  prompt
              for a password interactively.

       --authenticationDatabase <dbname>
              New in version 2.4.

              Specifies the database that holds the user's (e.g --username) credentials.

              By  default,  mongooplog  assumes  that the database specified to the --db argument
              holds the user's credentials, unless you specify --authenticationDatabase.

              See userSource, /reference/privilege-documents and  /reference/user-privileges  for
              more information about delegated authentication in MongoDB.

       --authenticationMechanism <name>
              New in version 2.4.

              Specifies the authentication mechanism. By default, the authentication mechanism is
              MONGODB-CR, which is the MongoDB challenge/response  authentication  mechanism.  In
              the  MongoDB  Subscriber  Edition,  mongooplog  also includes support for GSSAPI to
              handle Kerberos authentication.

              See   /tutorial/control-access-to-mongodb-with-kerberos-authentication   for   more
              information about Kerberos authentication.

       --dbpath <path>
              Specifies  a  directory,  containing  MongoDB  data files, to which mongooplog will
              apply operations from the oplog of the database specified with the  --from  option.
              When used, the --dbpath option enables mongo to attach directly to local data files
              and write data without a running mongod instance. To run with --dbpath,  mongooplog
              needs  to  restrict  access  to  the  data directory: as a result, no mongod can be
              access the same path while the process runs.

       --directoryperdb
              Use the --directoryperdb in conjunction with the corresponding  option  to  mongod.
              This  option  allows mongooplog to write to data files organized with each database
              located in a distinct directory. This option is only relevant when  specifying  the
              --dbpath option.

       --journal
              Allows  mongooplog operations to use the durability journal to ensure that the data
              files will remain in a consistent state during the writing process. This option  is
              only relevant when specifying the --dbpath option.

       --fields [field1[,field2]], -f [field1[,field2]]
              Specify  a  field or number fields to constrain which data mongooplog will migrate.
              All other fields will be excluded from the migration.  Comma  separate  a  list  of
              fields to limit the applied fields.

       --fieldFile <file>
              As an alternative to "--fields" the --fieldFile option allows you to specify a file
              (e.g. <file>) that holds a list of field names to include  in  the  migration.  All
              other fields will be excluded from the migration. Place one field per line.

       --seconds <number>, -s <number>
              Specify  a  number  of seconds of operations for mongooplog to pull from the remote
              host. Unless specified the default value is 86400 seconds, or 24 hours.

       --from <host[:port]>
              Specify the host for mongooplog  to  retrieve  oplog  operations  from.  mongooplog
              requires this option.

              Unless  you  specify  the  --host  option,  mongooplog  will  apply  the operations
              collected with this option to the oplog of  the  mongod  instance  running  on  the
              localhost interface connected to port 27017.

       --oplogns <namespace>
              Specify  a  namespace in the --from host where the oplog resides. The default value
              is local.oplog.rs, which is the where replica set  members  store  their  operation
              log.  However,  if you've copied oplog entries into another database or collection,
              use this option to copy oplog entries stored in another location.

              Namespaces take the form of [database].[collection].

   Usage
       Consider the following prototype mongooplog command:

       mongooplog  --from mongodb0.example.net --host mongodb1.example.net

       Here, entries from the oplog of the mongod running on port 27017. This only  pull  entries
       from the last 24 hours.

       In  the  next command, the parameters limit this operation to only apply operations to the
       database people in the collection usage on the target host (i.e. mongodb1.example.net):

       mongooplog  --from mongodb0.example.net --host mongodb1.example.net --database people --collection usage

       This operation only applies oplog entries from  the  last  24  hours.  Use  the  --seconds
       argument to capture a greater or smaller amount of time. Consider the following example:

       mongooplog  --from mongodb0.example.net --seconds 172800

       In  this  operation, mongooplog captures 2 full days of operations. To migrate 12 hours of
       oplog entries, use the following form:

       mongooplog  --from mongodb0.example.net --seconds 43200

       For the previous two examples, mongooplog migrates entries to the mongod  process  running
       on  the  localhost  interface  connected  to  the  27017 port. mongooplog can also operate
       directly on MongoDB's data files if no mongod is running on the target host. Consider  the
       following example:

       mongooplog  --from mongodb0.example.net --dbpath /srv/mongodb --journal

       Here,  mongooplog  imports  oplog operations from the mongod host connected to port 27017.
       This migrates operations to the MongoDB data files stored in the  /srv/mongodb  directory.
       Additionally  mongooplog  will  use  the  durability journal to ensure that the data files
       remain in a consistent state.

AUTHOR

       MongoDB Documentation Project

COPYRIGHT

       2011-2013, 10gen, Inc.