mirror of
https://github.com/mongodb/mongo.git
synced 2024-11-30 09:06:21 +01:00
1547 lines
41 KiB
Groff
1547 lines
41 KiB
Groff
.\" Man page generated from reStructuredText.
|
|
.
|
|
.TH "MONGOEXPORT" "1" "Aug 16, 2019" "4.2" "mongodb-manual"
|
|
.SH NAME
|
|
mongoexport \- MongoDB Export Utility
|
|
.
|
|
.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
|
|
..
|
|
.SS On this page
|
|
.INDENT 0.0
|
|
.IP \(bu 2
|
|
\fI\%Synopsis\fP
|
|
.IP \(bu 2
|
|
\fI\%Syntax\fP
|
|
.IP \(bu 2
|
|
\fI\%Required Access\fP
|
|
.IP \(bu 2
|
|
\fI\%Behavior\fP
|
|
.IP \(bu 2
|
|
\fI\%Options\fP
|
|
.IP \(bu 2
|
|
\fI\%Examples\fP
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.IP "macOS Sierra and Go 1.6 Incompatibility"
|
|
.sp
|
|
Users running on macOS Sierra require the 3.2.10 or newer version
|
|
of mongoexport\&.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SH SYNOPSIS
|
|
.sp
|
|
\fI\%mongoexport\fP is a command\-line tool that produces a JSON
|
|
or CSV export of data stored in a MongoDB instance.
|
|
.sp
|
|
Run \fI\%mongoexport\fP from the system command line, not the \fBmongo\fP shell.
|
|
.sp
|
|
\fBSEE ALSO:\fP
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
\fBmongoimport\fP which provides the corresponding "import"
|
|
capability.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SH SYNTAX
|
|
.sp
|
|
\fI\%mongoexport\fP must be run directly from the system command line.
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-collection <coll> [options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
You must specify the \fI\%collection\fP to
|
|
export. If you do not specify an \fI\%output file\fP, \fI\%mongoexport\fP writes to the standard output (e.g.
|
|
stdout).
|
|
.SS Connect to a MongoDB Instance
|
|
.sp
|
|
To connect to a local MongoDB instance running on port 27017, you do
|
|
not have to specify the host or port.
|
|
.sp
|
|
For example, to export the specified \fI\%collection\fP to the specified \fI\%output file\fP from a local MongoDB instance running on port 27017:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-collection events \-\-db reporting \-\-out events.json
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
To specify a host and/or port of the MongoDB instance, you can either:
|
|
.INDENT 0.0
|
|
.IP \(bu 2
|
|
Specify the hostname and port in the \fI\%\-\-uri connection string\fP:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-uri "mongodb://mongodb0.example.com:27017/reporting" \-\-collection events \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
If using the \fI\%\-\-uri connection string\fP,
|
|
specify the database as part of the string. You cannot use the
|
|
command\-line option \fI\%\-\-db\fP in conjunction
|
|
with the \fI\%\-\-uri connection string\fP\&.
|
|
.IP \(bu 2
|
|
Specify the hostname and port in the \fI\%\-\-host\fP:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-host "mongodb0.example.com:27017" \-\-collection events \-\-db reporting \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.IP \(bu 2
|
|
Specify the hostname and port in the \fI\%\-\-host\fP and \fI\%\-\-port\fP:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-host "mongodb0.example.com" \-\-port 27017 \-\-collection events \-\-db reporting \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
For more information on the options available, see \fI\%Options\fP\&.
|
|
.SS Connect to a Replica Set
|
|
.sp
|
|
To connect to a replica set to export its data, you can either:
|
|
.INDENT 0.0
|
|
.IP \(bu 2
|
|
Specify the replica set name and members in the \fI\%\-\-uri connection string\fP:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-uri "mongodb://mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/reporting?replicaSet=myReplicaSetName" \-\-collection events \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
If using the \fI\%\-\-uri connection string\fP,
|
|
specify the database as part of the string. You cannot use the
|
|
command\-line option \fI\%\-\-db\fP in conjunction
|
|
with the \fI\%\-\-uri connection string\fP\&.
|
|
.IP \(bu 2
|
|
Specify the replica set name and members in the \fI\%\-\-host\fP:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-host "myReplicaSetName/mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com" \-\-collection events \-\-db reporting \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
By default, \fI\%mongoexport\fP reads from the primary of the
|
|
replica set. To override the default, you can specify the read
|
|
preference:
|
|
.INDENT 0.0
|
|
.IP \(bu 2
|
|
You can specify the read preference in the
|
|
\fI\%\-\-uri connection string\fP
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-uri "mongodb://mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/reporting?replicaSet=myReplicaSetName&readPreference=secondary" \-\-collection events \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
If specifying the read preference tags, include the
|
|
\fBreadPreferenceTags\fP option:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-uri "mongodb://mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/reporting?replicaSet=myReplicaSetName&readPreference=secondary&readPreferenceTags=region:east" \-\-collection events \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
If using the \fI\%\-\-uri connection string\fP,
|
|
specify the database as part of the string. You cannot use the
|
|
command\-line option \fI\%\-\-db\fP in conjunction
|
|
with the \fI\%\-\-uri connection string\fP\&.
|
|
.IP \(bu 2
|
|
You can specify the read preference in using the
|
|
\fI\%\-\-readPreference\fP command\-line
|
|
option. The command\-line option takes a string if specifying only the read preference mode:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-host "myReplicaSetName/mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017" \-\-readPreference secondary \-\-collection events \-\-db reporting \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
Or, the command\-line option can takes a quote\-enclosed document
|
|
\fB\(aq{ mode: <mode>, tagSets: [ <tag1>, ... ], maxStalenessSeconds:<num>}\(aq\fP
|
|
to specify the mode, the optional read preference tag
|
|
sets, and the optional
|
|
maxStalenessSeconds:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-host "myReplicaSetName/mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017" \-\-readPreference \(aq{mode: "secondary", tagSets: [ { "region": "east" } ]}\(aq \-\-collection events \-\-db reporting \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
For more information on the options available, see \fI\%Options\fP\&.
|
|
.SS Connect to a Sharded Cluster
|
|
.sp
|
|
To connect to a sharded cluster to export its data, you can either:
|
|
.INDENT 0.0
|
|
.IP \(bu 2
|
|
Specify the hostname of the \fBmongos\fP instance in the
|
|
\fI\%\-\-uri connection string\fP
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-uri "mongodb://mongos0.example.com:27017/reporting" \-\-collection events \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
If using the \fI\%\-\-uri connection string\fP,
|
|
specify the database as part of the string. You cannot use the
|
|
command\-line option \fI\%\-\-db\fP in conjunction
|
|
with the \fI\%\-\-uri connection string\fP\&.
|
|
.IP \(bu 2
|
|
Specify the hostname and port of the \fBmongos\fP instance in the \fI\%\-\-host\fP
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-host "mongos0.example.com:27017" \-\-collection events \-\-db reporting \-\-out events.json[additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
By default, \fI\%mongoexport\fP reads from the primary of the
|
|
shard replica set. To override the default, you can specify the read
|
|
preference:
|
|
.INDENT 0.0
|
|
.IP \(bu 2
|
|
You can specify the read preference in the
|
|
\fI\%\-\-uri connection string\fP
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-uri "mongodb://mongos0.example.com:27017/reporting?readPreference=secondary" \-\-collection events \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
If specifying the read preference tags, include the
|
|
\fBreadPreferenceTags\fP option:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-uri "mongodb://mongos0.example.com:27017/reporting?readPreference=secondary&readPreferenceTags=region:east" \-\-collection events \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
If using the \fI\%\-\-uri connection string\fP,
|
|
specify the database as part of the string. You cannot use the
|
|
command\-line option \fI\%\-\-db\fP in conjunction
|
|
with the \fI\%\-\-uri connection string\fP\&.
|
|
.IP \(bu 2
|
|
You can specify the read preference in using the
|
|
\fI\%\-\-readPreference\fP command\-line
|
|
option. The command\-line option takes a string if specifying only the read preference mode:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-host "mongos0.example.com:27017" \-\-readPreference secondary \-\-collection events \-\-db reporting \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
Or, the command\-line option can takes a quote\-enclosed document
|
|
\fB\(aq{ mode: <mode>, tagSets: [ <tag1>, ... ], maxStalenessSeconds:<num>}\(aq\fP
|
|
to specify the mode, the optional read preference tag
|
|
sets, and the optional
|
|
maxStalenessSeconds:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-host "mongos0.example.com:27017" \-\-readPreference \(aq{mode: "secondary", tagSets: [ { "region": "east" } ]}\(aq \-\-collection events \-\-db reporting \-\-out events.json [additional options]
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
For more information on the options available, see \fI\%Options\fP\&.
|
|
.sp
|
|
\fBSEE ALSO:\fP
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
\fI\%Examples\fP
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SH REQUIRED ACCESS
|
|
.sp
|
|
\fI\%mongoexport\fP requires read access on the target database.
|
|
.sp
|
|
Ensure that the connecting user possesses, at a minimum, the \fBread\fP
|
|
role on the target database.
|
|
.sp
|
|
When connecting to a \fBmongod\fP or \fBmongos\fP that enforces
|
|
/core/authentication, ensure you use the required security
|
|
parameters based on the configured
|
|
authentication mechanism\&.
|
|
.SH BEHAVIOR
|
|
.SS Type Fidelity
|
|
.sp
|
|
\fBWARNING:\fP
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
Avoid using \fBmongoimport\fP and \fI\%mongoexport\fP for
|
|
full instance production backups. They do not reliably preserve all rich
|
|
BSON data types, because JSON can only represent a subset
|
|
of the types supported by BSON. Use \fBmongodump\fP
|
|
and \fBmongorestore\fP as described in /core/backups for this
|
|
kind of functionality.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
Starting in version 4.2, \fI\%mongoexport\fP:
|
|
.INDENT 0.0
|
|
.IP \(bu 2
|
|
Outputs data in Extended JSON v2.0 (Relaxed mode) by default.
|
|
.IP \(bu 2
|
|
Outputs Extended JSON v2.0 (Canonical mode) if used with
|
|
\fI\%\-\-jsonFormat\fP\&.
|
|
.UNINDENT
|
|
.sp
|
|
Earlier versions used Extended JSON v1.0 (Canonical mode)\&.
|
|
.sp
|
|
For example, the following insert operation in the \fBmongo\fP
|
|
shell uses the various shell helpers for the
|
|
BSON types Date and 64\-bit integer:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
use test
|
|
db.traffic.insert( { _id: 1, volume: NumberLong(\(aq2980000\(aq), date: new Date() } )
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
The argument to 64\-bit integer must be quoted to avoid potential
|
|
loss of accuracy.
|
|
.sp
|
|
Use \fI\%mongoexport\fP to export the data:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-db test \-\-collection traffic \-\-out traffic.json
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
In version 4.2+, the exported data is in Extended JSON v2.0
|
|
(Relaxed mode)\&.
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
{"_id":1.0,"volume":2980000,"date":{"$date":"2019\-08\-05T16:18:29.559Z"}}
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
To output in Extended JSON v2.0 (Canonical
|
|
mode), include the
|
|
\fI\%\-\-jsonFormat=canonical\fP:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-db test \-\-collection traffic \-\-jsonFormat=canonical \-\-out traffic.json
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
The exported data is in Extended JSON v2.0 (Canonical
|
|
mode):
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
{"_id":{"$numberDouble":"1.0"},"volume":{"$numberLong":"2980000"},"date":{"$date":{"$numberLong":"1565363188675"}}}
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
In version 4.0 and earlier, the exported data is in Extended JSON v1.0 (Strict mode)
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
{"_id":1.0,"volume":{"$numberLong":"2980000"},"date":{"$date":"2019\-08\-05T16:18:29.559Z"}}
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SS FIPS
|
|
.sp
|
|
Starting in version 4.2, MongoDB removes the \fB\-\-sslFIPSMode\fP
|
|
option for mongoexport\&. mongoexport
|
|
will use FIPS compliant connections to
|
|
\fBmongod\fP/\fBmongos\fP if the
|
|
\fBmongod\fP/\fBmongos\fP instances are
|
|
configured to use FIPS mode\&.
|
|
.SS Read Preference
|
|
.sp
|
|
By default, \fI\%mongoexport\fP uses read preference
|
|
\fBprimary\fP\&. To override the default, you can specify the
|
|
read preference in the
|
|
\fI\%\-\-readPreference\fP command line
|
|
option or in the \fI\%\-\-uri connection string\fP\&.
|
|
.sp
|
|
Starting in version 4.2, if you specify read preference in the URI
|
|
string and the \fI\%\-\-readPreference\fP, the \fI\%\-\-readPreference\fP value overrides the read preference specified in the
|
|
URI string.
|
|
.sp
|
|
In earlier versions, the two options are incompatible.
|
|
.SH OPTIONS
|
|
.sp
|
|
Changed in version 3.0.0: \fI\%mongoexport\fP removed the \fB\-\-dbpath\fP as well as related
|
|
\fB\-\-directoryperdb\fP and \fB\-\-journal\fP options. To use
|
|
\fI\%mongoexport\fP, you must run \fI\%mongoexport\fP against a running
|
|
\fBmongod\fP or \fBmongos\fP instance as appropriate.
|
|
|
|
.sp
|
|
Changed in version 3.0.0: \fI\%mongoexport\fP removed the \fB\-\-csv\fP option. Use the
|
|
\fI\%\-\-type=csv\fP option to specify CSV format
|
|
for the output.
|
|
|
|
.INDENT 0.0
|
|
.TP
|
|
.B mongoexport
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-help
|
|
Returns information on the options and use of \fBmongoexport\fP\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-verbose, \-v
|
|
Increases the amount of internal reporting returned on standard output
|
|
or in log files. 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 \-\-quiet
|
|
Runs \fBmongoexport\fP in a quiet mode that attempts to limit the amount
|
|
of output.
|
|
.sp
|
|
This option suppresses:
|
|
.INDENT 7.0
|
|
.IP \(bu 2
|
|
output from database commands
|
|
.IP \(bu 2
|
|
replication activity
|
|
.IP \(bu 2
|
|
connection accepted events
|
|
.IP \(bu 2
|
|
connection closed events
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-version
|
|
Returns the \fBmongoexport\fP release number.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-uri <connectionString>
|
|
New in version 3.4.6.
|
|
|
|
.sp
|
|
Specify a resolvable URI
|
|
connection string (enclose in quotes) to connect to the MongoDB deployment.
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
\-\-uri "mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]"
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
For information on the components of the connection string, see
|
|
the Connection String URI Format documentation.
|
|
.sp
|
|
\fBNOTE:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
For TLS/SSL options, use the command\-line options instead of the
|
|
URI options for TLS/SSL (Available starting in
|
|
4.2)\&.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
\fBIMPORTANT:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
The following command\-line options cannot be used in conjunction
|
|
with \fI\%\-\-uri\fP option:
|
|
.INDENT 0.0
|
|
.IP \(bu 2
|
|
\fI\%\-\-host\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-port\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-db\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-username\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-password\fP (if the
|
|
URI connection string also includes the password)
|
|
.IP \(bu 2
|
|
\fI\%\-\-authenticationDatabase\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-authenticationMechanism\fP
|
|
.UNINDENT
|
|
.sp
|
|
Instead, specify these options as part of your \fI\%\-\-uri\fP
|
|
connection string.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-host <hostname><:port>, \-h <hostname><:port>
|
|
\fIDefault\fP: localhost:27017
|
|
.sp
|
|
Specifies a resolvable hostname for the \fBmongod\fP to which to
|
|
connect. By default, the \fBmongoexport\fP attempts to connect to a MongoDB
|
|
instance running on the localhost on port number \fB27017\fP\&.
|
|
.sp
|
|
To connect to a replica set, specify the
|
|
\fBreplSetName\fP and a seed list of set members, as in
|
|
the following:
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
\-\-host <replSetName>/<hostname1><:port>,<hostname2><:port>,<...>
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
When specifying the replica set list format, \fBmongoexport\fP always connects to
|
|
the primary\&.
|
|
.sp
|
|
You can also connect to any single member of the replica set by specifying
|
|
the host and port of only that member:
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
\-\-host <hostname1><:port>
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
Changed in version 3.0.0: If you use IPv6 and use the \fB<address>:<port>\fP format, you must
|
|
enclose the portion of an address and port combination in
|
|
brackets (e.g. \fB[<address>]\fP).
|
|
|
|
.sp
|
|
\fBNOTE:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
You cannot specify both \fI\%\-\-host\fP and \fI\%\-\-uri\fP\&.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-port <port>
|
|
\fIDefault\fP: 27017
|
|
.sp
|
|
Specifies the TCP port on which the MongoDB instance listens for
|
|
client connections.
|
|
.sp
|
|
\fBNOTE:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
You cannot specify both \fI\%\-\-port\fP and \fI\%\-\-uri\fP\&.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-ipv6
|
|
\fIRemoved in version 3.0.\fP
|
|
.sp
|
|
Enables IPv6 support and allows \fBmongoexport\fP to connect to the
|
|
MongoDB instance using an IPv6 network. Prior to MongoDB 3.0, you
|
|
had to specify \fI\%\-\-ipv6\fP to use IPv6. In MongoDB 3.0 and later, IPv6
|
|
is always enabled.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-ssl
|
|
New in version 2.6.
|
|
|
|
.sp
|
|
Enables connection to a \fBmongod\fP or \fBmongos\fP that has
|
|
TLS/SSL support enabled.
|
|
.sp
|
|
For more information about TLS/SSL and MongoDB, see
|
|
/tutorial/configure\-ssl and
|
|
/tutorial/configure\-ssl\-clients .
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-sslCAFile <filename>
|
|
New in version 2.6.
|
|
|
|
.sp
|
|
Specifies the \fB\&.pem\fP file that contains the root certificate chain
|
|
from the Certificate Authority. Specify the file name of the
|
|
\fB\&.pem\fP file using relative or absolute paths.
|
|
.sp
|
|
Starting in version 3.4, if \fB\-\-tlsCAFile\fP/\fBnet.tls.CAFile\fP (or
|
|
their aliases \fB\-\-sslCAFile\fP/\fBnet.ssl.CAFile\fP) is not specified
|
|
and you are not using x.509 authentication, the system\-wide CA
|
|
certificate store will be used when connecting to an TLS/SSL\-enabled
|
|
server.
|
|
.sp
|
|
To use x.509 authentication, \fB\-\-tlsCAFile\fP or \fBnet.tls.CAFile\fP
|
|
must be specified unless using \fB\-\-tlsCertificateSelector\fP or
|
|
\fB\-\-net.tls.certificateSelector\fP\&. Or if using the \fBssl\fP aliases,
|
|
\fB\-\-sslCAFile\fP or \fBnet.ssl.CAFile\fP must be specified unless using
|
|
\fB\-\-sslCertificateSelector\fP or \fBnet.ssl.certificateSelector\fP\&.
|
|
.sp
|
|
\fBWARNING:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
\fBVersion 3.2 and earlier:\fP For TLS/SSL connections (\fB\-\-ssl\fP) to
|
|
\fBmongod\fP and \fBmongos\fP, if the \fBmongoexport\fP runs without the
|
|
\fI\%\-\-sslCAFile\fP, \fBmongoexport\fP will not attempt
|
|
to validate the server certificates. This creates a vulnerability
|
|
to expired \fBmongod\fP and \fBmongos\fP certificates as
|
|
well as to foreign processes posing as valid \fBmongod\fP or
|
|
\fBmongos\fP instances. Ensure that you \fIalways\fP specify the
|
|
CA file to validate the server certificates in cases where
|
|
intrusion is a possibility.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
For more information about TLS/SSL and MongoDB, see
|
|
/tutorial/configure\-ssl and
|
|
/tutorial/configure\-ssl\-clients .
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-sslPEMKeyFile <filename>
|
|
New in version 2.6.
|
|
|
|
.sp
|
|
Specifies the \fB\&.pem\fP file that contains both the TLS/SSL certificate
|
|
and key. Specify the file name of the \fB\&.pem\fP file using relative
|
|
or absolute paths.
|
|
.sp
|
|
This option is required when using the \fI\%\-\-ssl\fP option to connect
|
|
to a \fBmongod\fP or \fBmongos\fP that has
|
|
\fBCAFile\fP enabled \fIwithout\fP
|
|
\fBallowConnectionsWithoutCertificates\fP\&.
|
|
.sp
|
|
For more information about TLS/SSL and MongoDB, see
|
|
/tutorial/configure\-ssl and
|
|
/tutorial/configure\-ssl\-clients .
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-sslPEMKeyPassword <value>
|
|
New in version 2.6.
|
|
|
|
.sp
|
|
Specifies the password to de\-crypt the certificate\-key file (i.e.
|
|
\fI\%\-\-sslPEMKeyFile\fP). Use the \fI\%\-\-sslPEMKeyPassword\fP option only if the
|
|
certificate\-key file is encrypted. In all cases, the \fBmongoexport\fP will
|
|
redact the password from all logging and reporting output.
|
|
.sp
|
|
If the private key in the PEM file is encrypted and you do not specify
|
|
the \fI\%\-\-sslPEMKeyPassword\fP option, the \fBmongoexport\fP will prompt for a passphrase. See
|
|
ssl\-certificate\-password\&.
|
|
.sp
|
|
For more information about TLS/SSL and MongoDB, see
|
|
/tutorial/configure\-ssl and
|
|
/tutorial/configure\-ssl\-clients .
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-sslCRLFile <filename>
|
|
New in version 2.6.
|
|
|
|
.sp
|
|
Specifies the \fB\&.pem\fP file that contains the Certificate Revocation
|
|
List. Specify the file name of the \fB\&.pem\fP file using relative or
|
|
absolute paths.
|
|
.sp
|
|
For more information about TLS/SSL and MongoDB, see
|
|
/tutorial/configure\-ssl and
|
|
/tutorial/configure\-ssl\-clients .
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-sslAllowInvalidCertificates
|
|
New in version 2.6.
|
|
|
|
.sp
|
|
Bypasses the validation checks for server certificates and allows
|
|
the use of invalid certificates. When using the
|
|
\fBallowInvalidCertificates\fP setting, MongoDB logs as a
|
|
warning the use of the invalid certificate.
|
|
.sp
|
|
Starting in MongoDB 4.0, if you specify
|
|
\fB\-\-sslAllowInvalidCertificates\fP or
|
|
\fBnet.ssl.allowInvalidCertificates: true\fP (or in MongoDB 4.2, the
|
|
alias \fB\-\-tlsAllowInvalidateCertificates\fP or
|
|
\fBnet.tls.allowInvalidCertificates: true\fP) when using x.509
|
|
authentication, an invalid certificate is only sufficient to
|
|
establish a TLS/SSL connection but is \fIinsufficient\fP for
|
|
authentication.
|
|
.sp
|
|
# We created a separate blurb for tls in the ssl\-clients page.
|
|
.sp
|
|
\fBWARNING:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
Although available, avoid using the
|
|
\fB\-\-sslAllowInvalidCertificates\fP option if possible. If the use of
|
|
\fB\-\-sslAllowInvalidCertificates\fP is necessary, only use the option
|
|
on systems where intrusion is not possible.
|
|
.sp
|
|
If the \fBmongo\fP shell (and other
|
|
mongodb\-tools\-support\-ssl) runs with the
|
|
\fB\-\-sslAllowInvalidCertificates\fP option, the
|
|
\fBmongo\fP shell (and other
|
|
mongodb\-tools\-support\-ssl) will not attempt to validate
|
|
the server certificates. This creates a vulnerability to expired
|
|
\fBmongod\fP and \fBmongos\fP certificates as
|
|
well as to foreign processes posing as valid
|
|
\fBmongod\fP or \fBmongos\fP instances. If you
|
|
only need to disable the validation of the hostname in the
|
|
TLS/SSL certificates, see \fB\-\-sslAllowInvalidHostnames\fP\&.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
For more information about TLS/SSL and MongoDB, see
|
|
/tutorial/configure\-ssl and
|
|
/tutorial/configure\-ssl\-clients .
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-sslAllowInvalidHostnames
|
|
New in version 3.0.
|
|
|
|
.sp
|
|
Disables the validation of the hostnames in TLS/SSL certificates. Allows
|
|
\fBmongoexport\fP to connect to MongoDB instances even if the hostname in their
|
|
certificates do not match the specified hostname.
|
|
.sp
|
|
For more information about TLS/SSL and MongoDB, see
|
|
/tutorial/configure\-ssl and
|
|
/tutorial/configure\-ssl\-clients .
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-username <username>, \-u <username>
|
|
Specifies a username with which to authenticate to a MongoDB database
|
|
that uses authentication. Use in conjunction with the \fI\%\-\-password\fP and
|
|
\fI\%\-\-authenticationDatabase\fP options.
|
|
.sp
|
|
\fBNOTE:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
You cannot specify both \fI\%\-\-username\fP and \fI\%\-\-uri\fP\&.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-password <password>, \-p <password>
|
|
Specifies a password with which to authenticate to a MongoDB database
|
|
that uses authentication. Use in conjunction with the \fI\%\-\-username\fP and
|
|
\fI\%\-\-authenticationDatabase\fP options.
|
|
.sp
|
|
Changed in version 3.0.2: To prompt the user
|
|
for the password, pass the \fI\%\-\-username\fP option without
|
|
\fI\%\-\-password\fP or specify an empty string as the \fI\%\-\-password\fP value,
|
|
as in \fB\-\-password ""\fP .
|
|
|
|
.sp
|
|
\fBNOTE:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
You cannot specify both \fI\%\-\-password\fP and \fI\%\-\-uri\fP\&.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-authenticationDatabase <dbname>
|
|
Specifies the authentication database where the specified \fI\%\-\-username\fP has been created.
|
|
See user\-authentication\-database\&.
|
|
.sp
|
|
\fBNOTE:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
You cannot specify both \fI\%\-\-authenticationDatabase\fP and \fI\%\-\-uri\fP\&.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
If you do not specify an authentication database, \fBmongoexport\fP
|
|
assumes that the database specified to export holds the user\(aqs credentials.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-authenticationMechanism <name>
|
|
\fIDefault\fP: SCRAM\-SHA\-1
|
|
.sp
|
|
Specifies the authentication mechanism the \fBmongoexport\fP instance uses to
|
|
authenticate to the \fBmongod\fP or \fBmongos\fP\&.
|
|
.sp
|
|
Changed in version 4.0: MongoDB removes support for the deprecated MongoDB
|
|
Challenge\-Response (\fBMONGODB\-CR\fP) authentication mechanism.
|
|
.sp
|
|
MongoDB adds support for SCRAM mechanism using the SHA\-256 hash
|
|
function (\fBSCRAM\-SHA\-256\fP).
|
|
|
|
.TS
|
|
center;
|
|
|l|l|.
|
|
_
|
|
T{
|
|
Value
|
|
T} T{
|
|
Description
|
|
T}
|
|
_
|
|
T{
|
|
SCRAM\-SHA\-1
|
|
T} T{
|
|
\fI\%RFC 5802\fP standard
|
|
Salted Challenge Response Authentication Mechanism using the SHA\-1
|
|
hash function.
|
|
T}
|
|
_
|
|
T{
|
|
SCRAM\-SHA\-256
|
|
T} T{
|
|
\fI\%RFC 7677\fP standard
|
|
Salted Challenge Response Authentication Mechanism using the SHA\-256
|
|
hash function.
|
|
.sp
|
|
Requires featureCompatibilityVersion set to \fB4.0\fP\&.
|
|
.sp
|
|
New in version 4.0.
|
|
T}
|
|
_
|
|
T{
|
|
MONGODB\-X509
|
|
T} T{
|
|
MongoDB TLS/SSL certificate authentication.
|
|
T}
|
|
_
|
|
T{
|
|
GSSAPI (Kerberos)
|
|
T} T{
|
|
External authentication using Kerberos. This mechanism is
|
|
available only in \fI\%MongoDB Enterprise\fP\&.
|
|
T}
|
|
_
|
|
T{
|
|
PLAIN (LDAP SASL)
|
|
T} T{
|
|
External authentication using LDAP. You can also use \fBPLAIN\fP
|
|
for authenticating in\-database users. \fBPLAIN\fP transmits
|
|
passwords in plain text. This mechanism is available only in
|
|
\fI\%MongoDB Enterprise\fP\&.
|
|
T}
|
|
_
|
|
.TE
|
|
.sp
|
|
\fBNOTE:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
You cannot specify both \fI\%\-\-authenticationMechanism\fP and \fI\%\-\-uri\fP\&.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-gssapiServiceName
|
|
New in version 2.6.
|
|
|
|
.sp
|
|
Specify the name of the service using GSSAPI/Kerberos\&. Only required if the service does not use the
|
|
default name of \fBmongodb\fP\&.
|
|
.sp
|
|
This option is available only in MongoDB Enterprise.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-gssapiHostName
|
|
New in version 2.6.
|
|
|
|
.sp
|
|
Specify the hostname of a service using GSSAPI/Kerberos\&. \fIOnly\fP required if the hostname of a machine does
|
|
not match the hostname resolved by DNS.
|
|
.sp
|
|
This option is available only in MongoDB Enterprise.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-db <database>, \-d <database>
|
|
Specifies the name of the database on which to run the \fBmongoexport\fP\&.
|
|
.sp
|
|
\fBNOTE:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
You cannot specify both \fI\%\-\-db\fP and \fI\%\-\-uri\fP\&.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-collection <collection>, \-c <collection>
|
|
Specifies the collection to export.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-fields <field1[,field2]>, \-f <field1[,field2]>
|
|
Specifies a field or fields to \fIinclude\fP in the export. Use a comma
|
|
separated list of fields to specify multiple fields.
|
|
.sp
|
|
If any of your field names include white space, use
|
|
quotation marks to enclose the field list. For example, if you wished
|
|
to export two fields, \fBphone\fP and \fBuser number\fP, you would
|
|
specify \fB\-\-fields "phone,user number"\fP\&.
|
|
.sp
|
|
For \fI\%csv\fP output formats,
|
|
\fI\%mongoexport\fP includes only the specified field(s), and the
|
|
specified field(s) can be a field within a sub\-document.
|
|
.sp
|
|
For JSON output formats, \fI\%mongoexport\fP includes
|
|
only the specified field(s) \fBand\fP the \fB_id\fP field, and if the
|
|
specified field(s) is a field within a sub\-document, the
|
|
\fI\%mongoexport\fP includes the sub\-document with all
|
|
its fields, not just the specified field within the document.
|
|
.sp
|
|
See: \fI\%Export Data in CSV Format using \-\-fields option\fP for sample usage.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-fieldFile <filename>
|
|
An alternative to \fI\%\-\-fields\fP\&. The
|
|
\fI\%\-\-fieldFile\fP option allows you to
|
|
specify in a file the field or fields to \fIinclude\fP in the export and is
|
|
\fBonly valid\fP with the \fI\%\-\-type\fP option
|
|
with value \fBcsv\fP\&. The
|
|
file must have only one field per line, and the line(s) must end with
|
|
the LF character (\fB0x0A\fP).
|
|
.sp
|
|
\fI\%mongoexport\fP includes only the specified field(s). The
|
|
specified field(s) can be a field within a sub\-document.
|
|
.sp
|
|
See \fI\%Use a File to Specify the Fields to Export in CSV Format\fP for sample usage.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-query <JSON>, \-q <JSON>
|
|
Provides a query as a JSON document (enclosed in quotes) to
|
|
return matching documents in the export.
|
|
.sp
|
|
You must enclose the query document in single quotes (\fB\(aq{ ... }\(aq\fP) to ensure that it does
|
|
not interact with your shell environment.
|
|
.sp
|
|
Starting in MongoDB 4.2, the query \fBmust\fP be in
|
|
Extended JSON v2 format (either relaxed or canonical/strict
|
|
mode), including enclosing the
|
|
field names and operators in quotes:
|
|
.sp
|
|
For example, given a collection named \fBrecords\fP in the database
|
|
\fBtest\fP with the following documents:
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
{ "_id" : ObjectId("51f0188846a64a1ed98fde7c"), "a" : 1, "date" : ISODate("1960\-05\-01T00:00:00Z") }
|
|
{ "_id" : ObjectId("520e61b0c6646578e3661b59"), "a" : 1, "b" : 2, "date" : ISODate("1970\-05\-01T00:00:00Z") }
|
|
{ "_id" : ObjectId("520e642bb7fa4ea22d6b1871"), "a" : 2, "b" : 3, "c" : 5, "date" : ISODate("2010\-05\-01T00:00:00Z") }
|
|
{ "_id" : ObjectId("520e6431b7fa4ea22d6b1872"), "a" : 3, "b" : 3, "c" : 6, "date" : ISODate("2015\-05\-02T00:00:00Z") }
|
|
{ "_id" : ObjectId("520e6445b7fa4ea22d6b1873"), "a" : 5, "b" : 6, "c" : 8, "date" : ISODate("2018\-03\-01T00:00:00Z") }
|
|
{ "_id" : ObjectId("5cd0de910dbce4346295ae28"), "a" : 15, "b" : 5, "date" : ISODate("2015\-03\-01T00:00:00Z") }
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
The following \fI\%mongoexport\fP uses the \fI\%\-q\fP option
|
|
to export only the documents with the field \fBa\fP greater than or
|
|
equal to (\fB$gte\fP) to \fB3\fP and the field \fBdate\fP less than
|
|
\fBISODate("2016\-01\-01T00:00:00Z")\fP (using the extended JSON v2
|
|
format (relaxed mode) for dates { "$date":
|
|
"YYYY\-MM\-DDTHH:mm:ss.mmm<offset>"}):
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-d test \-c records \-q \(aq{ "a": { "$gte": 3 }, "date": { "$lt": { "$date": "2016\-01\-01T00:00:00.000Z" } } }\(aq \-\-out exportdir/myRecords.json
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
The resulting file contains the following documents:
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
{"_id":{"$oid":"520e6431b7fa4ea22d6b1872"},"a":3.0,"b":3.0,"c":6.0,"date":{"$date":"2015\-05\-02T00:00:00Z"}}
|
|
{"_id":{"$oid":"5cd0de910dbce4346295ae28"},"a":15.0,"b":5.0,"date":{"$date":"2015\-03\-01T00:00:00Z"}}
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
You can sort the results with the \fI\%\-\-sort\fP option to
|
|
\fI\%mongoexport\fP\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-type <string>
|
|
\fIDefault\fP: json
|
|
.sp
|
|
New in version 3.0.
|
|
|
|
.sp
|
|
Specifies the file type to export. Specify \fBcsv\fP for CSV
|
|
format or \fBjson\fP for JSON format.
|
|
.sp
|
|
If you specify \fBcsv\fP, then you must also use either
|
|
the \fI\%\-\-fields\fP or the \fI\%\-\-fieldFile\fP option to
|
|
declare the fields to export from the collection.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-out <file>, \-o <file>
|
|
Specifies a file to write the export to. If you do not specify a file
|
|
name, the \fI\%mongoexport\fP writes data to standard output
|
|
(e.g. \fBstdout\fP).
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-jsonFormat <canonical|relaxed>
|
|
\fIDefault\fP: relaxed
|
|
.sp
|
|
Modifies the output to use either canonical or relaxed mode of the
|
|
/reference/mongodb\-extended\-json format.
|
|
.sp
|
|
For differences between canonical and relaxed modes, see
|
|
/reference/mongodb\-extended\-json\&.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-jsonArray
|
|
Modifies the output of \fI\%mongoexport\fP to write the
|
|
entire contents of the export as a single JSON array. By
|
|
default \fI\%mongoexport\fP writes data using one JSON document
|
|
for every MongoDB document.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-pretty
|
|
New in version 3.0.0.
|
|
|
|
.sp
|
|
Outputs documents in a pretty\-printed format JSON.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-noHeaderLine
|
|
New in version 3.4.
|
|
|
|
.sp
|
|
By default, \fBmongoexport\fP includes the exported field names as the first
|
|
line in a CSV output. \fI\%\-\-noHeaderLine\fP directs \fBmongoexport\fP to export the
|
|
data without the list of field names.
|
|
\fI\%\-\-noHeaderLine\fP is \fBonly valid\fP with the
|
|
\fI\%\-\-type\fP option with value \fBcsv\fP\&.
|
|
.sp
|
|
See \fI\%Exclude Field Names from CSV Output\fP for sample usage.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-slaveOk, \-k
|
|
Deprecated since version 3.2.
|
|
|
|
.sp
|
|
Sets the replica\-set\-read\-preference to \fBnearest\fP,
|
|
allowing \fI\%mongoexport\fP to read data from secondary
|
|
replica set members.
|
|
.sp
|
|
\fI\%\-\-readPreference\fP replaces \fB\-\-slaveOk\fP in MongoDB 3.2. You cannot
|
|
specify \fB\-\-slaveOk\fP when \fI\%\-\-readPreference\fP is specified.
|
|
.sp
|
|
\fBWARNING:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
Using a read preference other than
|
|
\fBprimary\fP with a connection to a \fBmongos\fP may produce
|
|
inconsistencies, duplicates, or result in missed documents.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-readPreference <string|document>
|
|
\fIDefault\fP: \fBprimary\fP
|
|
.sp
|
|
Specifies the read preference for
|
|
\fBmongoexport\fP\&. The \fI\%\-\-readPreference\fP option can take:
|
|
.INDENT 7.0
|
|
.IP \(bu 2
|
|
A string if specifying only the read preference mode:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
\-\-readPreference secondary
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.IP \(bu 2
|
|
A quote\-enclosed document to specify the mode, the optional
|
|
read preference tag sets, and the
|
|
optional maxStalenessSeconds:
|
|
.INDENT 2.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
\-\-readPreference \(aq{mode: "secondary", tagSets: [ { "region": "east" } ], maxStalenessSeconds: 120}\(aq
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
If specifying the maxStalenessSeconds, the value must be greater than or equal to 90.
|
|
.sp
|
|
New in version 4.2.
|
|
|
|
.UNINDENT
|
|
.sp
|
|
\fBmongoexport\fP defaults to \fBprimary\fP
|
|
read preference\&.
|
|
.sp
|
|
Starting in version 4.2, if the read
|
|
preference is also included in the \fI\%\-\-uri connection string\fP, the command\-line \fI\%\-\-readPreference\fP overrides the read preference
|
|
specified in the URI string.
|
|
.sp
|
|
\fBWARNING:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
Using a read preference other than
|
|
\fBprimary\fP with a connection to a \fBmongos\fP may produce
|
|
inconsistencies, duplicates, or result in missed documents.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-forceTableScan
|
|
Forces \fI\%mongoexport\fP to scan the data store directly instead
|
|
of traversing the \fB_id\fP field index. Use \fI\%\-\-forceTableScan\fP to skip the
|
|
index. Typically there are two cases where this behavior is
|
|
preferable to the default:
|
|
.INDENT 7.0
|
|
.IP 1. 3
|
|
If you have key sizes over 800 bytes that would not be present
|
|
in the \fB_id\fP index.
|
|
.IP 2. 3
|
|
Your database uses a custom \fB_id\fP field.
|
|
.UNINDENT
|
|
.sp
|
|
When you run with \fI\%\-\-forceTableScan\fP, \fI\%mongoexport\fP may return a
|
|
document more than once if a write operation interleaves with the
|
|
operation to cause the document to move.
|
|
.sp
|
|
\fBWARNING:\fP
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
Use \fI\%\-\-forceTableScan\fP with extreme caution
|
|
and consideration.
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-skip <number>
|
|
Use \fI\%\-\-skip\fP to control where \fI\%mongoexport\fP begins
|
|
exporting documents. See \fBskip()\fP for information about
|
|
the underlying operation.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-limit <number>
|
|
Specifies a maximum number of documents to include in the
|
|
export. See \fBlimit()\fP for information about
|
|
the underlying operation.
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.TP
|
|
.B \-\-sort <JSON>
|
|
Specifies an ordering for exported results. If an index does
|
|
\fBnot\fP exist that can support the sort operation, the results must
|
|
be \fIless than\fP 32 megabytes.
|
|
.sp
|
|
Use \fI\%\-\-sort\fP conjunction with \fI\%\-\-skip\fP and
|
|
\fI\%\-\-limit\fP to limit number of exported documents.
|
|
.INDENT 7.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-d test \-c records \-\-sort \(aq{a: 1}\(aq \-\-limit 100 \-\-out export.0.json
|
|
mongoexport \-d test \-c records \-\-sort \(aq{a: 1}\(aq \-\-limit 100 \-\-skip 100 \-\-out export.1.json
|
|
mongoexport \-d test \-c records \-\-sort \(aq{a: 1}\(aq \-\-limit 100 \-\-skip 200 \-\-out export.2.json
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
See \fBsort()\fP for information about the underlying
|
|
operation.
|
|
.UNINDENT
|
|
.SH EXAMPLES
|
|
.SS Export in CSV Format
|
|
.sp
|
|
Changed in version 3.0.0: \fI\%mongoexport\fP removed the \fB\-\-csv\fP option. Use the
|
|
\fI\%\-\-type=csv\fP option to specify CSV format
|
|
for the output.
|
|
|
|
.SS Export Data in CSV Format using \fB\-\-fields\fP option
|
|
.sp
|
|
In the following example, \fI\%mongoexport\fP exports data from the
|
|
collection \fBcontacts\fP collection in the \fBusers\fP database in CSV
|
|
format to the file \fB/opt/backups/contacts.csv\fP\&.
|
|
.sp
|
|
The \fBmongod\fP instance that \fI\%mongoexport\fP connects to is
|
|
running on the localhost port number \fB27017\fP\&.
|
|
.sp
|
|
When you export in CSV format, you must specify the fields in the documents
|
|
to export. The operation specifies the \fBname\fP and \fBaddress\fP fields
|
|
to export.
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-db users \-\-collection contacts \-\-type=csv \-\-fields name,address \-\-out /opt/backups/contacts.csv
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
The output would then resemble:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
name, address
|
|
Sophie Monroe, 123 Example Road
|
|
Charles Yu, 345 Sample Street
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SS Use a File to Specify the Fields to Export in CSV Format
|
|
.sp
|
|
For CSV exports only, you can also specify the fields in a file
|
|
containing the line\-separated list of fields to export. The file must
|
|
have only one field per line.
|
|
.sp
|
|
For example, you can specify the \fBname\fP and \fBaddress\fP fields in a
|
|
file \fBfields.txt\fP:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
name
|
|
address
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
Then, using the \fI\%\-\-fieldFile\fP option, specify the fields to export with
|
|
the file:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-db users \-\-collection contacts \-\-type=csv \-\-fieldFile fields.txt \-\-out /opt/backups/contacts.csv
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SS Exclude Field Names from CSV Output
|
|
.sp
|
|
New in version 3.4.
|
|
|
|
.sp
|
|
MongoDB 3.4 added the \fI\%\-\-noHeaderLine\fP option for excluding the
|
|
field names in a CSV export. The following example exports the \fBname\fP
|
|
and \fBaddress\fP fields in the \fBcontacts\fP collection in the \fBusers\fP
|
|
database and uses \fI\%\-\-noHeaderLine\fP to suppress the output
|
|
of the field names as the first line:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-db users \-\-collection contacts \-\-type csv \-\-fields name,address \-\-noHeaderLine \-\-out /opt/backups/contacts.csv
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
The CSV output would then resemble:
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
Sophie Monroe, 123 Example Road
|
|
Charles Yu, 345 Sample Street
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SS Export in JSON Format
|
|
.sp
|
|
This example creates an export of the \fBcontacts\fP collection from the
|
|
MongoDB instance running on the localhost port number \fB27017\fP\&. This
|
|
writes the export to the \fBcontacts.json\fP file in JSON format.
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-db sales \-\-collection contacts \-\-out contacts.json
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SS Export from Remote Host Running with Authentication
|
|
.sp
|
|
The following example exports the \fBcontacts\fP collection in the
|
|
\fBmarketing\fP database from a remote MongoDB instance that requires
|
|
authentication.
|
|
.sp
|
|
Specify the:
|
|
.INDENT 0.0
|
|
.IP \(bu 2
|
|
\fI\%\-\-host\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-port\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-username\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-authenticationDatabase\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-collection\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-db\fP
|
|
.IP \(bu 2
|
|
\fI\%\-\-out\fP
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.SS Tip
|
|
.sp
|
|
Omit the \fI\%\-\-password\fP option to
|
|
have \fBmongoexport\fP prompt for the password:
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-host mongodb1.example.net \-\-port 27017 \-\-username someUser \-\-authenticationDatabase admin \-\-collection contacts \-\-db marketing \-\-out mdb1\-examplenet.json
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
Alternatively, you use the \fI\%\-\-uri\fP option to specify the host, port, username, authentication database, and db.
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.SS Tip
|
|
.sp
|
|
Omit the password in the URI string to have \fBmongoexport\fP prompt
|
|
for the password:
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-uri \(aqmongodb://someUser@mongodb0.example.com:27017/marketing?authsource=admin\(aq \-\-collection contacts \-\-out mdb1\-examplenet.json
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.SS Export Query Results
|
|
.sp
|
|
You can export only the results of a query by supplying a query filter with
|
|
the \fI\%\-\-query\fP option, and limit the results to a single
|
|
database using the "\fI\%\-\-db\fP" option.
|
|
.sp
|
|
For instance, this command returns all documents in the \fBsales\fP
|
|
database\(aqs \fBcontacts\fP collection that contain a field named \fBdept\fP
|
|
equal to \fB"ABC"\fP and the field \fBdate\fP greater than or equal to
|
|
ISODate("2018\-01\-01") (using the canonical format for dates
|
|
{ "$date": "YYYY\-MM\-DDTHH:mm:ss.mmm<offset>"} )
|
|
.INDENT 0.0
|
|
.INDENT 3.5
|
|
.sp
|
|
.nf
|
|
.ft C
|
|
mongoexport \-\-db sales \-\-collection contacts \-\-query \(aq{"dept": "ABC", date: { $gte: { "$date": "2018\-01\-01T00:00:00.000Z" } }}\(aq
|
|
.ft P
|
|
.fi
|
|
.UNINDENT
|
|
.UNINDENT
|
|
.sp
|
|
You must enclose the query document in single quotes (\fB\(aq{ ... }\(aq\fP) to ensure that it does
|
|
not interact with your shell environment.
|
|
.SH AUTHOR
|
|
MongoDB Documentation Project
|
|
.SH COPYRIGHT
|
|
2008-2019
|
|
.\" Generated by docutils manpage writer.
|
|
.
|