数据库:MongoDB命令行帮助解释
MongoDB命令:
- mongod
- mongos
- mongo
- perror
- mongoexport
- mongofiles
- mongoimport
- mongorestore
- Mongostat
MongoDB包中的核心组件包括:
- mongod 是 MongoDB 的核心服务器进程,负责数据存储和管理。
- mongos 是分片集群的路由进程,负责将请求路由到正确的分片并聚合结果。
- mongo 是 MongoDB 的交互式 shell,用于与数据库进行交互和管理。(6.0之后安装包就默认不包含这个了,由mongosh取代了mongo,并且需要自己额外下载一个mongodb shell)
下面是 MongoDB 启动时可以配置的命令行参数,用于调整其行为、性能、安全性等方面。下面对各个选项进行解释:
mongod:
首先,我们来看通用选项:
-
-h [ --help ]
:这个选项非常直观,用于显示帮助信息。当你不确定某个命令的作用时,这个选项可以提供详细的使用说明。 -
--version
:这个选项用于显示程序的版本信息,有助于确认你正在使用的是哪个版本,特别是在需要特定功能或进行故障排除时。 -
-f [ --config ] arg
:这个选项允许你指定一个配置文件。配置文件中可以包含其他命令行选项,这样就不必每次都手动输入这些选项,非常方便。 -
-v [ --verbose ] [=arg(=v)]
:这个选项用于增加输出的详细程度。你可以多次使用这个选项(如-vvvvv
)来获得更详细的输出,这对于调试或了解程序的内部工作非常有帮助。 -
--quiet
:与--verbose
相反,这个选项减少输出,使程序运行时更加安静。在不需要详细日志的情况下,这个选项非常有用。 -
--port arg
:这个选项用于指定程序监听的端口号。默认端口是27017,但你可以根据需要进行更改,特别是在有端口冲突或运行多个实例时。 -
--bind_ip arg
:这个选项允许你指定一个或多个IP地址,程序将只监听这些IP地址的连接。默认情况下,它只监听localhost,这对于提高安全性非常有帮助。 -
--bind_ip_all
:这个选项使程序绑定到所有可用的IP地址。这在你希望程序接受来自任何网络接口的连接时非常有用,但也意味着程序对所有网络都是可见的,因此需要谨慎使用。 -
--ipv6
:这个选项用于启用IPv6支持。默认情况下,IPv6是禁用的,但如果你的网络环境需要IPv6,这个选项可以确保程序正确地处理IPv6地址。 -
--listenBacklog arg (=2147483647)
:这个选项设置socket监听队列的大小。它决定了在连接被接受之前,可以有多少连接请求等待。默认值非常大,这在大多数情况下是合适的,但在资源受限的系统上可能需要调整。 -
--maxConns arg
:这个选项设置程序可以同时处理的最大连接数。默认值是1,000,000,这在大多数情况下已经足够,但在高流量环境中可能需要调整。 -
--logpath arg
:这个选项指定日志文件的路径。而不是将日志输出到标准输出,程序将日志写入指定的文件,这对于生产环境中的日志记录非常有用。 -
--logappend
:这个选项使程序将日志追加到指定的日志文件,而不是每次覆盖它。这确保了日志的连续性,有助于故障排除和审查。 -
--logRotate arg
:这个选项设置日志轮换的行为。你可以选择rename
或reopen
,这决定了当日志文件达到一定大小或在重新启动时如何处理日志文件。 -
--timeStampFormat arg
:这个选项允许你选择日志消息中时间戳的格式。选项有ctime
、iso8601-utc
或iso8601-local
,这有助于根据你的时区或格式偏好来解析日志。 -
--pidfilepath arg
:这个选项指定PID文件的完整路径。PID文件用于跟踪主进程的进程ID,这对于管理程序的生命周期非常有用,特别是在使用init系统时。 -
--timeZoneInfo arg
:这个选项指定时区信息的完整路径,例如/usr/share/zoneinfo
。这确保了程序使用正确的时区数据,特别是在处理时间相关的功能时。 -
--keyFile arg
:这个选项用于指定用于集群身份验证的私钥文件。它对于确保集群内部的安全通信至关重要,特别是在生产环境中。 -
--noauth
:这个选项使程序在没有安全身份验证的情况下运行。虽然这在开发或测试环境中可能方便,但在生产环境中不建议使用,因为它会降低安全性。 -
--setParameter arg
:这个选项允许你设置一个可配置的参数。这可以包括各种内部设置,具体取决于程序的配置选项。 -
--transitionToAuth
:这个选项用于在滚动升级过程中身份验证。它尝试在出站连接上进行身份验证,并且无论成功与否都继续进行,同时接受带有或不带有身份验证的传入连接。 -
--clusterAuthMode arg
:这个选项设置用于集群身份验证的模式。选项包括keyFile
、sendKeyFile
、sendX509
或x509
,具体取决于你希望使用的安全方法。 -
--networkMessageCompressors [=arg(=disabled)] (=snappy)
:这个选项指定用于网络消息的压缩器。默认情况下,它使用snappy
进行压缩,但你可以根据需要禁用它或选择其他压缩器。 -
--auth
:这个选项使程序在有安全身份验证的情况下运行。它确保只有经过身份验证的用户才能访问程序,这对于生产环境中的安全至关重要。 -
--clusterIpSourceWhitelist arg
:这个选项指定一个网络CIDR,定义了允许对__system
进行访问的源。这是一个安全措施,确保只有可信的网络可以进行某些管理操作。 -
--slowms arg (=100)
:这个选项设置被认为是慢操作的阈值(以毫秒为单位)。慢操作将被记录在日志中,这对于性能监控和优化非常有用。 -
--slowOpSampleRate arg (=1)
:这个选项设置慢操作被包含在日志中的频率。默认情况下,所有慢操作都会被记录,但你可以根据需要进行调整以减少日志的详细程度。 -
--profile arg
:这个选项设置剖析级别。你可以将其设置为0
(关闭)、1
(仅慢操作)或2
(所有操作)。剖析有助于识别性能瓶颈。 -
--cpu
:这个选项使程序定期显示CPU和IO等待利用率。这有助于监控程序的性能。 -
--sysinfo
:这个选项打印一些诊断系统信息。它可以在故障排除或了解系统状态时提供帮助。 -
--noIndexBuildRetry
:这个选项防止程序重新尝试因关闭而中断的索引构建。这在你希望管理索引构建过程时非常有用。 -
--noscripting
:这个选项禁用脚本引擎。如果不需要脚本功能,禁用它可以提高性能。 -
--notablescan
:这个选项防止表扫描。如果希望强制使用索引以提高查询性能,这非常有用。
接下来是Windows服务控制管理器选项:
-
--install
:这个选项将程序安装为Windows服务。它在你希望程序作为服务在后台运行时非常有用。 -
--remove
:这个选项从系统中移除安装的Windows服务。它在你不再需要服务或需要更新它时非常有用。 -
--reinstall
:这个选项重新安装Windows服务。它相当于先移除再安装,确保服务的配置是最新的。 -
--serviceName arg
:这个选项指定安装的Windows服务的名称。它有助于识别和管理多个服务。 -
--serviceDisplayName arg
:这个选项设置服务的显示名称。它在用户界面中更易读,有助于识别服务。 -
--serviceDescription arg
:这个选项提供服务的描述。它有助于解释服务的作用,特别是在管理控制台中。 -
--serviceUser arg
:这个选项指定服务执行的用户账户。它需要具有运行服务所需的适当权限。 -
--servicePassword arg
:这个选项指定用于身份验证serviceUser
的密码。它确保服务可以正确地进行身份验证。
现在是复制选项:
--oplogSize arg
:这个选项设置复制操作日志的大小(以MB为单位)。操作日志用于在副本集成员之间同步数据。默认情况下,它是磁盘空间的5%,但你可以根据需要进行调整。
接下来是主从复制选项(已弃用,建议使用副本集):
-
--master
:这个选项使程序在主模式下运行。主服务器可以接受写操作,并将这些操作复制到从服务器。 -
--slave
:这个选项使程序在从模式下运行。从服务器复制主服务器的操作,但不接受写操作。 -
--source arg
:这个选项指定主服务器的地址(<server:port>
),从服务器应从该地址复制数据。 -
--only arg
:这个选项指定从服务器应复制的单个数据库。它限制了复制到特定的数据集。 -
--slavedelay arg
:这个选项设置从服务器应用主服务器操作的延迟(以秒为单位)。它有助于减轻主服务器的负载或管理数据的延迟。 -
--autoresync
:这个选项使从服务器在数据过时或与主服务器不同步时自动重新同步。它确保从服务器保持最新的数据。
接下来是副本集选项:
-
--replSet arg
:这个选项指定副本集的名称和可选的种子主机列表。副本集是一组维护相同数据集的服务器,提供高可用性和数据冗余。 -
--replIndexPrefetch arg
:这个选项设置索引预取行为。选项包括none
、_id_only
或all
,影响副本集成员如何预取索引以提高性能。 -
--enableMajorityReadConcern [=arg(=1)]
:这个选项启用多数读关注。它确保读操作反映了大多数副本集成员的写操作,提供了强一致性。
接下来是分片选项:
-
--configsvr
:这个选项声明程序是分片集群的配置服务器。它使用默认端口27019,并将数据存储在/data/configdb
中。 -
--shardsvr
:这个选项声明程序是分片集群的分片服务器。它使用默认端口27018,并处理分片数据。
现在是SSL选项:
-
--sslOnNormalPorts
:这个选项在配置的端口上使用SSL。它确保数据在传输过程中加密,提高了通信的安全性。 -
--sslMode arg
:这个选项设置SSL操作模式。选项包括disabled
、allowSSL
、preferSSL
或requireSSL
,具体取决于你的安全要求。 -
--sslPEMKeyFile arg
:这个选项指定包含SSL证书和私钥的PEM文件。它用于服务器的SSL身份验证。 -
--sslPEMKeyPassword arg
:这个选项指定PEM文件的密码。它确保PEM文件的访问是安全的。 -
--sslClusterFile arg
:这个选项用于内部SSL身份验证的密钥文件。它确保集群内部的通信是安全的。 -
--sslClusterPassword arg
:这个选项指定用于身份验证sslClusterFile
的密码。它确保只有具有正确密码的服务器才能加入集群。 -
--sslCAFile arg
:这个选项指定用于SSL的证书颁发机构(CA)文件。它用于验证服务器的SSL证书。 -
--sslClusterCAFile arg
:这个选项指定用于验证远程服务器的CA,适用于出站连接。它确保连接到的服务器是可信的。 -
--sslCRLFile arg
:这个选项指定SSL证书吊销列表(CRL)文件。它用于确保不会接受已吊销的证书。 -
--sslDisabledProtocols arg
:这个选项指定要禁用的TLS协议的逗号分列表(例如TLS1_0,TLS1_1,TLS1_2
)。它有助于强制使用更安全的协议。 -
--sslWeakCertificateValidation
:这个选项允许服务器在没有有效证书的情况下连接,但不建议用于生产环境,因为它会降低安全性。 -
--sslAllowConnectionsWithoutCertificates
:这个选项允许没有证书的连接,但不建议用于生产环境,因为它会降低安全性。 -
--sslAllowInvalidHostnames
:这个选项允许服务器证书提供不匹配的主机名,但不建议用于生产环境,因为它会降低安全性。 -
--sslAllowInvalidCertificates
:这个选项允许连接到具有无效证书的服务器,但不建议用于生产环境,因为它会降低安全性。 -
--sslFIPSMode
:这个选项在启动时激活FIPS 140-2模式,确保使用符合FIPS标准的加密。
最后是存储选项:
-
--storageEngine arg
:这个选项指定要使用的存储引擎。默认情况下,如果不存在数据文件,它使用wiredTiger
,但你可以根据需要选择其他引擎。 -
--dbpath arg
:这个选项指定数据文件的目录。默认情况下,它使用/data/db
,但你可以根据需要进行调整。 -
--directoryperdb
:这个选项使每个数据库存储在单独的目录中。它有助于组织和管理大型或多个数据库。 -
--noprealloc
:这个选项禁用数据文件的预分配。虽然这可能会减少磁盘使用,但可能会导致更频繁的磁盘I/O,从而影响性能。 -
--nssize arg (=16)
:这个选项设置新数据库的.ns
文件大小(以MB为单位)。它影响命名空间的组织。 -
--quota
:这个选项限制每个数据库可以使用的文件数量(默认为8)。它有助于防止单个数据库消耗过多的磁盘空间。 -
--quotaFiles arg
:这个选项设置每个数据库允许的文件数量,意味着--quota
。它确保每个数据库在磁盘使用上有明确的限制。 -
--smallfiles
:这个选项使用较小的默认文件大小。它在磁盘空间有限或处理较小数据库时非常有用。 -
--syncdelay arg (=60)
:这个选项设置磁盘同步的秒数。较低的值可以提高数据的持久性,但可能会降低性能。 -
--upgrade
:这个选项在需要时升级数据库。它确保数据格式是最新的,与程序的当前版本兼容。 -
--repair
:这个选项对所有数据库运行修复操作。它在检测到数据损坏或不一致时非常有用。 -
--repairpath arg
:这个选项指定修复文件的根目录。它用于在运行修复操作时存储临时数据。 -
--journal
:这个选项启用日志。日志有助于确保在系统故障后恢复数据的一致性。 -
--nojournal
:这个选项禁用日志。虽然这可能会提高性能,但会增加数据损坏的风险。 -
--journalOptions arg
:这个选项设置日志的诊断选项。具体选项取决于程序的内部配置。 -
--journalCommitInterval arg
:这个选项设置将写操作分组并提交到日志的频率(以毫秒为单位)。较低的值可以提高数据的持久性,但可能会降低性能。
最后是WiredTiger选项:
-
--wiredTigerCacheSizeGB arg
:这个选项设置WiredTiger缓存的最大大小(以GB为单位)。它影响存储在内存中的数据量,从而影响性能。 -
--wiredTigerJournalCompressor arg (=snappy)
:这个选项设置用于日志记录的压缩器。默认情况下,它使用snappy
,但你可以根据需要选择其他压缩器。 -
--wiredTigerDirectoryForIndexes
:这个选项将索引和数据放在不同的目录中。它有助于管理存储布局,特别是在需要将索引和数据分开的存储系统上。 -
--wiredTigerCollectionBlockCompressor arg (=snappy)
:这个选项设置用于集合数据的块压缩器。默认情况下,它使用snappy
,但你可以根据需要选择其他压缩器。 -
--wiredTigerIndexPrefixCompression arg (=1)
:这个选项在行存储的叶页上使用前缀压缩。它有助于减少索引的存储空间。
mongos:
网络消息压缩器
--networkMessageCompressors arg (=snappy,zstd,zlib)
设置用于网络消息的压缩算法。多个算法可以用逗号分隔,例如snappy,zstd,zlib
。这些压缩算法用于减少网络流量。
常规选项
-
-h [ --help ]
显示帮助信息。 -
--version
显示当前 MongoDB 版本信息。 -
-f [ --config ] arg
指定配置文件,可以从文件加载额外的配置选项。 -
--configExpand arg
处理配置文件中的扩展指令(如:none
,exec
,rest
)。 -
--port arg
指定 MongoDB 监听的端口,默认是 27017。 -
--ipv6
启用 IPv6 支持,默认为禁用。 -
--listenBacklog arg (=2147483647)
设置套接字监听的最大排队大小。 -
--maxConns arg (=1000000)
设置允许的最大并发连接数。 -
--pidfilepath arg
指定进程 ID 文件的完整路径。如果没有设置,则不会创建 pid 文件。 -
--timeZoneInfo arg
指定时区信息目录的路径(例如:/usr/share/zoneinfo
)。 -
-v [ --verbose ] [=arg(=v)]
提高输出的详细程度(可以重复使用-v
增加详细度)。 -
--quiet
使输出更为简洁。 -
--logpath arg
指定日志文件路径。MongoDB 会将日志写入指定的文件,而不是输出到标准输出。 -
--logappend
使日志追加到指定日志文件,而不是覆盖。 -
--logRotate arg
设置日志旋转行为(rename
或reopen
)。 -
--timeStampFormat arg
设置日志中的时间戳格式。可以选择iso8601-utc
或iso8601-local
。 -
--setParameter arg
设置可配置的参数。 -
--keyFile arg
集群身份验证使用的私钥文件路径。 -
--clusterAuthMode arg
集群身份验证模式。可选值有keyFile
,sendKeyFile
,sendX509
,x509
。 -
--bind_ip arg
绑定的 IP 地址列表(逗号分隔),默认为localhost
。 -
--bind_ip_all
绑定到所有 IP 地址。 -
--noauth
禁用身份验证,允许无认证访问。 -
--transitionToAuth
在进行访问控制升级时使用。允许部分连接通过认证,其他连接不进行认证。 -
--slowms arg (=100)
设置查询慢日志的阈值(以毫秒为单位)。 -
--slowOpSampleRate arg (=1)
设置慢操作采样率。表示多少比例的慢操作会被记录。 -
--profileFilter arg
用于控制哪些操作会被记录在性能日志中。 -
--upgradeBackCompat
表示当前是升级过程的一部分。不会使用旧版本不支持的功能。 -
--downgradeBackCompat
表示当前是降级过程的一部分。不会使用新版本不支持的功能。
分片选项
-
--configdb arg
配置副本集连接字符串,用于与配置服务器通信。格式:<config replset name>/<host1:port>,<host2:port>,...
。 -
--localThreshold arg
设置节点被认为是本地的最大 ping 时间(以毫秒为单位)。默认是 15ms。 -
--test
运行单元测试。 -
--noscripting
禁用脚本引擎。
AWS IAM 选项
--awsIamSessionToken arg
用于临时凭证的 AWS Session Token。
Windows 服务管理选项
-
--install
安装 MongoDB 为 Windows 服务。 -
--remove
删除 MongoDB 的 Windows 服务。 -
--reinstall
重新安装 Windows 服务,相当于先移除再安装。 -
--serviceName arg
设置 Windows 服务的名称。 -
--serviceDisplayName arg
设置 Windows 服务的显示名称。 -
--serviceDescription arg
设置 Windows 服务的描述。 -
--serviceUser arg
设置用于运行服务的用户账号。 -
--servicePassword arg
设置用于认证服务用户的密码。
TLS 选项
-
--tlsOnNormalPorts
启用 TLS 对常规端口的支持。 -
--tlsMode arg
设置 TLS 操作模式。可选值:disabled
,allowTLS
,preferTLS
,requireTLS
。 -
--tlsCertificateKeyFile arg
指定用于 TLS 的证书和密钥文件路径。接收到的连接会始终使用该证书,若没有指定tlsClusterFile
,出站连接也会使用该证书。 -
--tlsCertificateKeyFilePassword arg
解锁 TLS 证书密钥文件的密码。 -
--tlsClusterFile arg
内部 TLS 认证的证书和密钥文件。 -
--tlsClusterPassword arg
内部认证密钥文件的密码。 -
--tlsCAFile arg
用于验证远程证书的证书颁发机构(CA)文件。也用于验证入站连接的远程证书。 -
--tlsClusterCAFile arg
用于验证入站连接的远程证书的 CA 文件。 -
--tlsCRLFile arg
用于验证证书撤销的证书撤销列表(CRL)文件。 -
--tlsDisabledProtocols arg
禁用的 TLS 协议列表(如:TLS1_0,TLS1_1,TLS1_2,TLS1_3
)。 -
--tlsAllowConnectionsWithoutCertificates
允许客户端连接时不提供证书。 -
--tlsAllowInvalidHostnames
允许服务器证书提供不匹配的主机名。 -
--tlsAllowInvalidCertificates
允许与具有无效证书的服务器建立连接。 -
--tlsCertificateSelector arg
从系统存储中选择 TLS 证书。 -
--tlsClusterCertificateSelector arg
从系统存储中选择用于内部 TLS 认证的 SSL/TLS 证书。 -
--tlsLogVersions arg
连接时记录的 TLS 协议版本(如:TLS1_0,TLS1_1,TLS1_2,TLS1_3
)。 -
--tlsClusterAuthX509ExtensionValue arg
用于集群身份验证的 X.509 扩展值。客户端必须提供包含此值的 X.509 扩展才能被视为集群成员。 -
--tlsClusterAuthX509Attributes arg
X.509 认证时,客户端必须提供与给定属性和值完全匹配的证书,才能被视为集群节点。
mongo
首先,我们来看数据库地址部分。这部分描述了如何指定要连接的 MongoDB 数据库。有几种不同的方法:
-
foo:这表示在本地机器上的
foo
数据库。因此,如果 MongoDB 服务器运行在默认端口上,mongo foo
就会连接到本地的foo
数据库。 -
192.168.0.5/foo:这里,
192.168.0.5
是 MongoDB 服务器的 IP 地址,foo
是数据库的名称。因此,mongo 192.168.0.5/foo
会连接到位于192.168.0.5
的foo
数据库。 -
192.168.0.5:9999/foo:这与前一个类似,但指定了一个非默认端口
9999
。因此,mongo 192.168.0.5:9999/foo
会连接到位于192.168.0.5
的9999
端口上的foo
数据库。
接下来,我们来看选项部分。这里有许多不同的选项,我将逐一解析:
-
--shell
:在执行文件后启动 shell。因此,如果你有一个包含 MongoDB 命令的文件,可以使用这个选项在执行后进入交互式 shell。 -
--nodb
:启动 MongoDB 时不连接到任何数据库。这意味着你不需要在启动时指定数据库地址,但稍后需要手动连接。 -
--norc
:启动时不运行~/.mongorc.js
文件。这个文件通常包含启动时自动执行的 MongoDB 命令,因此使用这个选项可以跳过这些自定义设置。 -
--quiet
:减少输出的详细程度。这在你不需要看到所有日志信息时非常有用,使界面更加简洁。 -
--port arg
:指定要连接的端口号。例如,--port 27017
会连接到 MongoDB 的默认端口。 -
--host arg
:指定要连接的服务器的主机名或 IP 地址。例如,--host 192.168.0.5
会连接到该 IP 地址的 MongoDB 服务器。 -
--eval arg
:在 MongoDB shell 中评估 JavaScript 代码。例如,--eval "db.collection.find()"
会执行该查询。 -
-h [ --help ]
:显示使用信息。这在你忘记某个选项的含义或需要快速参考时非常有用。 -
--version
:显示 MongoDB shell 的版本。这在需要确认你正在使用的版本时非常有用,特别是在处理兼容性问题时。 -
--verbose
:增加详细程度。如果你需要看到更多关于 MongoDB shell 正在做什么的信息,这个选项可以提供帮助。 -
--ipv6
:启用 IPv6 支持。默认情况下,MongoDB shell 使用 IPv4,因此如果需要连接到 IPv6 地址的服务器,需要使用这个选项。 -
--disableJavaScriptJIT
:禁用 JavaScript 的即时编译。这可能会影响 shell 中 JavaScript 代码的执行性能,但在某些情况下可能需要。 -
--disableJavaScriptProtection
:允许自动 marshalling JavaScript 函数。这在你有特定的 JavaScript 函数需要在 shell 中使用时非常有用。 -
--ssl
:使用 SSL 连接。这确保了数据在 MongoDB shell 和服务器之间的传输是加密的,增加了安全性。 -
--sslCAFile arg
:指定包含证书颁发机构(CA)证书的文件,用于验证服务器的 SSL 证书。这对于确保你连接到的是正确的服务器至关重要。 -
--sslPEMKeyFile arg
:指定包含 PEM 格式的证书和密钥的文件,用于 client SSL 身份验证。这在需要向服务器提供 client 证书时非常有用。 -
--sslPEMKeyPassword arg
:指定用于解密--sslPEMKeyFile
中密钥的密码。这在密钥是加密的,需要密码才能访问时非常有用。 -
--sslCRLFile arg
:指定包含证书吊销列表(CRL)的文件,用于验证服务器的 SSL 证书是否被吊销。这增加了额外的安全层。 -
--sslAllowInvalidHostnames
:允许连接到主机名不匹配证书的服务器。这在使用自签名证书或在开发环境中时非常有用,但不建议在生产环境中使用。 -
--sslAllowInvalidCertificates
:允许连接到具有无效 SSL 证书的服务器。这在需要连接到使用自签名证书的服务器时非常有用,但同样不建议在生产环境中使用。 -
--sslFIPSMode
:在启动时激活 FIPS 140-2 模式,确保使用符合 FIPS 标准的加密算法。 -
--retryWrites
:在遇到瞬时网络错误时自动重试写操作。这在处理不稳定的网络连接时可以提高应用程序的弹性。 -
--disableImplicitSessions
:不自动创建和使用隐式会话。这在你希望手动管理会话时非常有用,特别是在需要精确控制会话时。 -
--jsHeapLimitMB arg
:设置 JavaScript 作用域的堆大小限制(以 MB 为单位)。这可以防止 shell 由于内存不足而崩溃。
现在,我们来看身份验证选项:
-
-u [ --username ] arg
:指定用于身份验证的用户名。例如,-u "myUser"
会提示你输入该用户的密码。 -
-p [ --password ] arg
:指定用于身份验证的密码。如果在命令行中省略,系统会提示你输入。 -
--authenticationDatabase arg
:指定包含用户凭据的数据库。如果省略,它会使用你正在连接的数据库。 -
--authenticationMechanism arg
:指定要使用的身份验证机制,例如SCRAM-SHA-1
或GSSAPI
。 -
--gssapiServiceName arg (=mongodb)
:在使用 GSSAPI/Kerberos 身份验证时指定服务名。默认值为mongodb
。 -
--gssapiHostName arg
:指定用于 GSSAPI/Kerberos 身份验证的远程主机名。这确保了 Kerberos 票据请求针对正确的主机。
通过以上解析,我们可以更清晰地理解每个 MongoDB 命令行参数的作用,从而在实际操作中更加得心应手。
好的,让我们来细致地解析这些参数:
db address
:这是 MongoDB 服务器的地址。它可以是 localhost、IP 地址,甚至是带有端口号和数据库名的 URI。例如:foo
:连接到本地的foo
数据库。192.168.0.5/foo
:连接到 IP 地址为192.168.0.5
的机器上的foo
数据库。192.168.0.5:9999/foo
:连接到 IP 地址为192.168.0.5
的机器上,端口号为9999
的foo
数据库。
接下来是选项:
-
--shell
:执行文件后启动 shell。因此,如果我有一个包含 MongoDB 命令的文件,使用这个选项可以在执行文件中的命令后进入交互式 shell。 -
--nodb
:不连接到任何 MongoDB 服务器。这意味着在启动时不需要指定db address
。这在某些情况下非常有用,比如在 shell 中进行脚本编写,但不需要立即连接到数据库。 -
--norc
:不运行".mongorc.js"
文件。通常,MongoDB 在启动时会执行这个文件中的命令。使用这个选项可以跳过这些自定义设置,进行干净的启动。 -
--quiet
:减少输出。这在不需要看到所有日志信息时非常有用,可以保持终端的整洁。 -
--port arg
:指定要连接的端口号。默认情况下,MongoDB 使用27017
,但如果服务器在不同的端口上运行,可以使用这个选项进行指定。 -
--host arg
:指定 MongoDB 服务器的主机名或 IP 地址。这在连接到远程服务器或在本地有多个 MongoDB 实例时非常有用。 -
--eval arg
:在 shell 中评估 JavaScript 代码。例如,可以使用--eval "db.collection.find()"
来执行查询。 -
-h [ --help ]
:显示使用信息。这个选项在任何时候都需要查看可用选项时都非常有用。 -
--version
:显示版本信息。这在需要确认 MongoDB shell 的版本时非常有用,特别是在处理兼容性问题时。 -
--verbose
:增加详细输出。这在需要更多关于 shell 操作的信息时非常有用,特别是在进行故障排除时。 -
--ipv6
:启用 IPv6 支持。默认情况下,MongoDB 使用 IPv4,但如果需要连接到 IPv6 地址的服务器,这个选项是必不可少的。 -
--disableJavaScriptJIT
:禁用 JavaScript 的即时编译。这可能会影响 shell 中 JavaScript 代码的执行性能,但在某些情况下,如安全限制,可能需要这个选项。 -
--disableJavaScriptProtection
:允许自动 marshalling JavaScript 函数。这在需要在 shell 中使用特定的 JavaScript 函数时非常有用,但需要注意安全问题。 -
--ssl
:使用 SSL 连接。这确保了数据在 MongoDB shell 和服务器之间的传输是加密的,增加了额外的安全层。 -
--sslCAFile arg
:指定包含 CA 证书的文件,用于验证服务器的 SSL 证书。这在连接到使用 SSL 的服务器时非常重要,确保服务器是可信的。 -
--sslPEMKeyFile arg
:指定包含 PEM 格式的证书和密钥的文件,用于 client SSL 身份验证。这在需要向服务器提供 client 证书时非常有用。 -
--sslPEMKeyPassword arg
:指定用于解密--sslPEMKeyFile
中密钥的密码。如果密钥是加密的,这个选项是必要的。 -
--sslCRLFile arg
:指定包含证书吊销列表(CRL)的文件,用于验证服务器的 SSL 证书是否被吊销。这增加了额外的安全层,防止连接到使用已吊销证书的服务器。 -
--sslAllowInvalidHostnames
:允许连接到主机名不匹配证书的服务器。这在使用自签名证书或在开发环境中时非常有用,但不建议在生产环境中使用,因为这会降低安全性。 -
--sslAllowInvalidCertificates
:允许连接到具有无效 SSL 证书的服务器。这在需要连接到使用自签名证书的服务器时非常有用,但同样不建议在生产环境中使用,因为这会降低安全性。 -
--sslFIPSMode
:在启动时激活 FIPS 140-2 模式。这确保 shell 使用符合 FIPS 标准的加密算法,适用于需要高级安全性的环境。 -
--retryWrites
:在遇到瞬时网络错误时自动重试写操作。这在处理不稳定的网络连接时可以提高应用程序的弹性。 -
--disableImplicitSessions
:不自动创建和使用隐式会话。这在需要手动管理会话时非常有用,特别是在需要精确控制会话时。 -
--jsHeapLimitMB arg
:设置 JavaScript 作用域的堆大小限制(以 MB 为单位)。这可以防止 shell 由于内存不足而崩溃,特别是在处理大型数据集时。
最后,身份验证选项:
-
-u [ --username ] arg
:指定用于身份验证的用户名。例如,-u "myUser"
会提示输入该用户的密码。 -
-p [ --password ] arg
:指定用于身份验证的密码。如果在命令行中省略,系统会提示输入,这在保持安全时非常有用。 -
--authenticationDatabase arg
:指定包含用户凭据的数据库。如果省略,它会使用正在连接的数据库,但有时需要明确指定,特别是在用户管理跨多个数据库时。 -
--authenticationMechanism arg
:指定要使用的身份验证机制,如SCRAM-SHA-1
或GSSAPI
。这在连接到需要特定身份验证方法的服务器时非常重要。 -
--gssapiServiceName arg (=mongodb)
:在使用 GSSAPI/Kerberos 身份验证时指定服务名。默认值为mongodb
,但有时需要根据 Kerberos 配置进行更改。 -
--gssapiHostName arg
:指定用于 GSSAPI/Kerberos 身份验证的远程主机名。这确保了 Kerberos 票据请求针对正确的主机,特别是在主机名不明显时。
perror`
perror
是一个用于打印系统错误代码或 MySQL 错误代码描述的工具。
参数详解
-?, --help
:显示帮助信息并退出。-I, --info
:与--help
同义。-s, --silent
:仅打印错误消息。-v, --verbose
:打印错误代码和消息(默认)。-V, --version
:显示版本信息并退出。
变量和布尔选项
verbose
:默认为TRUE
。
mongodump`
mongodump
是一个用于将 MongoDB 服务器的内容导出为 .bson 文件的工具。
参数详解
mongodump <options>
:导出运行中服务器的内容。
一般选项
/help
:打印用法。/version
:打印工具版本并退出。
详细选项
-
verbosity options
:/v, /verbose:<level>
:增加详细日志输出(可以多次使用以增加详细程度)。/quiet
:隐藏所有日志输出。
-
connection options
:/h, /host:<hostname>
:连接到指定的 MongoDB 主机。/port:<port>
:服务器端口。
-
ssl options
:/ssl
:连接到启用了 SSL 的mongod
或mongos
。/sslCAFile:<filename>
:包含根证书链的 .pem 文件。/sslPEMKeyFile:<filename>
:包含证书和密钥的 .pem 文件。/sslPEMKeyPassword:<password>
:解密 sslPEMKeyFile 的密码。/sslCRLFile:<filename>
:包含证书吊销列表的 .pem 文件。/sslAllowInvalidCertificates
:绕过服务器证书的验证。/sslAllowInvalidHostnames
:绕过 TLS/SSL 证书中的主机名验证。/sslFIPSMode
:使用安装的 OpenSSL 库的 FIPS 模式。
-
authentication options
:/u, /username:<username>
:用于身份验证的用户名。/p, /password:<password>
:用于身份验证的密码。/authenticationDatabase:<database-name>
:用户凭据所在的认证数据库。/authenticationMechanism:<mechanism>
:使用的身份验证机制。
-
namespace options
:/d, /db:<database-name>
:指定要使用的数据库。/c, /collection:<collection-name>
:指定要使用的集合。
-
uri options
:/uri:mongodb-uri
:MongoDB URI 连接字符串。
-
query options
:/q, /query:
:提供 JSON 字符串作为查询过滤器。/queryFile:
:指定包含查询过滤器的文件路径。/readPreference:<string>|<json>
:指定读取偏好。/forceTableScan
:强制进行表扫描。
-
output options
:/o, /out:<directory-path>
:指定输出目录。/gzip
:使用 Gzip 压缩输出。/repair
:尝试从损坏的数据文件中恢复文档。/oplog
:使用 oplog 进行快照。/archive:<file-path>
:以归档格式输出到指定路径。/dumpDbUsersAndRoles
:转储用户和角色定义。/excludeCollection:<collection-name>
:从转储中排除指定集合。/excludeCollectionsWithPrefix:<collection-prefix>
:排除所有以指定前缀开头的集合。/j, /numParallelCollections:
:指定并行转储的集合数量(默认为 4)。/viewsAsCollections
:将视图导出为普通集合。
以下是 mongoexport
和 mongofiles
工具的参数详细解释:
mongoexport
mongoexport
是一个数据库工具,用于将 MongoDB 实例中存储的数据导出为 JSON 或 CSV 格式。
一般选项
/help
:打印用法。/version
:打印工具版本并退出。
详细选项
/v, /verbose:<level>
:增加详细日志输出(可以多次包含以增加详细程度,例如-vvvvv
,或者指定一个数值,例如--verbose=N
)。/quiet
:隐藏所有日志输出。
连接选项
/h, /host:<hostname>
:要连接的 MongoDB 主机(对于副本集可以使用setname/host1,host2
)。/port:<port>
:服务器端口(也可以使用--host hostname:port
)。
SSL 选项
/ssl
:连接到启用了 SSL 的mongod
或mongos
。/sslCAFile:<filename>
:包含证书授权机构的根证书链的.pem
文件。/sslPEMKeyFile:<filename>
:包含证书和密钥的.pem
文件。/sslPEMKeyPassword:<password>
:解密sslPEMKeyFile
的密码。/sslCRLFile:<filename>
:包含证书吊销列表的.pem
文件。/sslAllowInvalidCertificates
:绕过服务器证书的验证。/sslAllowInvalidHostnames
:绕过服务器名称的验证。/sslFIPSMode
:使用安装的 OpenSSL 库的 FIPS 模式。
认证选项
/u, /username:<username>
:用于认证的用户名。/p, /password:<password>
:用于认证的密码。/authenticationDatabase:<database-name>
:保存用户凭据的数据库。/authenticationMechanism:<mechanism>
:使用的认证机制。
命名空间选项
/d, /db:<database-name>
:要使用的数据库。/c, /collection:<collection-name>
:要使用的集合。
URI 选项
/uri:mongodb-uri
:MongoDB URI 连接字符串。
输出选项
/f, /fields:<field>[,<field>]*
:字段名的逗号分隔列表(导出 CSV 时必需)例如-f "name,age"
。/fieldFile:<filename>
:包含字段名的文件 - 每行一个字段名。/type:<type>
:输出格式,要么是json
要么是csv
(默认为json
)。/o, /out:<filename>
:输出文件;如果没有指定,则使用 stdout。/jsonArray
:输出到 JSON 数组而不是每行一个对象。/pretty
:输出格式化为人类可读的 JSON。/noHeaderLine
:导出 CSV 数据时不包含字段名列表在第一行。
查询选项
/q, /query:<json>
:查询过滤器,作为一个 JSON 字符串,例如{x:{$gt:1}}
。/queryFile:<filename>
:包含查询过滤器的文件路径(JSON)。/k, /slaveOk
:如果可用,允许从辅助节点读取(默认为false
)。/readPreference:<string>|<json>
:指定读取偏好。/forceTableScan
:强制执行表扫描(不使用$snapshot
)。/skip:<count>
:要跳过的文档数量。/limit:<count>
:限制要导出的文档数量。/sort:<json>
:排序顺序,作为一个 JSON 字符串,例如{x:1}
。/assertExists
:如果指定,集合不存在则导出失败(默认为false
)。
mongofiles
mongofiles
是一个用于在命令行中操作 GridFS 文件的工具。
一般选项
/help
:打印用法。/version
:打印工具版本并退出。
详细选项
/v, /verbose:<level>
:增加详细日志输出。/quiet
:隐藏所有日志输出。
连接选项
/h, /host:<hostname>
:要连接的 MongoDB 主机。/port:<port>
:服务器端口。
SSL 选项
/ssl
:连接到启用了 SSL 的mongod
或mongos
。/sslCAFile:<filename>
:包含根证书链的.pem
文件。/sslPEMKeyFile:<filename>
:包含证书和密钥的.pem
文件。/sslPEMKeyPassword:<password>
:解密sslPEMKeyFile
的密码。/sslCRLFile:<filename>
:包含证书吊销列表的.pem
文件。/sslAllowInvalidCertificates
:绕过服务器证书的验证。/sslAllowInvalidHostnames
:绕过服务器名称的验证。/sslFIPSMode
:使用安装的 OpenSSL 库的 FIPS 模式。
认证选项
/u, /username:<username>
:用于认证的用户名。/p, /password:<password>
:用于认证的密码。/authenticationDatabase:<database-name>
:保存用户凭据的数据库。/authenticationMechanism:<mechanism>
:使用的认证机制。
URI 选项
/uri:mongodb-uri
:MongoDB URI 连接字符串。
存储选项
/d, /db:<database-name>
:要使用的数据库(默认为test
)。/l, /local:<filename>
:put|get 的本地文件名。/t, /type:
:put 的内容/MIME 类型(可选)。/r, /replace
:put 后删除具有相同名称的其他文件。/prefix:<prefix>
:要使用的 GridFS 前缀(默认为fs
)。/writeConcern:<write-concern>
:写入关注选项。
查询选项
/readPreference:<string>|<json>
:指定读取偏好。
以下是 mongoimport
和 mongorestore
工具的参数详细解释:
mongoimport
mongoimport
是一个用于将 CSV、TSV 或 JSON 数据导入 MongoDB 的工具。
一般选项
/help
:打印用法。/version
:打印工具版本并退出。
详细选项
/v, /verbose:<level>
:增加详细日志输出(可以多次包含以增加详细程度,例如-vvvvv
,或者指定一个数值,例如--verbose=N
)。/quiet
:隐藏所有日志输出。
连接选项
/h, /host:<hostname>
:要连接的 MongoDB 主机(对于副本集可以使用setname/host1,host2
)。/port:<port>
:服务器端口(也可以使用--host hostname:port
)。
SSL 选项
/ssl
:连接到启用了 SSL 的mongod
或mongos
。/sslCAFile:<filename>
:包含证书授权机构的根证书链的.pem
文件。/sslPEMKeyFile:<filename>
:包含证书和密钥的.pem
文件。/sslPEMKeyPassword:<password>
:解密sslPEMKeyFile
的密码。/sslCRLFile:<filename>
:包含证书吊销列表的.pem
文件。/sslAllowInvalidCertificates
:绕过服务器证书的验证。/sslAllowInvalidHostnames
:绕过服务器名称的验证。/sslFIPSMode
:使用安装的 OpenSSL 库的 FIPS 模式。
认证选项
/u, /username:<username>
:用于认证的用户名。/p, /password:<password>
:用于认证的密码。/authenticationDatabase:<database-name>
:保存用户凭据的数据库。/authenticationMechanism:<mechanism>
:使用的认证机制。
命名空间选项
/d, /db:<database-name>
:要使用的数据库。/c, /collection:<collection-name>
:要使用的集合。
URI 选项
/uri:mongodb-uri
:MongoDB URI 连接字符串。
输入选项
/f, /fields:<field>[,<field>]*
:字段名的逗号分隔列表,例如-f name,age
。/fieldFile:<filename>
:包含字段名的文件,每行一个字段名。/file:<filename>
:要导入的文件;如果没有指定,则使用标准输入。/headerline
:使用输入源的第一行作为字段列表(仅 CSV 和 TSV)。/jsonArray
:将输入源视为 JSON 数组。/parseGrace:<grace>
:控制类型转换失败时的行为,可以是autoCast
、skipField
、skipRow
或stop
(默认为stop
)。/type:<type>
:要导入的输入格式:json、csv 或 tsv(默认为json
)。/columnsHaveTypes
:指示字段列表(来自-fields
、-fieldFile
或-headerline
)指定了类型。
导入选项
/drop
:在插入文档前删除集合。/ignoreBlanks
:在 CSV 和 TSV 中忽略空值字段。/maintainInsertionOrder
:按输入源中的顺序插入文档。/j, /numInsertionWorkers:<number>
:并发执行的插入操作数量(默认为 1)。/stopOnError
:在第一个插入/更新错误时停止导入。/mode:[insert|upsert|merge]
:插入模式,insert
仅插入,upsert
插入或替换现有文档,merge
插入或修改现有文档(默认为insert
)。/upsertFields:<field>[,<field>]*
:用于查询部分的字段,当--mode
设置为upsert
或merge
时使用。/writeConcern:<write-concern-specifier>
:写入关注选项。/bypassDocumentValidation
:绕过文档验证。
mongorestore
mongorestore
是一个用于将 mongodump
生成的备份恢复到运行中的服务器的工具。
一般选项
/help
:打印用法。/version
:打印工具版本并退出。
详细选项
/v, /verbose:<level>
:增加详细日志输出。/quiet
:隐藏所有日志输出。
连接选项
/h, /host:<hostname>
:要连接的 MongoDB 主机。/port:<port>
:服务器端口。
SSL 选项
/ssl
:连接到启用了 SSL 的mongod
或mongos
。/sslCAFile:<filename>
:包含证书授权机构的根证书链的.pem
文件。/sslPEMKeyFile:<filename>
:包含证书和密钥的.pem
文件。/sslPEMKeyPassword:<password>
:解密sslPEMKeyFile
的密码。/sslCRLFile:<filename>
:包含证书吊销列表的.pem
文件。/sslAllowInvalidCertificates
:绕过服务器证书的验证。/sslAllowInvalidHostnames
:绕过服务器名称的验证。/sslFIPSMode
:使用安装的 OpenSSL 库的 FIPS 模式。
认证选项
/u, /username:<username>
:用于认证的用户名。/p, /password:<password>
:用于认证的密码。/authenticationDatabase:<database-name>
:保存用户凭据的数据库。/authenticationMechanism:<mechanism>
:使用的认证机制。
URI 选项
/uri:mongodb-uri
:MongoDB URI 连接字符串。
命名空间选项
/d, /db:<database-name>
:从 BSON 文件恢复时使用的数据库。/c, /collection:<collection-name>
:从 BSON 文件恢复时使用的集合。/excludeCollection:<collection-name>
:在恢复期间跳过指定的集合。/excludeCollectionsWithPrefix:<collection-prefix>
:跳过具有给定前缀的集合。/nsExclude:<namespace-pattern>
:排除匹配的命名空间。/nsInclude:<namespace-pattern>
:包括匹配的命名空间。/nsFrom:<namespace-pattern>
:重命名匹配的命名空间,必须有匹配的nsTo
。/nsTo:<namespace-pattern>
:重命名匹配的命名空间,必须有匹配的nsFrom
。
输入选项
/objcheck
:在插入前验证所有对象。/oplogReplay
:回放 oplog 以进行点时间恢复。/oplogLimit:<seconds>[:ordinal]
:只包括在提供的 Timestamp 之前的 oplog 条目。/oplogFile:<filename>
:用于回放 oplog 的文件。/archive:<filename>
:从指定的归档文件恢复。/restoreDbUsersAndRoles
:恢复给定数据库的用户和角色定义。/dir:<directory-name>
:输入目录,使用-
表示标准输入。/gzip
:解压缩 gzip 压缩的输入。
恢复选项
/drop
:在导入前删除每个集合。/dryRun
:在不导入任何内容的情况下查看摘要。/writeConcern:<write-concern>
:写入关注选项。/noIndexRestore
:不恢复索引。/noOptionsRestore
:不恢复集合选项。/keepIndexVersion
:不更新索引版本。/maintainInsertionOrder
:在恢复期间保持文档顺序。/j, /numParallelCollections:
:并行恢复的集合数量(默认为 4)。/numInsertionWorkersPerCollection:
:每个集合并发执行的插入操作数量(默认为 1)。/stopOnError
:在遇到插入错误时停止恢复。/bypassDocumentValidation
:绕过文档验证。
以下是 mongostat
工具的参数详细解释:
一般选项
/help
:打印用法信息。/version
:打印工具版本并退出。
详细选项
/v, /verbose:<level>
:增加详细日志输出(可以多次包含以增加详细程度,例如-vvvvv
,或者指定一个数值,例如--verbose=N
)。/quiet
:隐藏所有日志输出。
连接选项
/h, /host:<hostname>
:要连接的 MongoDB 主机(可以用逗号分隔多个主机)。/port:<port>
:服务器端口(也可以使用--host hostname:port
)。
SSL 选项
/ssl
:连接到启用了 SSL 的mongod
或mongos
。/sslCAFile:<filename>
:包含证书授权机构的根证书链的.pem
文件。/sslPEMKeyFile:<filename>
:包含证书和密钥的.pem
文件。/sslPEMKeyPassword:<password>
:解密sslPEMKeyFile
的密码。/sslCRLFile:<filename>
:包含证书吊销列表的.pem
文件。/sslAllowInvalidCertificates
:绕过服务器证书的验证。/sslAllowInvalidHostnames
:绕过服务器名称的验证。/sslFIPSMode
:使用安装的 OpenSSL 库的 FIPS 模式。
认证选项
/u, /username:<username>
:用于认证的用户名。/p, /password:<password>
:用于认证的密码。/authenticationDatabase:<database-name>
:保存用户凭据的数据库。/authenticationMechanism:<mechanism>
:使用的认证机制。
URI 选项
/uri:mongodb-uri
:MongoDB URI 连接字符串。
统计选项
/o:<field>[,<field>]*
:要显示的字段。对于自定义字段,使用点语法索引serverStatus
输出,并可选方法.diff()
和.rate()
,例如metrics.record.moves.diff()
。/O:<field>[,<field>]*
:与-o
类似,但预加载了默认字段。指定的字段插入在默认输出之后。/humanReadable
:以人类可读的格式打印大小和时间(例如 1K 234M 2G)。要使用更精确的机器可读格式,请使用--humanReadable=false
(默认为true
)。/noheaders
:不输出列名。/n, /rowcount:<count>
:要打印的统计行数(0 表示无限)。/discover
:发现节点并显示所有节点的统计信息。/http
:使用 HTTP 代替原始数据库连接。/all
:所有可选字段。/json
:以 JSON 格式输出而不是格式化表格。/useDeprecatedJsonKeys
:使用旧的键名称;仅与 JSON 输出选项有效。/i, /interactive
:在非滚动界面中显示统计信息。
mongostat
是一个命令行工具,用于提供正在运行的 mongod
或 mongos
实例的状态快速概览。它类似于 UNIX/Linux 文件系统实用程序 vmstat
,但提供关于 mongod
和 mongos
实例的数据。使用 mongostat
可以帮助识别系统瓶颈。
相关文章:
![](https://www.ngui.cc/images/no-images.jpg)
数据库:MongoDB命令行帮助解释
MongoDB命令: mongodmongosmongoperrormongoexportmongofilesmongoimportmongorestoreMongostat MongoDB包中的核心组件包括: mongod 是 MongoDB 的核心服务器进程,负责数据存储和管理。mongos 是分片集群的路由进程,负责将请求路由到正确…...
![](https://www.ngui.cc/images/no-images.jpg)
MongoDB单机版安装
MongoDB单机版安装 在CentOS Linux release 7.9.2009 (Core)下安装MongoDB的步骤如下: 1 创建用户和组(可选,根据需要) 如果您希望以非root用户运行MongoDB服务,可以创建一个专用的用户和组。 groupadd mongodb us…...
![](https://www.ngui.cc/images/no-images.jpg)
Azure面试
文章目录 项目地址一、Azure Storage1. What are the benefits of Azure Storage? 二、汇总 项目地址 教程作者:教程地址: 代码仓库地址: 所用到的框架和插件: dbt airflow一、Azure Storage 1. What are the bene…...
![](https://i-blog.csdnimg.cn/direct/3ff9305643ac4c4780cb6553f5b32aaf.png#pic_center)
在.NET用C#将Word文档转换为HTML格式
将Word文档转换为HTML格式尤其具有显著的优势,它不仅能够确保文档内容在多种设备和平台上保持一致灵活的显示,还便于通过网络进行传播和集成到各种Web应用中。随着越来越多的企业和开发者寻求更灵活、更具兼容性的文件处理方式,.NET框架下的C…...
![](https://i-blog.csdnimg.cn/direct/84a57de61979405bad9f5359397b8eef.png)
macOS 安装JDK17
文章目录 前言介绍新特性下载安装1.下载完成后打开downloads 双击进行安装2.配置环境变量3.测试快速切换JDK 小结 前言 近期找开源软件,发现很多都已经使用JDK17springboot3 了,之前的JDK8已经被替换下场,所以今天就在本机安装了JDK17&#…...
![](https://www.ngui.cc/images/no-images.jpg)
Django SimpleUI 自定义功能实战
1. 引言 Django SimpleUI 是一个基于 Django 的后台管理界面美化工具,旨在帮助开发者快速构建现代化的后台管理系统。除了默认的功能外,SimpleUI 还支持高度自定义,开发者可以根据需求添加各种实用功能。本文将详细介绍如何在 Django SimpleUI 中实现自定义功能,包括数据同…...
![](https://www.ngui.cc/images/no-images.jpg)
C语言/C++自然序列重排列——相邻序号不相邻问题⭐
同类题目:C语言自然序列重排——相邻元素的差值集合恰好有 k 个不同的值。⭐⭐-CSDN博客 题目描述(难度⭐) 一场针对 n 学生的考试将在一个又长又窄的房间里举行,因此学生们将按某种顺序排成一行。老师怀疑相邻编号的学生…...
![](https://www.ngui.cc/images/no-images.jpg)
Spring boot面试题---- Spring boot项目运行原理
1.启动流程概述 Spring Boot 的启动是从一个带有main方法的主类开始的。这个主类通常会有一个@SpringBootApplication注解。这个注解是一个组合注解,它包含了@Configuration、@EnableAutoConfiguration和@ComponentScan。@Configuration注解表明这个类是一个配置类,它可以定义…...
![](https://i-blog.csdnimg.cn/img_convert/0a48df55127b4efcf55af7e3d11b66a3.png)
Qt/C++ 基于 QGraphicsView 的绘图软件 (附源码下载链接)
基于 Qt 的 QGraphicsView 绘图软件项目进行深入讲解,分析其核心代码与功能实现,帮助开发者理解 QGraphicsView 的用法。 项目概览 该项目实现了一个简单的绘图应用,用户可以在界面中创建和编辑矩形、椭圆、直线、多边形和文本等图形对象。功…...
![](https://www.ngui.cc/images/no-images.jpg)
如何使用 useMemo 和 memo 优化 React 应用性能?
使用 useMemo 和 memo 优化 React 应用性能 在构建复杂的 React 应用时,性能优化是确保应用流畅运行的关键。React 提供了多种工具来帮助开发者优化组件的渲染和计算逻辑,其中 useMemo 和 memo 是两个非常有用的 Hook。本文将详细介绍这两个工具的使用方…...
![](https://i-blog.csdnimg.cn/direct/3415a8162287437885679cb7a476d905.png)
数据结构(链表 哈希表)
在Python中,链表和哈希表都是常见的数据结构,可以用来存储和处理数据。 链表是一种线性数据结构,由一系列节点组成,每个节点包含一个数据元素和一个指向下一个节点的指针。链表可以用来实现栈、队列以及其他数据结构。Python中可…...
![](assets/03-13.png)
人工智能之深度学习_[4]-神经网络入门
神经网络基础 1 神经网络 深度学习神经网络就是大脑仿生,数据从输入到输出经过一层一层的神经元产生预测值的过程就是前向传播(也叫正向传播)。 前向传播涉及到人工神经元是如何工作的(也就是神经元的初始化、激活函数…...
![](https://i-blog.csdnimg.cn/direct/25bcf868914a490fb408dcccee374f68.png)
STM32之CubeMX图形化工具开发介绍(十七)
STM32F407 系列文章 - STM32CubeMX(十七) 目录 前言 一、CubeMX 二、下载安装 1.下载 2.安装 3.图解步骤 三、用户界面 1.项目配置 2.项目生成 3.项目文件解释 4.新建工程 5.查看原工程 四、FAQ 总结 前言 STMCube源自意法半导体…...
![](https://www.ngui.cc/images/no-images.jpg)
css3过渡总结
一、过渡的定义与作用 CSS3 过渡(Transitions)允许 CSS 属性在一定的时间区间内平滑地过渡,从一个值转变为另一个值。它能够让网页元素的状态变化更加自然、流畅,给用户带来更好的视觉体验。例如,当一个元素从隐藏状态…...
![](https://i-blog.csdnimg.cn/direct/e4261152bc7c41328268bdf92db8e5ac.png)
latin1_swedish_ci(latin1 不支持存储中文、日文、韩文等多字节字符)
文章目录 1、SHOW TABLE STATUS WHERE Name batch_version;2、latin1_swedish_ci使用场景注意事项修改字符集和排序规则修改表的字符集和排序规则修改列的字符集和排序规则修改数据库的默认字符集和排序规则 3、ALTER TABLE batch_version CONVERT TO CHARACTER SET utf8mb4 C…...
![](https://i-blog.csdnimg.cn/direct/82bf9044e2db4d419604de2d118da9bb.jpeg)
C语言编程笔记:文件处理的艺术
大家好,这里是小编的博客频道 小编的博客:就爱学编程 很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!! 本文目录 引言正文一、为什么要用文件二、文件的分…...
![](https://www.ngui.cc/images/no-images.jpg)
[创业之路-255]:《华为数字化转型之道》-1-主要章节、核心内容、核心思想
目录 前言:数字化转型对于企业而言,是一种全方位的变革 一、主要章节 1、认知篇(第1~2章)- Why 2、方法篇(第3~5章)- How 3、实践篇(第6~10章)- 实践 4、平台篇(第…...
![](https://i-blog.csdnimg.cn/img_convert/aeaaad815b5b8e29bbdae585a61e8245.png)
《汽车维修技师》是什么级别的期刊?是正规期刊吗?能评职称吗?
问题解答: 问:《汽车维修技师》是不是核心期刊? 答:不是,是知网收录的正规学术期刊。 问:《汽车维修技师》级别? 答:省级。主管单位:北方联合出版传媒(…...
![](https://i-blog.csdnimg.cn/img_convert/ed7c8fb0cddafc772bc423cbd2d600a5.png)
2024 京东零售技术年度总结
每一次回望,都为了更好地前行。 2024 年,京东零售技术在全面助力业务发展的同时,在大模型应用、智能供应链、端技术、XR 体验等多个方向深入探索。京东 APP 完成阶段性重要改版,打造“又好又便宜”的优质体验;国补专区…...
![](https://i-blog.csdnimg.cn/direct/212b793cdb434975bc16b2d0228dadea.jpeg#pic_center)
PyTorch使用教程(8)-一文了解torchvision
一、什么是torchvision torchvision提供了丰富的功能,主要包括数据集、模型、转换工具和实用方法四大模块。数据集模块内置了多种广泛使用的图像和视频数据集,如ImageNet、CIFAR-10、MNIST等,方便开发者进行训练和评估。模型模块封装了大量经…...
![](https://www.ngui.cc/images/no-images.jpg)
如何在不暴露MinIO地址的情况下,用Spring Boot与KKFileView实现文件预览
在现代Web应用中,文件预览是一项常见且重要的功能。它允许用户在不上传或下载文件的情况下,直接在浏览器中查看文件内容。然而,直接将文件存储服务(如MinIO)暴露给前端可能会带来安全风险。本文将介绍如何在不暴露MinI…...
![](https://i-blog.csdnimg.cn/direct/5684fd70514c412f93330303da7c832f.png)
ICMP协议和ICMP重定向攻击
✍作者:柒烨带你飞 💪格言:生活的情况越艰难,我越感到自己更坚强;我这个人走得很慢,但我从不后退。 📜系列专栏:网络安全从菜鸟到飞鸟的逆袭 目录 一,ICMP基本概念二&…...
![](https://i-blog.csdnimg.cn/direct/c24be773fd8842bea9858492a1815f92.png)
leetcode203-移除链表元素
leetcode203 什么是链表 之前不懂链表的数据结构,一看到链表的题目就看不明白 链表是通过next指针来将每个节点连接起来的,题目中给的链表是单向链表,有两个值,一个val表示值,一个next:表示连接的下一个…...
![](https://www.ngui.cc/images/no-images.jpg)
Rust 中构建 RESTful API
在 Rust 中构建 RESTful API,你可以选择几个不同的框架。每个框架有不同的特点、优缺点和适用场景,下面我将介绍几个常用的 Rust Web 框架,并分析它们的优缺点。 Actix Web 简介: Actix Web 是一个非常高性能的 Web 框架…...
![](https://i-blog.csdnimg.cn/direct/5d9c3fe9aa8b4185b07e0801391045f0.png)
Sqlmap入门
原理 在owasp发布的top10 漏洞里面,注入漏洞一直是危害排名第一,其中数据库注入漏洞是危害的。 当攻击者发送的sql语句被sql解释器执行,通过执行这些恶意语句欺骗数据库执行,导致数据库信息泄漏 分类 按注入类型 常见的sql注入…...
![](https://i-blog.csdnimg.cn/img_convert/0f03f695fd7a903ad8ec984a854f8f10.png)
迈向 “全能管家” 之路:机器人距离终极蜕变还需几步?
【图片来源于网络,侵删】 这是2024年初Figure公司展示的人形机器人Figure 01,他可以通过观看人类的示范视频,在10小时内经过训练学会煮咖啡,并且这个过程是完全自主没有人为干涉的! 【图片来源于网络,侵删】…...
![](https://i-blog.csdnimg.cn/blog_migrate/25e1df44e5431228dbdad52a4f65204d.png)
移动端 REM 适配
移动端 REM 适配 Vant 中的样式默认使用 px 作为单位,如果需要使用 rem 单位,推荐使用以下两个工具: postcss-pxtorem 是一款 postcss 插件,用于将单位转化为 remlib-flexible 用于设置 rem 基准值 下面我们分别将这两个工具配…...
![](https://www.ngui.cc/images/no-images.jpg)
逐笔成交逐笔委托Level2高频数据下载和分析:20241230
逐笔委托逐笔成交下载 链接: https://pan.baidu.com/s/11Tdq06bbYX4ID9dEaiv_lQ?pwdcge6 提取码: cge6 Level2逐笔成交逐笔委托数据分享下载 利用Level2的逐笔交易和委托数据,这种以毫秒为单位的详细信息能揭露众多关键信息,如庄家意图、伪装行为&…...
![](https://csdnimg.cn/release/blog_editor_html/release2.3.7/ckeditor/plugins/CsdnLink/icons/icon-default.png?t=O83A)
C#实现字符串反转的4种方法
见过不少人、经过不少事、也吃过不少苦,感悟世事无常、人心多变,靠着回忆将往事串珠成链,聊聊感情、谈谈发展,我慢慢写、你一点一点看...... 1、string.Reverse 方法 string content "Hello World";string reverseStri…...
![](https://www.ngui.cc/images/no-images.jpg)
UDP 单播、多播、广播:原理、实践
一、引言 在计算机网络通信领域,UDP(User Datagram Protocol,用户数据报协议)是一种重要的传输层协议。它以无连接、低开销的特点,在众多实时性要求高的应用场景中发挥关键作用。UDP 支持单播、多播和广播三种通信模式…...
![](https://img-blog.csdnimg.cn/img_convert/cb79f4afb58ddc3cbe66da639af7b074.png)
遇到灾难网站变灰怎么做/网站seo优化服务
说明:本文原创作者『strongerHuang』首发于微信公众号『嵌入式专栏』,同时也更新在我的个人网站:EmbeddedDevelop标签:CAN、 CANOpen、 CanFestival一、写在前面教程前面文章讲述了《对象字典生成工具环境搭建》,因为对…...
![](https://img-blog.csdnimg.cn/20200708194946558.png)
移动端网站宽度做多大/时事新闻热点摘抄
作者简介: 李中凯 八年多工作经验 前端负责人, 擅长JavaScript/Vue。 掘金文章专栏:https://juejin.im/user/57c7cb8a0a2b58006b1b8666/posts 公众号:1024译站 Web 浏览器无疑是用户访问互联网最常见的入口。浏览器凭借其免安装和…...
![](/images/no-images.jpg)
电子商务做网站骗钱怎么办/指数函数图像
数据类型之 字符串一字符串操作创建及赋值x abcdex "abcde"x abcdex """abcde"""#通过str方法将其他类型转化为字符串类型x str([1234])访问字符串通过索引 和 通过切片访问任意部分字符串astring abcd#通过索引print astring[1]#通…...
![](http://www.oh100.com/pic/original/allimg/201608/36-160R41H339-51.png)
霍山有没有做建网站的/seo线下培训班
计算机三级《网络技术》操作试题及答案2016参考答案与解析一、综合题1.【解题思路】该题考查的主要内容是给出IP地址和子网掩码,要求解出主机号、网络地址、广播地址、直接广播地址以及地址范围。主机号是将IP地址中网络位置0,主机位不变得到的ÿ…...
![](https://img-blog.csdnimg.cn/2020032010342475.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2pvam83MDU=,size_16,color_FFFFFF,t_70)
建设企业网站进去无法显示/百度一下网页版搜索引擎
物联网安全风险分析 物联网( the Intemnet of Things, IoT)是近些年提出的概念,在实际应用中,可以把感应器、处理器和无线通信模块嵌入或装备到电网、铁路、桥梁、隧道、公路、建筑等各种物体中,使它们相互连接,构成物联网。它有…...
![](https://img-blog.csdnimg.cn/img_convert/60122a039794757912fa24b7c4d69472.png)
湖北省住房和城乡建设厅/福建seo网站
随着汽车工业的变化,汽车产品正在加速向新能源、轻量化、智能化和网络化方向发展。汽车正在从交通工具向大型移动智能终端、储能单元和数字空间转变,乘客、车辆、货物、运营平台和基础设施实现智能互联和数据共享。汽车设计多样化,除了开车&a…...