添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
无邪的猴子  ·  Redis 数据类型 | ·  1 月前    · 
深情的鞭炮  ·  Install .NET Runtime ...·  1 年前    · 
八块腹肌的大葱  ·  C# ...·  1 年前    · 
  • 在 Linux 上使用 Kerberos 身份验证配置 MongoDB
  • 在 Windows 上使用 Kerberos 身份验证配置 MongoDB
  • Kerberos 身份验证疑难解答
  • 使用 Kerberos 身份验证和 Active Directory 授权配置 MongoDB
  • LDAP 代理验证
  • 通过 ActiveDirectory 使用 SASL 和 LDAP 进行身份验证
  • 使用 SASL 和 LDAP 与 OpenLDAP 进行身份验证
  • 通过本机 LDAP 使用 Active Directory 对用户进行身份验证和授权
  • LDAP Authorization
  • Internal Authentication
  • 使用密钥文件访问控制部署新副本集
  • 在副本集中实施密钥文件访问控制
  • 在不停机的情况下在副本集中实施密钥文件访问控制
  • 使用密钥文件访问控制部署分片群集
  • 在分片群集中实施密钥文件访问控制
  • 在不停机的情况下在现有分片群集中实施身份验证
  • 使用 x.509 证书进行会员身份验证
  • 从密钥文件身份验证升级到 x.509 身份验证
  • Enable Auth
  • Management 用户和角色
  • 更改密码和自定义数据
  • 基于角色的访问控制
  • Built-In Roles
  • User-Defined Roles
  • 集合级访问控制
  • TLS/SSL(传输加密)
  • 为 TLS/SSL 配置 mongod 和 mongos
  • Client 端的 TLS/SSL 配置
  • 升级群集以使用 TLS/SSL
  • 为 FIPS 配置 MongoDB
  • Configure Encryption
  • 旋转加密密钥
  • Auditing
  • Configure Auditing
  • 配置审核过滤器
  • Security Hardening
  • MongoDB 配置强化
  • 加强网络基础设施
  • 为 MongoDB 配置 Linux iptables 防火墙
  • 为 MongoDB 配置 Windows netsh 防火墙
  • 实施字段级别修订
  • Security Reference
  • Built-In Roles
  • system.roles Collection
  • system.users Collection
  • Resource Document
  • Privilege Actions
  • 系统事件审核消息
  • 创建漏洞报告
  • Change Streams
  • 更改流生产建议
  • Change Events
  • Replication
  • 副本集成员
  • 副本集主要
  • 副本集次要成员
  • 优先级 0 副本集成员
  • 隐藏副本集成员
  • 延迟副本集成员
  • 复制集仲裁器
  • 副本集 Oplog
  • 副本集数据同步
  • 副本集部署体系结构
  • 三个成员副本集
  • 跨两个或多个数据中心分布的副本集
  • 副本集高可用性
  • 副本集选举
  • 副本集故障转移期间的回滚
  • 复制集读取和写入语义
  • 写副本集关注点
  • Read Preference
  • 服务器选择算法
  • 副本集部署教程
  • 部署副本集
  • 部署副本集以进行测试和开发
  • 部署地理冗余副本集
  • 将仲裁器添加到副本集
  • 将独立版本转换为副本集
  • 将成员添加到副本集中
  • 从副本集中删除成员
  • 替换副本集成员
  • 成员配置教程
  • 调整副本集成员的优先级
  • 防止中学成为小学
  • 配置隐藏副本集成员
  • 配置延迟副本集成员
  • 配置非投票副本集成员
  • 将辅助节点转换为仲裁者
  • 副本集维护教程
  • 更改操作日志的大小
  • 对副本集成员执行维护
  • 强制会员成为主要会员
  • 重新同步副本集的成员
  • 配置副本集标记集
  • 用不可用的成员重新配置副本集
  • Management 链式复制
  • 更改副本集中的主机名
  • 配置辅助节点的同步目标
  • Replication Reference
  • 副本集配置
  • 副本集协议版本
  • 对副本集进行故障排除
  • 本地数据库
  • 副本集成员国
  • 阅读偏好参考
  • Sharding
  • 分片集群组件
  • Shards
  • 配置服务器(元数据)
  • Router (mongos)
  • Shard Keys
  • Hashed Sharding
  • Ranged Sharding
  • 部署分片集群
  • Zones
  • Management 碎片区
  • 按位置细分数据
  • 用于更改 SLA 或 SLO 的分层硬件
  • 按应用或 Client 细分数据
  • 仅插入工作负载的分布式本地写入
  • 使用块进行数据分区
  • 在分片群集中创建块
  • 分片群集中的分割块
  • 在分片群集中合并块
  • 修改分片群集中的块大小
  • Balancer
  • Management 分片集群平衡器
  • 在分片群集中迁移块
  • Administration
  • 配置服务器 Management
  • 更换配置服务器
  • 查看集群配置
  • 重新启动分片群集
  • 将分片群集迁移到其他硬件
  • 将分片添加到集群
  • 从现有分片群集中删除分片
  • 清除巨型标志
  • 备份群集元数据
  • 将分片群集转换为副本集
  • 将副本集转换为分片群集
  • 将分片独立版转换为分片副本集
  • Sharding Reference
  • Operational Restrictions
  • 对分片群集进行故障排除
  • Config Database
  • Administration
  • Production Notes
  • Operations Checklist
  • Development Checklist
  • Performance
  • Database Profiler
  • 数据库探查器输出
  • 禁用透明大页面(THP)
  • UNIX ulimit 设置
  • 配置与维护
  • 运行时数据库配置
  • 升级到最新版本的 MongoDB
  • Managementmongod 流程
  • 终止正在运行的操作
  • 旋转日志文件
  • 数据中心意识
  • MongoDB 部署中的工作负载隔离
  • Zones
  • Management 碎片区
  • 按位置细分数据
  • 用于更改 SLA 或 SLO 的分层硬件
  • 按应用或 Client 细分数据
  • 仅插入工作负载的分布式本地写入
  • Management 碎片区
  • MongoDB 备份方法
  • 使用文件系统快照备份和还原
  • 使用 MongoDB 工具备份和还原
  • 从 MongoDB 备份还原副本集
  • 备份和还原分片群集
  • 使用文件系统快照备份分片群集
  • 使用数据库转储备份分片群集
  • 计划分片群集的备份窗口
  • 还原分片群集
  • 意外关闭后恢复独立服务器
  • 监控 MongoDB
  • 在 Linux 上使用 SNMP 监视 MongoDB
  • 使用 SNMP 监视 MongoDB Windows
  • Troubleshoot SNMP
  • Storage
  • Storage Engines
  • WiredTiger 存储引擎
  • 将 Standalone 更改为 WiredTiger
  • 将副本集更改为 WiredTiger
  • 将分片群集更改为 WiredTiger
  • MMAPv1 存储引擎
  • 内存中存储引擎
  • Journaling
  • Manage Journaling
  • GridFS
  • 常见问题解答:MongoDB 存储
  • 经常问的问题
  • 常见问题解答:MongoDB 基础知识
  • FAQ: Indexes
  • FAQ: Concurrency
  • 常见问题:使用 MongoDB 进行分片
  • 常见问题解答:复制和副本集
  • 常见问题解答:MongoDB 存储
  • 常见问题:MongoDB 诊断
  • Reference
  • Operators
  • 查询和投影运算符
  • 比较查询运算符
  • 逻辑查询运算符
  • 元素查询运算符
  • $exists
  • $type
  • 评估查询运算符
  • $expr
  • $jsonSchema
  • $regex
  • $text
  • $where
  • 地理空间查询运算符
  • $geoIntersects
  • $geoWithin
  • $near
  • $nearSphere
  • $center
  • $centerSphere
  • $geometry
  • $maxDistance
  • $minDistance
  • $polygon
  • $uniqueDocs
  • 数组查询运算符
  • $elemMatch (query)
  • $size
  • 按位查询运算符
  • $bitsAllClear
  • $bitsAllSet
  • $bitsAnyClear
  • $bitsAnySet
  • $comment
  • Projection Operators
  • $ (projection)
  • $elemMatch (projection)
  • $meta
  • $slice (projection)
  • Update Operators
  • site 更新操作员
  • $currentDate
  • $rename
  • $setOnInsert
  • $unset
  • 数组更新运算符
  • $ (update)
  • $[<identifier>]
  • $addToSet
  • $pull
  • $push
  • $pullAll
  • $each
  • $position
  • $slice
  • $sort
  • 按位更新运算符
  • 聚合管道阶段
  • $addFields (aggregation)
  • $bucket (aggregation)
  • $bucketAuto (aggregation)
  • $collStats (aggregation)
  • $count (aggregation)
  • $currentOp (aggregation)
  • $facet (aggregation)
  • $geoNear (aggregation)
  • $graphLookup (aggregation)
  • $group (aggregation)
  • $indexStats (aggregation)
  • $limit (aggregation)
  • $listLocalSessions
  • $listSessions
  • $lookup (aggregation)
  • $match (aggregation)
  • $out (aggregation)
  • $project (aggregation)
  • $redact (aggregation)
  • $replaceRoot (aggregation)
  • $sample (aggregation)
  • $skip (aggregation)
  • $sort (aggregation)
  • $sortByCount (aggregation)
  • $unwind (aggregation)
  • 聚合管道运算符
  • $abs (aggregation)
  • $add (aggregation)
  • $addToSet (aggregation)
  • $allElementsTrue (aggregation)
  • $and (aggregation)
  • $anyElementTrue (aggregation)
  • $arrayElemAt (aggregation)
  • $arrayToObject (aggregation)
  • $avg (aggregation)
  • $ceil (aggregation)
  • $cmp (aggregation)
  • $concat (aggregation)
  • $concatArrays (aggregation)
  • $cond (aggregation)
  • $dateFromParts (aggregation)
  • $dateToParts (aggregation)
  • $dateFromString (aggregation)
  • $dateToString (aggregation)
  • $dayOfMonth (aggregation)
  • $dayOfWeek (aggregation)
  • $dayOfYear (aggregation)
  • $divide (aggregation)
  • $eq (aggregation)
  • $exp (aggregation)
  • $filter (aggregation)
  • $first (aggregation)
  • $floor (aggregation)
  • $gt (aggregation)
  • $gte (aggregation)
  • $hour (aggregation)
  • $ifNull (aggregation)
  • $in (aggregation)
  • $indexOfArray (aggregation)
  • $indexOfBytes (aggregation)
  • $indexOfCP (aggregation)
  • $isArray (aggregation)
  • $isoDayOfWeek (aggregation)
  • $isoWeek (aggregation)
  • $isoWeekYear (aggregation)
  • $last (aggregation)
  • $let (aggregation)
  • $literal (aggregation)
  • $ln (aggregation)
  • $log (aggregation)
  • $log10 (aggregation)
  • $lt (aggregation)
  • $lte (aggregation)
  • $map (aggregation)
  • $max (aggregation)
  • $mergeObjects (aggregation)
  • $meta (aggregation)
  • $min (aggregation)
  • $millisecond (aggregation)
  • $minute (aggregation)
  • $mod (aggregation)
  • $month (aggregation)
  • $multiply (aggregation)
  • $ne (aggregation)
  • $not (aggregation)
  • $objectToArray (aggregation)
  • $or (aggregation)
  • $pow (aggregation)
  • $push (aggregation)
  • $range (aggregation)
  • $reduce (aggregation)
  • $reverseArray (aggregation)
  • $second (aggregation)
  • $setDifference (aggregation)
  • $setEquals (aggregation)
  • $setIntersection (aggregation)
  • $setIsSubset (aggregation)
  • $setUnion (aggregation)
  • $size (aggregation)
  • $slice (aggregation)
  • $split (aggregation)
  • $sqrt (aggregation)
  • $stdDevPop (aggregation)
  • $stdDevSamp (aggregation)
  • $strcasecmp (aggregation)
  • $strLenBytes (aggregation)
  • $strLenCP (aggregation)
  • $substr (aggregation)
  • $substrBytes (aggregation)
  • $substrCP (aggregation)
  • $subtract (aggregation)
  • $sum (aggregation)
  • $switch (aggregation)
  • $toLower (aggregation)
  • $toUpper (aggregation)
  • $trunc (aggregation)
  • $type (aggregation)
  • $week (aggregation)
  • $year (aggregation)
  • $zip (aggregation)
  • Query Modifiers
  • $comment
  • $explain
  • $hint
  • $maxScan
  • $maxTimeMS
  • $orderby
  • $query
  • $returnKey
  • $showDiskLoc
  • $natural
  • Database Commands
  • Aggregation Commands
  • aggregate
  • count
  • distinct
  • group
  • mapReduce
  • Geospatial Commands
  • geoNear
  • geoSearch
  • 查询和写入操作命令
  • delete
  • findAndModify
  • getLastError
  • getMore
  • getPrevError
  • insert
  • parallelCollectionScan
  • resetError
  • update
  • 查询计划缓存命令
  • planCacheClear
  • planCacheClearFilters
  • planCacheListFilters
  • planCacheListPlans
  • planCacheListQueryShapes
  • planCacheSetFilter
  • Authentication Commands
  • authenticate
  • authSchemaUpgrade
  • copydbgetnonce
  • getnonce
  • logout
  • 用户 Management 命令
  • createUser
  • dropAllUsersFromDatabase
  • dropUser
  • grantRolesToUser
  • revokeRolesFromUser
  • updateUser
  • usersInfo
  • 角色 Management 命令
  • createRole
  • dropRole
  • dropAllRolesFromDatabase
  • grantPrivilegesToRole
  • grantRolesToRole
  • invalidateUserCache
  • revokePrivilegesFromRole
  • revokeRolesFromRole
  • rolesInfo
  • updateRole
  • Replication Commands
  • applyOps
  • isMaster
  • replSetAbortPrimaryCatchUp
  • replSetFreeze
  • replSetGetConfig
  • replSetGetStatus
  • replSetInitiate
  • replSetMaintenance
  • replSetReconfig
  • replSetResizeOplog
  • replSetStepDown
  • replSetSyncFrom
  • resync
  • Sharding Commands
  • addShard
  • addShardToZone
  • balancerStart
  • balancerStatus
  • balancerStop
  • checkShardingIndex
  • cleanupOrphaned
  • enableSharding
  • flushRouterConfig
  • getShardMap
  • getShardVersion
  • isdbgrid
  • listShards
  • medianKey
  • moveChunk
  • movePrimary
  • mergeChunks
  • removeShard
  • removeShardFromZone
  • setShardVersion
  • shardCollection
  • shardingState
  • split
  • splitChunk
  • splitVector
  • unsetSharding
  • updateZoneKeyRange
  • Sessions Commands
  • endSessions
  • killAllSessions
  • killAllSessionsByPattern
  • killSessions
  • refreshSessions
  • startSession
  • Administration Commands
  • clean
  • clone
  • cloneCollection
  • cloneCollectionAsCapped
  • collMod
  • compact
  • connPoolSync
  • convertToCapped
  • copydb
  • create
  • createIndexes
  • currentOp
  • dropDatabase
  • dropIndexes
  • filemd5
  • fsync
  • fsyncUnlock
  • getParameter
  • killCursors
  • killOp
  • listCollections
  • listDatabases
  • listIndexes
  • logRotate
  • reIndex
  • renameCollection
  • repairDatabase
  • setFeatureCompatibilityVersion
  • setParameter
  • shutdown
  • touch
  • Diagnostic Commands
  • availableQueryOptions
  • buildInfo
  • collStats
  • connPoolStats
  • connectionStatus
  • cursorInfo
  • dataSize
  • dbHash
  • dbStats
  • diagLogging
  • driverOIDTest
  • explain
  • features
  • getCmdLineOpts
  • getLog
  • hostInfo
  • isSelf
  • listCommands
  • netstat
  • profile
  • serverStatus
  • shardConnPoolStats
  • validate
  • whatsmyuri
  • 系统事件审核命令
  • logApplicationMessage
  • mongo Shell 方法
  • Collection Methods
  • db.collection.aggregate()
  • db.collection.bulkWrite()
  • db.collection.copyTo()
  • db.collection.count()
  • db.collection.createIndex()
  • db.collection.createIndexes()
  • db.collection.dataSize()
  • db.collection.deleteOne()
  • db.collection.deleteMany()
  • db.collection.distinct()
  • db.collection.drop()
  • db.collection.dropIndex()
  • db.collection.dropIndexes()
  • db.collection.ensureIndex()
  • db.collection.explain()
  • db.collection.find()
  • db.collection.findAndModify()
  • db.collection.findOne()
  • db.collection.findOneAndDelete()
  • db.collection.findOneAndReplace()
  • db.collection.findOneAndUpdate()
  • db.collection.getIndexes()
  • db.collection.getShardDistribution()
  • db.collection.getShardVersion()
  • db.collection.group()
  • db.collection.insert()
  • db.collection.insertOne()
  • db.collection.insertMany()
  • db.collection.isCapped()
  • db.collection.latencyStats()
  • db.collection.mapReduce()
  • db.collection.reIndex()
  • db.collection.remove()
  • db.collection.renameCollection()
  • db.collection.replaceOne()
  • db.collection.save()
  • db.collection.stats()
  • db.collection.storageSize()
  • db.collection.totalIndexSize()
  • db.collection.totalSize()
  • db.collection.update()
  • db.collection.updateOne()
  • db.collection.updateMany()
  • db.collection.watch()
  • db.collection.validate()
  • Cursor Methods
  • cursor.addOption()
  • cursor.allowPartialResults()
  • cursor.batchSize()
  • cursor.close()
  • cursor.isClosed()
  • cursor.collation()
  • cursor.comment()
  • cursor.count()
  • cursor.explain()
  • cursor.forEach()
  • cursor.hasNext()
  • cursor.hint()
  • cursor.isExhausted()
  • cursor.itcount()
  • cursor.limit()
  • cursor.map()
  • cursor.max()
  • cursor.maxScan()
  • cursor.maxTimeMS()
  • cursor.min()
  • cursor.next()
  • cursor.noCursorTimeout()
  • cursor.objsLeftInBatch()
  • cursor.pretty()
  • cursor.readConcern()
  • cursor.readPref()
  • cursor.returnKey()
  • cursor.showRecordId()
  • cursor.size()
  • cursor.skip()
  • cursor.sort()
  • cursor.tailable()
  • cursor.toArray()
  • Database Methods
  • db.adminCommand()
  • db.aggregate()
  • db.cloneCollection()
  • db.cloneDatabase()
  • db.commandHelp()
  • db.copyDatabase()
  • db.createCollection()
  • db.createView()
  • db.currentOp()
  • db.dropDatabase()
  • db.eval()
  • db.fsyncLock()
  • db.fsyncUnlock()
  • db.getCollection()
  • db.getCollectionInfos()
  • db.getCollectionNames()
  • db.getLastError()
  • db.getLastErrorObj()
  • db.getLogComponents()
  • db.getMongo()
  • db.getName()
  • db.getPrevError()
  • db.getProfilingLevel()
  • db.getProfilingStatus()
  • db.getReplicationInfo()
  • db.getSiblingDB()
  • db.help()
  • db.hostInfo()
  • db.isMaster()
  • db.killOp()
  • db.listCommands()
  • db.logout()
  • db.printCollectionStats()
  • db.printReplicationInfo()
  • db.printShardingStatus()
  • db.printSlaveReplicationInfo()
  • db.repairDatabase()
  • db.resetError()
  • db.runCommand()
  • db.serverBuildInfo()
  • db.serverCmdLineOpts()
  • db.serverStatus()
  • db.setLogLevel()
  • db.setProfilingLevel()
  • db.shutdownServer()
  • db.stats()
  • db.version()
  • 查询计划缓存方法
  • db.collection.getPlanCache()
  • PlanCache.clear()
  • PlanCache.clearPlansByQuery()
  • PlanCache.getPlansByQuery()
  • PlanCache.help()
  • PlanCache.listQueryShapes()
  • 批量操作方法
  • db.collection.initializeOrderedBulkOp()
  • db.collection.initializeUnorderedBulkOp()
  • Bulk()
  • Bulk.execute()
  • Bulk.find()
  • Bulk.find.arrayFilters()
  • Bulk.find.collation()
  • Bulk.find.remove()
  • Bulk.find.removeOne()
  • Bulk.find.replaceOne()
  • Bulk.find.updateOne()
  • Bulk.find.update()
  • Bulk.find.upsert()
  • Bulk.getOperations()
  • Bulk.insert()
  • Bulk.tojson()
  • Bulk.toString()
  • 用户 Management 方法
  • db.auth()
  • db.changeUserPassword()
  • db.createUser()
  • db.dropUser()
  • db.dropAllUsers()
  • db.getUser()
  • db.getUsers()
  • db.grantRolesToUser()
  • db.removeUser()
  • db.revokeRolesFromUser()
  • db.updateUser()
  • 角色 Management 方法
  • db.createRole()
  • db.dropRole()
  • db.dropAllRoles()
  • db.getRole()
  • db.getRoles()
  • db.grantPrivilegesToRole()
  • db.revokePrivilegesFromRole()
  • db.grantRolesToRole()
  • db.revokeRolesFromRole()
  • db.updateRole()
  • Replication Methods
  • rs.add()
  • rs.addArb()
  • rs.conf()
  • rs.freeze()
  • rs.help()
  • rs.initiate()
  • rs.printReplicationInfo()
  • rs.printSlaveReplicationInfo()
  • rs.reconfig()
  • rs.remove()
  • rs.status()
  • rs.stepDown()
  • rs.syncFrom()
  • Sharding Methods
  • sh.addShard()
  • sh.addShardTag()
  • sh.addShardToZone()
  • sh.addTagRange()
  • sh.disableBalancing()
  • sh.enableBalancing()
  • sh.disableAutoSplit
  • sh.enableAutoSplit
  • sh.enableSharding()
  • sh.getBalancerHost()
  • sh.getBalancerState()
  • sh.removeTagRange()
  • sh.removeRangeFromZone()
  • sh.help()
  • sh.isBalancerRunning()
  • sh.moveChunk()
  • sh.removeShardTag()
  • sh.removeShardFromZone()
  • sh.setBalancerState()
  • sh.shardCollection()
  • sh.splitAt()
  • sh.splitFind()
  • sh.startBalancer()
  • sh.status()
  • sh.stopBalancer()
  • sh.waitForBalancer()
  • sh.waitForBalancerOff()
  • sh.waitForPingChange()
  • sh.updateZoneKeyRange()
  • 对象构造器和方法
  • BulkWriteResult()
  • Date()
  • ObjectId
  • ObjectId.getTimestamp()
  • ObjectId.toString()
  • ObjectId.valueOf()
  • UUID()
  • WriteResult()
  • WriteResult.hasWriteError()
  • WriteResult.hasWriteConcernError()
  • Connection Methods
  • connect()
  • Mongo()
  • Mongo.getDB()
  • Mongo.getReadPrefMode()
  • Mongo.getReadPrefTagSet()
  • Mongo.isCausalConsistency()
  • Mongo.setCausalConsistency()
  • Mongo.setReadPref()
  • Mongo.startSession()
  • Session
  • SessionOptions
  • Native Methods
  • cat()
  • copyDbpath()
  • getHostName()
  • getMemInfo()
  • hostname()
  • listFiles()
  • load()
  • md5sumFile()
  • mkdir()
  • pwd()
  • quit()
  • removeFile()
  • resetDbpath()
  • sleep()
  • setVerboseShell()
  • version()
  • _isWindows()
  • _rand()
  • MongoDB 软件包组件
  • mongod
  • mongos
  • mongo
  • mongod.exe
  • mongos.exe
  • mongodump
  • mongorestore
  • bsondump
  • mongoimport
  • mongoexport
  • mongostat
  • mongotop
  • mongoperf
  • mongoreplay
  • mongoldap
  • mongofiles
  • install_compass
  • 配置文件选项
  • MongoDB 服务器参数
  • MongoDB 限制和阈值
  • Explain Results
  • System Collections
  • 连接字符串 URI 格式
  • Collation
  • 排序规则语言环境和默认参数
  • MongoDB Wire 协议
  • Log Messages
  • 退出代码和状态
  • Glossary
  • 默认的 MongoDB 端口
  • Server Sessions
  • Release Notes
  • MongoDB 3.6 发行说明
  • 3.6 Changelog
  • MongoDB 3.6 中的兼容性更改
  • 将独立版本升级到 3.6
  • 将副本集升级到 3.6
  • 将分片群集升级到 3.6
  • 将 3.6 独立降级到 3.4
  • 降级 3.6 复制副本设置为 3.4
  • 将 3.6 分片集群降级到 3.4
  • MongoDB 3.4 发行说明
  • 3.4 Changelog
  • MongoDB 3.4 中的兼容性更改
  • 将独立版升级到 3.4
  • 将副本集升级到 3.4
  • 将分片群集升级到 3.4
  • 将 MongoDB 3.4 降级到 3.2
  • 将 3.4 独立降级到 3.2
  • 降级 3.4 副本设置为 3.2
  • 将 3.4 分片集群降级到 3.2
  • MongoDB 3.2 发行说明
  • 3.2 Changelog
  • MongoDB 3.2 中的兼容性更改
  • MongoDB 3.2 中的 JavaScript 更改
  • 将 MongoDB 升级到 3.2
  • 从 3.2 降级 MongoDB
  • MongoDB 3.0 发行说明
  • 3.0 Changelog
  • MongoDB 3.0 中的兼容性更改
  • 将 MongoDB 升级到 3.0
  • 升级到 SCRAM
  • 从 3.0 降级 MongoDB
  • MongoDB 2.6 发行说明
  • 2.6 Changelog
  • MongoDB 2.6 中的兼容性更改
  • 将 MongoDB 升级到 2.6
  • 将用户授权数据升级到 2.6 格式
  • 从 2.6 降级 MongoDB
  • MongoDB 2.4 发行说明
  • 2.4 Changelog
  • MongoDB 2.4 中的 JavaScript 更改
  • 将 MongoDB 升级到 2.4
  • MongoDB 2.4 中的兼容性和索引类型更改
  • MongoDB 2.2 发行说明
  • MongoDB 2.0 发行说明
  • MongoDB 1.8 发行说明
  • MongoDB 1.6 发行说明
  • MongoDB 1.4 发行说明
  • MongoDB 1.2.x 发行说明
  • MongoDB Versioning
  • Technical Support
  • Synopsis

    mongod 是 MongoDB 系统的主要守护进程。它处理数据请求,Management 数据访问并执行后台 Management 操作。

    本文档提供了 mongod 的所有命令行选项的完整概述。这些命令行选项主要对测试有用:在常规操作中,使用 配置文件选项 控制数据库的行为。

    Options

  • mongod
  • Core Options

    --help `,` `-h`

  • 返回有关 mongod 选项和用法的信息。
  • --version ``

  • 返回 mongod 版本号。
  • --config <filename> , -f <filename>

  • 指定运行时配置选项的配置文件。配置文件是 mongod 的运行时配置的首选方法。这些选项等效于命令行配置选项。有关更多信息,请参见 配置文件选项
  • 确保配置文件使用 ASCII 编码。 mongod 实例不支持使用非 ASCII 编码的配置文件,包括 UTF-8.

    --verbose `,` `-v`

  • 增加在标准输出或日志文件中返回的内部报告的数量。通过多次包含该选项(例如 -vvvvv )来提高 -v 形式的详细程度。
  • --quiet ``

  • 在安静模式下运行 mongod ,以尝试限制输出量。
  • 此选项禁止显示:

    database commands 的输出

    replication activity

    连接接受的事件

    连接关闭事件

    --port <port>

  • Default :
  • 27017 (如果 mongod 不是分片成员或配置服务器成员)

    27018 (如果 mongod shard member )

    27019 (如果 mongod 配置服务器成员 )

    MongoDB 实例在其上侦听 Client 端连接的 TCP 端口。

  • --bind_ip <ip address>
  • 默认 :localhost
  • Note

    从 MongoDB 3.6 开始,默认情况下, mongod 绑定到 localhost( 127.0.0.1 )。参见 默认绑定到 localhost

    mongod 应该在其上侦听 Client 端连接的 IP 地址和/或完整的 Unix 域套接字路径。您可以将 mongod 附加到任何接口。要绑定到多个地址,请 Importing 一个用逗号分隔的值的列表。

    Example

    localhost,/tmp/mongod.sock

    您可以指定 IPv4 和 IPv6 地址,也可以指定解析为 IPv4 或 IPv6 地址的主机名。

    Example

    localhost, 2001:0DB8:e132:ba26:0d5c:2774:e7f9:d513

    Note

    如果指定 IPv6 地址或将解析为 IPv6 地址的主机名设置为 --bind_ip ,则必须以 --ipv6 开头 mongod 以启用 IPv6 支持。将 IPv6 地址指定为 --bind_ip 不会启用 IPv6 支持。

    如果指定 链接本地 IPv6 地址 ( fe80::/10 ),则必须将 zone index 附加到该地址(即 fe80::<address>%<adapter-name> )。

    Example

    localhost,fe80::a00:27ff:fee0:1fcf%enp0s3

    Tip

    为避免停机,请为每个配置服务器指定一个逻辑 DNS 名称(与服务器的物理或虚拟主机名无关)。如果没有逻辑 DNS 名称,移动或重命名配置服务器需要关闭分片群集中的每个 mongod mongos 实例。

    Warning

    绑定到非 localhost(例如可公开访问)的 IP 地址之前,请确保已保护群集免受未经授权的访问。有关安全建议的完整列表,请参见 Security Checklist 。至少考虑 enabling authentication 加强网络基础设施

    要绑定到所有 IPv4 地址,请 Importing 0.0.0.0

    要绑定到所有 IPv4 和 IPv6 地址,请 Importing 0.0.0.0,:: ,或者使用 net.bindIpAll 设置。

    Note

    --bind_ip --bind_ip_all 是互斥的。同时指定两个选项会导致 mongod 引发错误并终止。

  • --bind_ip_all ``
  • 3.6 版的新功能。
  • 如果指定, mongod 实例将绑定到所有 IPv4 地址(即 0.0.0.0 )。如果 mongod --ipv6 开头,则 --bind_ip_all 也会绑定到所有 IPv6 地址(即 :: )。

    mongod 仅以 --ipv6 开头支持 IPv6.仅指定 --bind_ip_all 不会启用 IPv6 支持。

    Warning

    绑定到非 localhost(例如可公开访问)的 IP 地址之前,请确保已保护群集免受未经授权的访问。有关安全建议的完整列表,请参见 Security Checklist 。至少考虑 enabling authentication 加强网络基础设施

    或者,您可以将 --bind_ip 选项设置为 0.0.0.0,:: 以绑定到所有 IP 地址。

    Note

    --bind_ip --bind_ip_all 是互斥的。也就是说,您可以指定一个或另一个,但不能两个都指定。

  • --clusterIpSourceWhitelist <string>
  • 3.6 版的新功能。
  • IP 地址/ CIDR( 无类域间路由 )的范围是 mongod 验证来自副本集其他成员以及 mongos 实例(如果是分片群集的一部分)的身份验证请求的范围。 mongod 验证原始 IP 是否在列表中显式或属于列表中的 CIDR 范围。如果 IP 地址不存在,则服务器不会验证 mongod mongos

    --clusterIpSourceWhitelist 对没有 authentication mongod 无效。

    --clusterIpSourceWhitelist 接受多个逗号分隔的 IPv4/6 地址或无类域间路由( CIDR )范围:

    mongod --clusterIpSourceWhitelist 192.0.2.0/24,127.0.0.1,::1
    

    Important

    确保部署中的--clusterIpSourceWhitelist包括 IP 地址 CIDR 范围,其中包括每个副本集成员或mongos的 IP 地址,以确保群集组件之间的正常通信。

  • --ipv6 ``
  • 启用 IPv6 支持。 mongod 默认禁用 IPv6 支持。
  • 设置--ipv6不会使 mongod **监听任何本地 IPv6 地址或接口。要将 mongod 配置为在 IPv6 接口上侦听,您必须执行以下任一操作:

    --bind_ip配置一个或多个可解析为 IPv6 地址的 IPv6 地址或主机名,

    --bind_ip_all设置为true

    --listenBacklog <number>

  • 默认:目标系统SOMAXCONN常量
  • 3.6 版的新功能。

    侦听队列中可以存在的最大连接数。

    Warning

    使用此参数之前,请查阅本地系统的文档以了解限制和配置要求。

    Important

    为了防止出现未定义的行为,请为此参数指定一个值,该值介于1和本地系统SOMAXCONN常量之间。

    listenBacklog参数的默认值在编译时设置为目标系统SOMAXCONN常量。 SOMAXCONN是* listen 系统调用的 backlog *参数记录的最大有效值。

    某些系统可能会象征性地解释SOMAXCONN,而其他系统可能会以数字方式解释。在实践中实际使用的“监听积压”可能不同于对_常数或--listenBacklog的参数的任何数字解释,并且也可能受到 Linux 上net.core.somaxconn等系统设置的限制。

    按照标准的标准,传递超过本地系统SOMAXCONN常量的listenBacklog参数的值是未定义的行为。较高的值可能会默默地被整数截断,可能被忽略,可能导致意外的资源消耗或产生其他不利后果。

    根据经验,在工作负荷表现出连接峰值的系统上,本地系统可以比SOMAXCONN常量接受更高的* backlog *参数值,将listenBacklog参数设置为更高的值可以减少操作延迟。通过减少强制进入退避状态的连接数来减少 Client 端。

  • --maxConns <number>
  • mongod **可接受的最大同时连接数。如果此设置高于 os 配置的最大连接跟踪阈值,则该设置无效。
  • 请勿为此选项分配太低的值,否则在正常的应用程序操作过程中会遇到错误。

    Note

    在 2.6 版中进行了更改:MongoDB 删除了maxIncomingConnections设置的上限。

  • --logpath <path>
  • 将所有诊断日志记录信息发送到日志文件,而不是标准输出或主机的syslog系统。 MongoDB 在您指定的路径上创建日志文件。
  • 默认情况下,MongoDB 将移动任何现有的日志文件,而不是覆盖它。要附加到日志文件,请设置--logappend选项。

  • --syslog ``
  • 将所有日志记录输出发送到主机的syslog系统,而不是标准输出或日志文件。 ,例如--logpath
  • Windows 上不支持--syslog选项。

    Warning

    syslog守护程序在记录消息时(而不是在 MongoDB 发出消息时)会生成时间戳。这会导致误导日志条目的时间戳,尤其是在系统负载沉重的情况下。我们建议对生产系统使用--logpath选项,以确保准确的时间戳。

  • --syslogFacility <string>
  • 默认:用户
  • 指定将消息记录到 syslog 时使用的工具级别。os 的 syslog 实现必须支持您指定的值。要使用此选项,必须启用--syslog选项。

    --logappend ``

  • 当 mongod 实例重新启动时,将新条目追加到现有日志文件的末尾。如果没有此选项,mongod将备份现有日志并创建一个新文件。
  • --logRotate <string>

  • 默认:重命名
  • 3.0.0 版中的新功能。

    确定logRotate命令的行为。指定renamereopen

    rename重命名日志文件。

    reopen按照典型的 Linux/Unix 日志轮换行为关闭并重新打开日志文件。使用 Linux/Unix logrotateUtil 时,请使用reopen以避免日志丢失。

    如果指定reopen,则还必须使用--logappend

  • --timeStampFormat <string>
  • 默认:iso8601-local
  • 日志消息中时间戳的时间格式。指定以下值之一:

    ValueDescription ctime将时间戳显示为Wed Dec 31 18:17:54.811iso8601-utc以世界标准时间(UTC)以 ISO-8601 格式显示时间戳。例如,对于大纪元开始时的纽约:1970-01-01T00:00:00.000Z iso8601-local以 ISO-8601 格式显示本地时间的时间戳。例如,对于大纪元开始时的纽约:1969-12-31T19:00:00.000-0500

    Linux

    在 Linux 上,PID 文件 Management 通常由发行版的 init 系统负责:通常是/etc/init.d目录中的服务文件,或者是已systemctl注册的 systemd 单位文件。如果您未使用这些初始化系统之一,则仅使用--pidfilepath选项。有关更多信息,请参见适用于您的 os 的Installation Guide

    macOS

    在 macOS 上,PID 文件 Management 通常由brew处理。如果您不在 macOS 系统上使用brew,请仅使用--pidfilepath选项。有关更多信息,请参见适用于您的 os 的Installation Guide

    --keyFile <file>

  • 指定密钥文件的路径,该密钥文件存储sharded clusterreplica set中 MongoDB 实例用来相互认证的共享密钥。 --keyFile表示--auth。有关更多信息,请参见Internal Authentication
  • --setParameter <options>

  • 指定MongoDB 服务器参数中描述的 MongoDB 参数之一。您可以指定多个setParameter字段。
  • --nounixsocket ``

  • 禁用在 UNIX 域套接字上的侦听。 --nounixsocket仅适用于基于 Unix 的系统。
  • 除非下列条件之一成立,否则 mongod 进程始终在 UNIX 套接字上侦听:

    设置了--nounixsocket

    未设置net.bindIp

    net.bindIp未指定127.0.0.1

    2.6 版中的新功能:从官方.deb.rpm软件包安装的 mongod 默认将bind_ip配置设置为127.0.0.1

  • --unixSocketPrefix <path>
  • 默认:/ tmp
  • UNIX 套接字的路径。 --unixSocketPrefix仅适用于基于 Unix 的系统。

    如果此选项没有值,则 mongod 进程将创建一个以/tmp作为前缀的套接字。除非满足以下条件之一,否则 MongoDB 会在 UNIX 套接字上创建并侦听:

    net.unixDomainSocket.enabledfalse

    设置了--nounixsocket

    未设置net.bindIp

    net.bindIp未指定127.0.0.1

    --filePermissions <path>

  • 默认0700
  • 设置 UNIX 域套接字文件的权限。

    --filePermissions仅适用于基于 Unix 的系统。

  • --fork ``
  • 启用daemon模式,该模式在后台运行 mongod 进程。默认情况下, mongod 不会作为守护程序运行:通常,您将通过--fork或使用处理守护进程的控制进程(例如upstartsystemd)将 mongod 作为守护程序运行。 。
  • Windows 上不支持--fork选项。

  • --auth ``
  • 启用授权以控制用户对数据库资源和操作的访问。启用授权后,MongoDB 要求所有 Client 端首先进行身份验证,以确定该 Client 端的访问权限。
  • 通过mongo shell配置用户。如果不存在用户,则 localhost 接口将 continue 对数据库具有访问权限,直到您创建第一个用户为止。

    有关更多信息,请参见Security

    --noauth ``

  • 禁用身份验证。当前的默认值。存在是为了将来的兼容性和清晰度。
  • --transitionToAuth ``

  • 3.4 版的新增功能:允许 mongod 接受并创建与部署中其他mongodmongos实例之间的经过身份验证和未经身份验证的连接。用于执行副本集或分片群集从 no-auth 配置到internal authentication的滚动过渡。需要指定internal authentication机制,例如--keyFile
  • 例如,如果将keyfiles用于internal authentication,则 mongod **使用匹配的密钥文件与部署中的任何mongodmongos创建经过身份验证的连接。如果安全机制不匹配,则 mongod 将使用未经身份验证的连接。

    --transitionToAuth一起运行的 mongod 不会强制用户访问控制。用户可以在不进行任何访问控制检查的情况下连接到您的部署,并执行读取,写入和 Management 操作。

    Note

    internal authentication --transitionToAuth一起运行的 mongod 要求 Client 端使用用户访问控制进行连接。更新 Client 端以使用适当的user连接到 mongod ,然后重新启动不带--transitionToAuthmongod

    --cpu ``

  • 强制 mongod 进程每四秒钟报告一次写锁定中的 CPU 时间百分比。
  • --sysinfo ``

  • 返回诊断系统信息,然后退出。该信息提供页面大小,物理页面数和可用物理页面数。
  • --noscripting ``

  • 禁用脚本引擎。
  • --notablescan ``

  • 禁止需要收集扫描的操作。有关其他信息,请参见notablescan
  • --shutdown ``

  • --shutdown选项可以安全干净地终止 mongod 进程。使用此选项调用** mongod 时,必须直接设置--dbpath选项,也可以通过configuration file--config选项设置。
  • --shutdown选项仅在 Linux 系统上可用。

    有关其他关闭方法,另请参见停止 mongod 进程

  • --redactClientLogData ``
  • 3.4 版的新增功能:仅在 MongoDB Enterprise 中可用。
  • 运行--redactClientLogDatamongod 将在记录之前删除伴随给定日志事件的任何消息。这样可以防止 mongod 将存储在数据库中的潜在敏感数据写入诊断日志。错误或操作代码,行号和源文件名等元数据仍在日志中可见。

    --redactClientLogData静态加密TLS/SSL(传输加密)结合使用可帮助遵守法规要求。

    例如,MongoDB 部署可能在一个或多个集合中存储个人身份信息(PII)。 mongod 记录事件,例如与 CRUD 操作,分片元数据等相关的事件。 mongod 可能会将 PII 公开为这些记录操作的一部分。与--redactClientLogData一起运行的 mongod 会删除所有伴随这些事件的消息,然后再输出到日志中,从而有效地删除了 PII。

    由于缺少与日志事件相关的数据,对以--redactClientLogData运行的 mongod 进行诊断可能会更加困难。有关--redactClientLogData对日志输出的影响的示例,请参见process logging手册页。

    在运行中的 mongod 上,将setParameterredactClientLogData参数一起使用以配置此设置。

  • --networkMessageCompressors <string>
  • 默认:活泼
  • 3.4 版的新功能。

    指定用于在此 mongod 实例与以下对象之间进行通信的默认压缩器:

    部署的其他成员(如果实例是副本集或分片群集的一部分)

    mongoShell

    支持OP_COMPRESSED消息格式的驱动程序。

    MongoDB 支持以下压缩器:

    snappy

    zlib(在 MongoDB 3.6 或更高版本中可用)

    从 3.6 版本开始mongodmongos默认启用snappy作为压缩器来启用网络压缩。

    要禁用网络压缩,请将值设置为disabled

    Important

    当双方都启用网络压缩时,消息将被压缩。否则,双方之间的消息将不被压缩。

    如果指定多个压缩器,则列出压缩器的 Sequences 以及通信启动器都很重要。例如,如果mongo shell 指定以下网络压缩器zlib,snappy,而mongod指定snappy,zlib,则mongo shell 和mongod之间的消息将使用zlib

    如果各方不共享至少一个公共压缩器,则各方之间的消息将不被压缩。例如,如果mongo shell 指定了网络压缩器zlib,而mongod指定了snappy,则mongo shell 和mongod之间的消息不会被压缩。

  • --timeZoneInfo <path>
  • 加载时区数据库的完整路径。如果未提供此选项,则 MongoDB 将使用其内置时区数据库。
  • Linux 和 macOS 软件包随附的配置文件默认将时区数据库路径设置为/usr/share/zoneinfo

    内置时区数据库是Olson/IANA 时区数据库的副本。它随 MongoDB 版本一起更新,但是时区数据库的发布周期与 MongoDB 的发布周期不同。可以从https://downloads.mongodb.org/olson_tz_db/timezonedb-latest.zip下载时区数据库的最新版本的副本。

    wget https://downloads.mongodb.org/olson_tz_db/timezonedb-latest.zip
    unzip timezonedb-latest.zip
    mongod --timeZoneInfo timezonedb-2017b/
    

    See also

    processManagement.timeZoneInfo.

  • --transportLayer <string>
  • 默认:asio
  • 3.6 版的新功能。

    mongod 使用的网络实现。要恢复到 3.6 版之前的实现,请将此选项更改为legacy

    Warning

    除非 MongoDB 支持团队要求您更改它,否则请不要更改此设置。

  • --serviceExecutor <string>
  • 默认:同步
  • 3.6 版的新功能。

    确定 mongod 用于执行 Client 端请求的线程和执行模型。 --serviceExecutor选项接受以下值之一:

    ValueDescription synchronousmongod 使用同步网络并在每个连接的基础上 Management 其网络线程池。 MongoDB 的早期版本以这种方式 Management 线程。 adaptivemongod 使用带有自适应线程池的新实验性异步联网模式,该线程池根据每个请求 Management 线程。当活动连接数多于数据库请求数时,此模式应具有更一致的性能,并使用更少的资源。

    Important





    使用adaptive要求将--transportLayer设置为asio



    |

    LDAP 身份验证或授权选项

  • --ldapServers <host1>:<port>,<host2>:<port>,...,<hostN>:<port>
  • 3.4 版的新增功能:仅在 MongoDB Enterprise 中可用。
  • mongod 对其进行身份验证的 LDAP 服务器,或确定授权用户在给定数据库上执行的操作。如果指定的 LDAP 服务器具有任何复制实例,则可以在逗号分隔的列表中指定每个复制服务器的主机和端口。

    如果您的 LDAP 基础结构将 LDAP 目录划分为多个 LDAP 服务器,则将* one * LDAP 服务器或其任何复制实例指定为--ldapServers。 MongoDB 支持RFC 4511 4.1.10中定义的以下 LDAP 引用。不要使用--ldapServers列出基础结构中的每个 LDAP 服务器。

    可以使用setParameter在运行中的 mongod 上配置此设置。

    如果未设置, mongod 不能使用LDAP 认证或授权

  • --ldapValidateLDAPServerConfig <boolean>
  • 在 MongoDB Enterprise 中可用
  • 一个标志,用于确定mongod实例是否在启动时检查LDAP server(s)的可用性:

    如果true,则mongod实例执行可用性检查,并且仅在 LDAP 服务器可用时才 continue 启动。

    如果false,则mongod实例跳过可用性检查;即即使 LDAP 服务器不可用,实例也会启动。

    版本 3.6.3 中的新功能。

  • --ldapQueryUser <string>
  • 3.4 版的新增功能:仅在 MongoDB Enterprise 中可用。
  • 连接到 LDAP 服务器或在 LDAP 服务器上执行查询时, mongod 绑定的身份。

    仅在满足以下任一条件时才需要:

    Using LDAP authorization.

    使用 LDAP 查询username transformation

    LDAP 服务器禁止匿名绑定

    您必须将--ldapQueryUser--ldapQueryPassword结合使用。

    如果未设置, mongod 将不会尝试绑定到 LDAP 服务器。

    可以使用setParameter在运行中的 mongod 上配置此设置。

    Note

    Windows MongoDB 部署可以使用--ldapBindWithOSDefaults而不是--ldapQueryUser--ldapQueryPassword。您不能同时指定--ldapQueryUser--ldapBindWithOSDefaults

  • --ldapQueryPassword <string>
  • 3.4 版的新增功能:仅在 MongoDB Enterprise 中可用。
  • 使用--ldapQueryUser时用于绑定到 LDAP 服务器的密码。您必须将--ldapQueryPassword--ldapQueryUser结合使用。

    如果未设置, mongod 将不会尝试绑定到 LDAP 服务器。

    可以使用setParameter在运行中的 mongod 上配置此设置。

    Note

    Windows MongoDB 部署可以使用--ldapBindWithOSDefaults而不是--ldapQueryPassword--ldapQueryPassword。您不能同时指定--ldapQueryPassword--ldapBindWithOSDefaults

  • --ldapBindWithOSDefaults <bool>
  • 默认:false
  • 3.4 版中的新增功能:MongoDB Enterprise 中仅适用于 Windows 平台。

    连接到 LDAP 服务器时,允许 mongod 使用 Windows 登录凭据进行身份验证或绑定。

    仅在以下情况下需要:

    Using LDAP authorization.

    使用 LDAP 查询username transformation

    LDAP 服务器禁止匿名绑定

    使用--ldapBindWithOSDefaults替换--ldapQueryUser--ldapQueryPassword

  • --ldapBindMethod <string>
  • 默认:简单
  • 3.4 版的新增功能:仅在 MongoDB Enterprise 中可用。

    mongod 方法用于对 LDAP 服务器进行身份验证。与--ldapQueryUser--ldapQueryPassword一起使用以连接到 LDAP 服务器。

    --ldapBindMethod支持以下值:

    simple- mongod 使用简单身份验证。

    sasl- mongod 使用 SASL 协议进行身份验证

    如果指定sasl,则可以使用--ldapBindSaslMechanisms配置可用的 SASL 机制。 mongod 默认使用DIGEST-MD5机制。

  • --ldapBindSaslMechanisms <string>
  • 默认:DIGEST-MD5
  • 3.4 版的新增功能:仅在 MongoDB Enterprise 中可用。

    对 LDAP 服务器进行身份验证时,可以使用逗号分隔的 SASL 机制列表“ mongod”。 mongod 和 LDAP 服务器必须在至少一种机制上达成共识。 mongod **在运行时动态加载主机上安装的所有 SASL 机制库。

    在 mongod 主机和远程 LDAP 服务器主机上为选定的 SASL 机制安装并配置适当的库。您的 os 可能默认包括某些 SASL 库。遵循与每个 SASL 机制相关的文档,以获取有关安装和配置的指导。

    如果将GSSAPI SASL 机制用于Kerberos Authentication,请对 mongod 主机验证以下内容:

    Linux

  • KRB5_CLIENT_KTNAME环境变量解析为主机的 Client 端Linux Keytab 文件的名称。有关 Kerberos 环境变量的更多信息,请遵循Kerberos documentation
  • --ldapBindMethod设置为sasl以使用此选项。

    Note

    有关 SASL 机制的完整列表,请参见IANA listing。遵循 LDAP 或 Active Directory 服务的文档,以识别与该服务兼容的 SASL 机制。

    MongoDB 不是 SASL 机制库的来源,MongoDB 文档也不是用于安装或配置任何给定 SASL 机制的 Authority 来源。有关文档和支持,请遵循 SASL 机制库的供应商或所有者。

    有关 SASL 的更多信息,请参考以下资源:

    对于 Linux,请参阅Cyrus SASL 文档

    对于 Windows,请参阅Windows SASL 文档

    3.4 版的新增功能:仅在 MongoDB Enterprise 中可用。

    默认情况下, mongod 创建到 LDAP 服务器的 TLS/SSL 安全连接。

    对于 Linux 部署,必须在/etc/openldap/ldap.conf文件中配置适当的 TLS 选项。os 的程序包 Management 器通过libldap依赖关系在 MongoDB Enterprise 安装中创建此文件。有关更完整的说明,请参见ldap.conf OpenLDAP 文档中的TLS Options文档。

    对于 Windows 部署,必须将 LDAP 服务器 CA 证书添加到 Windows 证书 Management 工具中。该工具的确切名称和功能可能会因 os 版本而异。请参阅您的 Windows 版本的文档,以获取有关证书 Management 的更多信息。

    --ldapTransportSecurity设置为none以禁用 mongod 和 LDAP 服务器之间的 TLS/SSL。

    Warning

    --ldapTransportSecurity设置为none会在 mongod 和 LDAP 服务器之间传输明文信息和凭据。

  • --ldapTimeoutMS <long>
  • 默认:10000
  • 3.4 版的新增功能:仅在 MongoDB Enterprise 中可用。

    mongod 应该 awaitLDAP 服务器响应请求的时间(以毫秒为单位)。

    如果失败的根源是连接超时,则增大--ldapTimeoutMS的值可以防止 MongoDB 服务器与 LDAP 服务器之间的连接失败。减小--ldapTimeoutMS的值可减少 MongoDBawaitLDAP 服务器响应的时间。

    可以使用setParameter在运行中的 mongod 上配置此设置。

  • --ldapUserToDNMapping <string>
  • 3.4 版的新增功能:仅在 MongoDB Enterprise 中可用。
  • 将提供给** mongod 进行身份验证的用户名 Map 到 LDAP 专有名称(DN)。在以下情况下,您可能需要使用--ldapUserToDNMapping将用户名转换为 LDAP DN:

    通过简单的 LDAP 绑定执行 LDAP 身份验证,其中用户使用不是完整 LDAP DN 的用户名向 MongoDB 进行身份验证。

    使用需要 DN 的LDAP 授权查询模板

    使用不同的身份验证机制(例如 x.509,kerberos)将要向 Mongo DB 进行身份验证的 Client 端的用户名转换为完整的 LDAP DN 以进行授权。

    --ldapUserToDNMapping期望用引号括起来的 JSON 字符串表示文档的有序数组。每个文档都包含一个正则表达式match和用于转换传入用户名的substitutionldapQuery模板。

    数组中的每个文档具有以下形式:

    match: "<regex>" substitution: "<LDAP DN>" | ldapQuery: "<LDAP Query>" FieldDescriptionExample matchECMAScript 格式的正则表达式(regex)以与提供的用户名匹配。每个括号括起来的部分代表substitutionldapQuery使用的正则表达式捕获组。"(.+)ENGINEERING" "(.+)DBA" substitutionLDAP 专有名称(DN)格式模板,它将match正则表达式匹配的身份验证名称转换为 LDAP DN。每个大括号括起来的数值都由通过match正则表达式从身份验证用户名中提取的相应的正则表达式捕获组代替。
    替换的结果必须是RFC4514转义的字符串。 "cn={0},ou=engineering, dc=example,dc=com" ldapQuery一个 LDAP 查询格式模板,它将与match正则表达式匹配的身份验证名称插入到遵循 RFC4515 和 RFC4516 编码的 LDAP 查询 URI 中。每个大括号括起来的数值都由通过match表达式从身份验证用户名中提取的相应的正则表达式捕获组代替。 mongod 对 LDAP 服务器执行查询以检索已认证用户的 LDAP DN。 mongod 仅需要一个返回的结果才能成功进行转换,或者 mongod 会跳过此转换。 "ou=engineering,dc=example, dc=com??one?(user={0})"

    Note

    RFC4514RFC4515RFC4516或 LDAP 查询的说明超出了 MongoDB 文档的范围。请直接查看 RFC 或使用您首选的 LDAP 资源。

    对于数组中的每个文档,必须使用substitutionldapQuery。您不能在同一文档中同时指定两者。

    执行身份验证或授权时, mongod 将以给定的 Sequences 遍历数组中的每个文档,并根据match过滤器检查身份验证用户名。如果找到匹配项, mongod 将应用转换并使用输出来验证用户身份。 mongod 不检查数组中的其余文档。

    如果给定文档与提供的认证名称不匹配,或者文档描述的转换失败,则 mongod 将 continue 浏览文档列表以查找其他匹配项。如果在任何文档中都找不到匹配项,则 mongod 将返回错误。

    Example

    下面显示了两个转换文档。第一个文档与以_结尾的任何字符串匹配,将后缀之前的任何内容放入正则表达式捕获组。第二个文档与以@DBA结尾的任何字符串匹配,将后缀之前的任何内容放入正则表达式捕获组。

    Important

    您必须将数组作为字符串传递给--ldapUserToDNMapping

    match: "(.+)@ENGINEERING.EXAMPLE.COM", substitution: "cn={0},ou=engineering,dc=example,dc=com" match: "(.+)@DBA.EXAMPLE.COM", ldapQuery: "ou=dba,dc=example,dc=com??one?(user={0})"

    用户名[email protected]的用户与第一个文档匹配。正则表达式捕获组{0}对应于字符串alice。结果输出为 DN "cn=alice,ou=engineering,dc=example,dc=com"

    用户名[email protected]的用户与第二个文档匹配。正则表达式捕获组{0}对应于字符串bob。结果输出是 LDAP 查询"ou=dba,dc=example,dc=com??one?(user=bob)"mongod 对 LDAP 服务器执行此查询,返回结果"cn=bob,ou=dba,dc=example,dc=com"

    如果未设置--ldapUserToDNMapping,则在尝试对 LDAP 服务器进行身份验证或授权时, mongod 不会对用户名进行任何转换。

    可以使用setParameter数据库命令在运行中的 mongod 上配置此设置。

  • --ldapAuthzQueryTemplate <string>
  • 3.4 版的新增功能:仅在 MongoDB Enterprise 中可用。
  • ** mongod 执行以RFC4515RFC4516格式格式化的相对 LDAP 查询 URL,以获取经过身份验证的用户所属的 LDAP 组。该查询相对于--ldapServers中指定的一个或多个主机。

    使用 URL 中的{USER}占位符替换经过身份验证的用户名,如果指定了username mapping,则使用转换后的用户名。

    构造查询 URL 时,请确保 LDAP 参数的 Sequences 遵守 RFC4516:

    [ dn  [ ? [attributes] [ ? [scope] [ ? [filter] [ ? [Extensions] ] ] ] ] ]
    

    如果您的查询包含一个属性,则 mongod 假设查询检索到该实体所属的 DN。

    如果您的查询不包含属性,则 mongod 假定查询检索用户所属的所有实体。

    对于查询返回的每个 LDAP DN, mongodadmin数据库上为授权用户分配相应的角色。如果admin数据库上的角色与 DN 完全匹配,则 mongod 会向用户授予角色和分配给该角色的特权。有关创建角色的更多信息,请参见db.createRole()方法。

    Example

    此 LDAP 查询返回 LDAP 用户对象的memberOf属性中列出的所有组。

    "{USER}?memberOf?base"
    

    您的 LDAP 配置可能不包含memberOf属性作为用户架构的一部分,可能具有用于报告组成员身份的其他属性,或者可能无法通过属性跟踪组成员身份。根据您自己的唯一 LDAP 配置配置查询。

    如果未设置, mongod 不能使用 LDAP 授权用户。

    可以使用setParameter数据库命令在运行中的 mongod 上配置此设置。

    Note

    RFC4515RFC4516或 LDAP 查询的说明超出了 MongoDB 文档的范围。请直接查看 RFC 或使用您首选的 LDAP 资源。

    Storage Options

  • --storageEngine string
  • 默认wiredTiger
  • 3.0 版中的新功能。

    在版本 3.2 中进行了更改:从 MongoDB 3.2 开始,默认为wiredTiger

    指定 mongod 数据库的存储引擎。可用值包括:

    ValueDescription mmapv1指定
    MMAPv1 存储引擎wiredTiger指定WiredTiger 存储引擎inMemory指定内存中存储引擎


    版本 3.2 中的新功能:仅在 MongoDB Enterprise 中可用。

    如果您尝试使用--dbpath启动 mongod ,其中包含存储引擎产生的数据文件,而不是--storageEngine指定的数据文件,则 mongod 将拒绝启动。

  • --dbpath <path>
  • 默认:Linux 和 macOS 上为/data/db,Windows 上为\data\db
  • mongod 实例存储其数据的目录。

    如果使用 MongoDB 软件包 Management 器安装中随附的默认值configuration file,则相应的storage.dbPath设置将使用其他默认值。

    在版本 3.0 中更改:--dbpath中的文件必须与--storageEngine中指定的存储引擎相对应。如果数据文件与--storageEngine不对应, mongod 将拒绝启动。

  • --directoryperdb ``
  • 使用单独的目录存储每个数据库的数据。这些目录位于--dbpath目录下,每个子目录名称均与数据库名称相对应。
  • 在版本 3.0 中进行了更改:要更改现有部署的--directoryperdb选项,必须使用新的--directoryperdb 新的数据目录(--dbpath<new path>)重新启动mongod实例,然后重新填充数据。

    对于独立实例,可以在现有实例上使用mongodump,停止实例,使用新的--directoryperdb 重新启动新的数据目录,然后使用mongorestore填充新的数据目录。

    对于副本集,您可以通过以下方式滚动更新:停止辅助成员,使用新的--directoryperdb 新的数据目录重新启动,并使用initial sync填充新的数据目录。要更新所有成员,请首先从辅助成员开始。然后,降级主要成员,并更新降级的成员。

    不适用于使用内存存储引擎mongod实例。

  • --noIndexBuildRetry ``
  • 阻止独立的 mongod 在下次启动时重建不完整的索引。这适用于 mongod 在关闭或在索引构建过程中停止后重新启动的情况。在这种情况下,mongod 始终删除所有不完整的索引,然后默认情况下尝试重建它们。要阻止 mongod 在启动时重建不完整的索引,请在命令行中包含此选项。
  • --noIndexBuildRetry不会阻止复制索引的构建。

    不适用于使用内存存储引擎mongod实例。

  • --noprealloc ``
  • *仅适用于 MMAPv1 存储引擎。
  • 从 2.6 版开始不推荐使用:默认情况下,MongoDB 不会预分配数据文件。存在该选项是为了实现兼容性。

    禁用数据文件的预分配。

  • --nssize <value>
  • 默认:16
  • *仅适用于 MMAPv1 存储引擎。

    指定名称空间文件(以.ns结尾的文件)的默认大小。每个集合和索引都计为一个名称空间。

    使用此设置可以控制新创建的名称空间文件的大小。此选项对现有文件没有影响。命名空间文件的最大大小为 2047 MB。 16 兆字节的默认值提供大约 24,000 个名称空间。

  • --quota ``
  • *仅适用于 MMAPv1 存储引擎。
  • 为每个数据库可以具有的数据文件数设置最大限制。使用--quota选项运行时,每个数据库最多有 8 个数据文件。使用--quotaFiles调整配额。

  • --quotaFiles <number>
  • 默认:8
  • *仅适用于 MMAPv1 存储引擎。

    修改每个数据库的数据文件数限制。 --quotaFiles选项要求您设置--quota

  • --smallfiles ``
  • *仅适用于 MMAPv1 存储引擎。
  • 设置 MongoDB 使用较小的默认文件大小。 --smallfiles选项可减小数据文件的初始大小,并将最大大小限制为 512 MB。 --smallfiles还将每个journal文件的大小从 1 GB 减小到 128 MB。如果您有大量数据库,每个数据库都存储少量数据,请使用--smallfiles

    --smallfiles选项可以导致 mongod 实例创建大量文件,这可能会影响较大数据库的性能。

  • --syncdelay <value>
  • 默认:60
  • 控制 MongoDB 通过fsync操作将数据刷新到数据文件之前可以经过的时间。

    请勿在生产系统上设置此值. 在几乎每种情况下,都应使用默认设置。

    Warning

    如果将--syncdelay设置为0,则 MongoDB 不会将内存 Map 文件同步到磁盘。

    mongod 进程非常快速地将数据写入日志,并懒惰地写入数据文件。 --syncdelayjournal文件或journaling无效,但是如果--syncdelay设置为0,则日记将最终消耗所有可用的磁盘空间。如果出于测试目的将--syncdelay设置为0,则还应将--nojournal设置为true

    serverStatus命令通过backgroundFlushing字段报告后台刷新线程的状态。

    不适用于使用内存存储引擎mongod实例。

  • --upgrade ``
  • 如果需要,将--dbpath指定的文件的磁盘数据格式升级到最新版本。
  • 如果数据文件为旧格式,则此选项仅影响 mongod 的操作。

    在大多数情况下,您不应设置此值,因此可以对升级过程进行最大程度的控制。有关升级过程的更多信息,请参见 MongoDB release notes(在下载页面上)。

  • --repair ``
  • 在所有数据库上运行修复例程。这等效于在所有数据库上关闭并运行repairDatabase database 命令。
  • Warning