mongodump
mongorestore
bsondump
mongoimport
mongoexport
mongostat
mongotop
mongofiles
MongoDB工具 >MongoDB数据库工具 > mongo文件
mongofiles
¶该mongofiles
实用程序使您可以从命令行操作GridFS对象中存储在MongoDB实例中的文件。它提供了存储在文件系统中的对象与GridFS之间的接口,因此它特别有用。
所有mongofiles
命令的格式如下:
该mongofiles
命令的组件是:
mongofiles
。mongofiles
。重要
对于副本集,
mongofiles
只能从集合的primary中读取
。
运行mongofiles
系统命令行,而不是mongo
外壳。
从MongoDB 4.4开始,mongofiles
现已与MongoDB服务器分开发布,并使用其自己的版本控制(初始版本为)100
。以前,mongofiles
该版本与MongoDB Server一起发布,并使用了匹配的版本控制。
有关MongoDB 4.2或更早版本的
文档mongofiles
,请参阅该工具版本的MongoDB服务器文档:
本文档的版本100
的mongofiles
。
mongofiles
版本100
支持以下版本的MongoDB Server:
虽然mongofiles
在早期版本的MongoDB服务器上可以使用,但不能保证任何此类兼容性。
mongofiles
100
以下平台支持该版本:
x86_64 | 的ARM64 | PPC64LE | s390x | |
---|---|---|---|---|
亚马逊2 | ✓ | |||
亚马逊2013.03+ | ✓ | |||
Debian 10 | ✓ | |||
Debian 9 | ✓ | |||
Debian 8 | ✓ | |||
RHEL / CentOS 8 | ✓ | ✓ | ||
RHEL / CentOS 7 | ✓ | ✓ | ✓ | |
RHEL / CentOS 6 | ✓ | ✓ | ||
SUSE 12 | ✓ | |||
Ubuntu 20 | ✓ | |||
Ubuntu 18 | ✓ | ✓ | ✓ | ✓ |
Ubuntu 16 | ✓ | ✓ | ✓ | ✓ |
Windows 8及更高版本 | ✓ | |||
Windows Server 2012及更高版本 | ✓ | |||
macOS 10.12或更高版本 | ✓ |
为了连接到mongod
具有--auth
选项的强制授权,您必须使用
--username
和--password
选项。连接用户必须至少拥有:
mongofiles
自动创建符合FIPS的连接到一个mongod
/ mongos
被
配置为使用FIPS模式。
默认情况下,mongofiles
使用read preference
primary
。要覆盖默认值,您可以在
命令行选项或中指定
读取首--readPreference
选项。--uri connection string
如果您在URI字符串和中指定读取首选项,则--readPreference
该--readPreference
值将覆盖URI字符串中指定的读取首选项。
您可以同时指定
--writeConcern
和
选项。如果使用两个选项都指定了写入关注点,则该
值将覆盖URI字符串中指定的写入关注点。--uri connection string
--writeConcern
--help
¶返回有关mongofiles选项和用法的信息。
--verbose
,
-v
¶增加标准输出或日志文件中返回的内部报告的数量。-v
通过多次包含选项来增加详细程度(例如)-vvvvv
。
--version
¶返回mongofiles发行版号。
--uri
=<connectionString>
¶指定可解析的URI 连接字符串(用引号引起来)以连接到MongoDB部署。
有关连接字符串的组成部分的信息,请参阅“ 连接字符串URI格式”文档。
注意
对于TLS / SSL选项,请使用命令行选项代替TLS / SSL的 URI选项(从4.2开始可用)。
--host
=<hostname><:port>
¶为mongod
包含您的GridFS系统的主机指定一个可解析的主机名。默认情况下,mongofiles
尝试连接到在本地主机端口号上运行的MongoDB进程27017
。
(可选)指定端口号以连接在27017以外的端口上运行的MongoDB实例。
另外,当与选项一起使用时,您也可以直接在URI连接字符串中指定主机名
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--host
--uri
--port
=<port>
¶默认值:27017
指定MongoDB实例在其上侦听客户端连接的TCP端口。
另外,当与选项一起使用时,您也可以直接在URI连接字符串中指定端口
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--port
--uri
--ssl
¶启用与mongod
或mongos
已启用TLS / SSL支持的连接。
另外,当与选项一起使用时,您也可以直接在URI连接字符串中配置TLS / SSL支持
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--ssl
--uri
有关TLS / SSL和MongoDB的更多信息,请参阅 为客户端的TLS / SSL和 TLS / SSL配置配置mongod和mongos。
--sslCAFile
=<filename>
¶指定.pem
包含来自证书颁发机构的根证书链的文件。.pem
使用相对或绝对路径指定文件的文件名
。
另外,当与选项一起使用时,您也可以.pem
直接在URI连接字符串中指定文件
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--sslCAFile
--uri
有关TLS / SSL和MongoDB的更多信息,请参阅 为客户端的TLS / SSL和 TLS / SSL配置配置mongod和mongos。
--sslPEMKeyFile
=<filename>
¶指定.pem
同时包含TLS / SSL证书和密钥的文件。.pem
使用相对或绝对路径指定文件的文件名。
使用--ssl
选项连接到mongod
或mongos
已
CAFile
启用而未
启用时,此选项是必需的allowConnectionsWithoutCertificates
。
另外,当与选项一起使用时,您也可以.pem
直接在URI连接字符串中指定文件
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--sslPEMKeyFile
--uri
有关TLS / SSL和MongoDB的更多信息,请参阅 为客户端的TLS / SSL和 TLS / SSL配置配置mongod和mongos。
--sslPEMKeyPassword
=<value>
¶指定用于解密证书密钥文件的密码(即
--sslPEMKeyFile
)。--sslPEMKeyPassword
仅当证书密钥文件已加密时才使用该选项。在所有情况下,mongofiles都会从所有日志记录和报告输出中删除密码。
如果PEM文件中的私钥已加密,而您未指定该--sslPEMKeyPassword
选项,则mongofiles将提示输入密码。请参阅
TLS / SSL证书密码。
另外,当与选项一起使用时,也可以直接在URI连接字符串中指定密码
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--sslPEMKeyPassword
--uri
有关TLS / SSL和MongoDB的更多信息,请参阅 为客户端的TLS / SSL和 TLS / SSL配置配置mongod和mongos。
--sslCRLFile
=<filename>
¶指定.pem
包含证书吊销列表的文件。.pem
使用相对或绝对路径指定文件的文件名。
有关TLS / SSL和MongoDB的更多信息,请参阅 为客户端的TLS / SSL和 TLS / SSL配置配置mongod和mongos。
--sslAllowInvalidCertificates
¶绕过服务器证书的验证检查,并允许使用无效的证书。使用该
allowInvalidCertificates
设置时,MongoDB将使用无效证书记录为警告。
警告
尽管可用,但请避免使用该
--sslAllowInvalidCertificates
选项。如果必须使用--sslAllowInvalidCertificates
,请仅在不可能进行入侵的系统上使用该选项。
在不验证服务器证书的情况下连接到mongod
或
mongos
实例具有潜在的安全风险。如果仅需要禁用TLS / SSL证书中的主机名验证,请参阅--sslAllowInvalidHostnames
。
另外,当与选项一起使用时,您也可以直接在URI连接字符串中禁用证书验证
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--sslAllowInvalidCertificates
--uri
有关TLS / SSL和MongoDB的更多信息,请参阅 为客户端的TLS / SSL和 TLS / SSL配置配置mongod和mongos。
--sslAllowInvalidHostnames
¶禁用TLS / SSL证书中的主机名验证。允许 mongofile连接到MongoDB实例,即使其证书中的主机名与指定的主机名不匹配也是如此。
另外,当与选项一起使用时,也可以直接在URI连接字符串中禁用主机名验证
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--sslAllowInvalidHostnames
--uri
有关TLS / SSL和MongoDB的更多信息,请参阅 为客户端的TLS / SSL和 TLS / SSL配置配置mongod和mongos。
--username
=<username>
,
-u
=<username>
¶指定用于向使用身份验证的MongoDB数据库进行身份验证的用户名。与--password
和
--authenticationDatabase
选项结合使用。
另外,当与选项一起使用时,您也可以直接在URI连接字符串中指定用户名
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--username
--uri
--password
=<password>
,
-p
=<password>
¶指定用于对使用身份验证的MongoDB数据库进行身份验证的密码。与--username
和
--authenticationDatabase
选项结合使用。
要提示用户输入密码,请传递--username
不带选项--password
或将空字符串指定为
--password
值,如中所示。--password ""
另外,当与选项一起使用时,也可以直接在URI连接字符串中指定密码
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--password
--uri
--authenticationDatabase
=<dbname>
¶指定在其中--username
创建指定内容的认证数据库。请参阅身份验证数据库。
另外,当与选项一起使用时,您也可以直接在URI连接字符串中指定身份验证数据库
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--authenticationDatabase
--uri
--authenticationMechanism
=<name>
¶默认值:SCRAM-SHA-1
指定mongofiles实例用于对mongod
或进行身份验证的身份验证机制mongos
。
值 | 描述 |
---|---|
SCRAM-SHA-1 | 使用SHA-1哈希函数的RFC 5802标准咸化挑战响应身份验证机制。 |
SCRAM-SHA-256 | 使用SHA-256哈希函数的RFC 7677标准咸化挑战响应身份验证机制。 要求featureCompatibilityVersion设置为 |
MONGODB-X509 | MongoDB TLS / SSL证书认证。 |
GSSAPI(Kerberos) | 使用Kerberos的外部身份验证。此机制仅在MongoDB Enterprise中可用。 |
普通(LDAP SASL) | 使用LDAP的外部身份验证。您还可以PLAIN
用于验证数据库内用户。PLAIN 以纯文本形式传输密码。此机制仅在MongoDB Enterprise中可用
。 |
另外,当与选项一起使用时,您也可以直接在URI连接字符串中指定身份验证机制
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--authenticationMechanism
--uri
--gssapiServiceName
=<serviceName>
¶使用GSSAPI / Kerberos指定服务的名称。仅当服务未使用默认名称时才需要mongodb
。
此选项仅在MongoDB Enterprise中可用。
--gssapiHostName
=<hostname>
¶使用GSSAPI / Kerberos指定服务的主机名。仅当计算机的主机名与DNS解析的主机名不匹配时才需要。
此选项仅在MongoDB Enterprise中可用。
--db
=<database>
,
-d
=<database>
¶指定要在其上运行mongofiles的数据库的名称。
另外,当与选项一起使用时,也可以直接在URI连接字符串中指定数据库
。一起使用
和选项并指定有冲突的信息将导致错误。--uri
mongofiles
--db
--uri
--local
=<filename>
,
-l
=<filename>
¶指定用于获取和放置操作的文件的本地文件系统名称。
在mongofiles put和mongofiles get命令中,必需的<filename>
修饰符是指对象在GridFS中将具有的名称。mongofiles
假定这反映了本地文件系统上文件的名称。此设置将覆盖此默认设置。
--type
=<MIME>
¶提供指定MIME类型以描述插入GridFS存储的文件的功能。mongofiles
在默认操作中忽略此选项。
仅与mongofiles put操作一起使用。
--replace
,
-r
¶更改mongofile的行为,以用指定的本地文件替换现有GridFS对象,而不是添加具有相同名称的其他对象。
在默认操作中,mongofiles put选项不会覆盖文件 。
--prefix
=<string>
¶默认值:fs
要使用的GridFS前缀。
--writeConcern
=<document>
¶默认值:多数
指定mongofiles 执行的每个写入操作的写入关注点。
使用w选项将写关注点指定为文档:
如果还将包含写入关注点,则命令行
会覆盖URI字符串中指定的写入关注点。--uri
connection string
--writeConcern
--readPreference
=<string|document>
¶默认值:primary
指定读取偏好的
mongofiles。该--readPreference
选项可以采用:
如果仅指定读取首选项模式,则为字符串:
用引号引起来的文档,用于指定模式,可选的 读取首选项标签集和可选的maxStalenessSeconds:
如果指定maxStalenessSeconds,则该值必须大于或等于90。
如果读取的首选项也包含在中
,则命令行将
覆盖URI字符串中指定的读取的首选项。--uri connection string
--readPreference
list <prefix>
列出GridFS存储中的文件。在list
(例如<prefix>
)之后指定的字符
(可选)将返回的项目列表限制为以该字符串开头的文件。
search <string>