On this page本页内容
setFeatureCompatibilityVersion Enables or disables the features that persist data incompatible with earlier versions of MongoDB. 启用或禁用持久化与早期版本MongoDB不兼容的数据的功能。You can only issue the 您只能针对setFeatureCompatibilityVersion against the admin database.admin数据库发出setFeatureCompatibilityVersion。
The command takes the following form:该命令采用以下形式:
db.adminCommand( {
setFeatureCompatibilityVersion: <version>,
writeConcern: { wtimeout: <timeout> }
} )
The values for the version are:version的值为:
| Version | |
|---|---|
"5.0" |
|
"4.4" |
|
"4.2" |
|
"4.0" |
|
"3.6" |
|
"3.4" |
|
"3.2" |
|
The optional 可选的writeConcern specifies the write concern wtimeout value in milliseconds:writeConcern指定以毫秒为单位的写入关注wtimeout值:
60000 milliseconds. 60000毫秒。wtimeout default.wtimeout默认值,请使用更长的时间段。mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。Certain background operations may prevent execution of 某些后台操作可能会阻止执行setFeatureCompatibilityVersion. setFeatureCompatibilityVersion。Use 使用currentOp to identify any ongoing operations.currentOp确定任何正在进行的操作。
featureCompatibilityVersion | |
|---|---|
"5.0" | |
"4.4" until you setFeatureCompatibilityVersion to "5.0".setFeatureCompatibilityVersion设置为“5.0”。 | |
"4.4" | |
"4.2" until you setFeatureCompatibilityVersion to "4.4".setFeatureCompatibilityVersion设置为“4.4”。 | |
"4.2" | |
"4.0" until you setFeatureCompatibilityVersion to "4.2".setFeatureCompatibilityVersion设置为“4.2”。 | |
"4.0" | |
"3.6" until you setFeatureCompatibilityVersion to "4.0".setFeatureCompatibilityVersion设置为“4.0”。 | |
"3.6" | |
"3.4" until you setFeatureCompatibilityVersion to "3.6". setFeatureCompatibilityVersion设置为“3.6”。 | |
"3.4" | |
"3.2" until you setFeatureCompatibilityVersion to "3.4". setFeatureCompatibilityVersion设置为“3.4”。 |
This command must perform writes to an internal system collection. 此命令必须执行对内部系统集合的写入。If for any reason the command does not complete successfully, you can safely retry the command as the operation is idempotent.如果由于任何原因命令没有成功完成,您可以安全地重试该命令,因为操作是幂等的。
To view the 要查看featureCompatibilityVersion for a mongod instance, run the following command on a mongod instance:mongod实例的featureCompatibilityVersion,请在mongod示例上运行以下命令:
The operation is undefined on the 该操作在mongos instances. mongos实例上未定义。For a sharded cluster that has access control enabled, to run the command against a member of the shard replica set, you must connect to the member as a shard local user.对于启用了访问控制的分片集群,要对分片副本集的成员运行命令,必须以分片本地用户的身份连接到该成员。
db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )
The output from this command will resemble one of the following, depending on the current state of the 根据mongod:mongod的当前状态,该命令的输出将类似于以下之一:
If the deployment has the default 如果部署具有默认的featureCompatibilityVersion, or if the setFeatureCompatibilityVersion command has run successfully against the deployment, the featureCompatibilityVersion has the form:featureCompatibilityVersion,或者如果setFeatureCompatibilityVersion命令已针对部署成功运行,则featureCompatibilityVersion的格式为:
"featureCompatibilityVersion" : { "version" : <version> }
If the 如果mongod is in a partially upgraded or downgraded state, the featureCompatibilityVersion has the following form:mongod处于部分升级或降级状态,featureCompatibilityVersion的格式如下:
"featureCompatibilityVersion" : { "version" : <version> , "targetVersion" : <target version> }
For instance, if a sharded cluster has a shard replica set that is read only when you run 例如,如果一个分片集群的分片副本集在对setFeatureCompatibilityVersion command against the mongos, the command will fail, and the featureCompatibilityVersion of the config servers will include the targetVersion field.mongos运行setFeatureCompatibilityVersion命令时是只读的,那么该命令将失败,并且配置服务器的featureCompatibilicyVersion将包含targetVersion字段。
Or if a replica set becomes read only while 或者,如果副本集在setFeatureCompatibilityVersion is running, the command will fail, and the featureCompatibilityVersion of the replica set will include the targetVersion field as well.setFeatureCompatibilityVersion运行时变为只读,则命令将失败,副本集的featureCompatibilityVersion也将包含targetVersion字段。
To enable the 5.0 features that persist data incompatible with MongoDB 4.4, set the feature compatibility to 要启用保持与MongoDB 4.4不兼容数据的5.0功能,请在MongoDB 5.0部署中将功能兼容性设置为"5.0" on the MongoDB 5.0 deployment:"5.0":
Run the 对setFeatureCompatibilityVersion command against the admin database.admin数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。db.adminCommand( { setFeatureCompatibilityVersion: "5.0" } )
To disable the 5.0 features that persist data incompatible with MongoDB 4.4, set the feature compatibility to 要禁用保持与MongoDB 4.4不兼容数据的5.0功能,请在MongoDB 5.0部署中将功能兼容性设置为"4.4" on the MongoDB 5.0 deployment:"4.4":
Run the 对setFeatureCompatibilityVersion command against the admin database.admin数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。"4.4" featureCompatibilityVersion is supported on MongoDB 4.4 and MongoDB 5.0 deployments only."4.4"featureCompatibilityVersion。db.adminCommand( { setFeatureCompatibilityVersion: "4.4" } )
If run as part of the downgrade process from MongoDB 5.0 to MongoDB 4.4, you must also remove all persisted features that are incompatible with 4.4. 如果作为从MongoDB 5.0降级到MongoDB 4.4的过程的一部分运行,则还必须删除所有与4.4不兼容的持久化功能。See the appropriate downgrade procedures.请参阅相应的降级程序。
To enable the 4.4 features that persist data incompatible with MongoDB 4.2, set the feature compatibility to 要启用保留与MongoDB 4.2不兼容数据的4.4功能,请在MongoDB 4.4部署中将功能兼容性设置为"4.4" on the MongoDB 4.4 deployment:"4.4":
Run the 对setFeatureCompatibilityVersion command against the admin database.admin数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。db.adminCommand( { setFeatureCompatibilityVersion: "4.4" } )
To disable the 4.4 features that persist data incompatible with MongoDB 4.2, set the feature compatibility to 要禁用保留与MongoDB 4.2不兼容数据的4.4功能,请在MongoDB 4.4部署中将功能兼容性设置为"4.2" on the MongoDB 4.4 deployment:"4.2":
Run the 对setFeatureCompatibilityVersion command against the admin database.admin数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。"4.2" featureCompatibilityVersion is supported on MongoDB 4.2 and MongoDB 4.4 deployments only."4.2"featureCompatibilityVersion。db.adminCommand( { setFeatureCompatibilityVersion: "4.2" } )
If run as part of the downgrade process from MongoDB 4.4 to MongoDB 4.2, you must also remove all persisted features that are incompatible with 4.2. See the appropriate downgrade procedures.如果作为从MongoDB 4.4降级到MongoDB 4.2的过程的一部分运行,则还必须删除与4.2不兼容的所有持久化功能。请参阅相应的降级程序。
To enable the 4.2 features that persist data incompatible with MongoDB 4.0, set the feature compatibility to 要启用与MongoDB 4.0不兼容的4.2功能,请在MongoDB 4.2部署中将功能兼容性设置为“4.2”:"4.2" on the MongoDB 4.2 deployment:
Run the 对setFeatureCompatibilityVersion command against the admin database.admin数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。db.adminCommand( { setFeatureCompatibilityVersion: "4.2" } )
To disable the 4.2 features that persist data incompatible with MongoDB 4.0, set the feature compatibility to 要禁用保存与MongoDB 4.0不兼容数据的4.2功能,请在MongoDB 4.2部署中将功能兼容性设置为“4.0”:"4.0" on the MongoDB 4.2 deployment:
Run the 对setFeatureCompatibilityVersion command against the admin database.admin数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。"4.0" featureCompatibilityVersion is supported on MongoDB 4.0 and MongoDB 4.2 deployments only."4.0"featureCompatibilityVersion。db.adminCommand( { setFeatureCompatibilityVersion: "4.0" } )
If run as part of the downgrade process from MongoDB 4.2 to MongoDB 4.0, you must also remove all persisted features that are incompatible with 4.0. 如果作为从MongoDB 4.2降级到MongoDB 4.0的过程的一部分运行,则还必须删除所有与4.0不兼容的持久化功能。See the appropriate downgrade procedures.请参阅相应的降级程序。
To enable the 4.0 features that persist data incompatible with MongoDB 3.6, set the feature compatibility to 要启用保持与MongoDB 3.6不兼容数据的4.0功能,请在MongoDB 4.0部署中将功能兼容性设置为"4.0" on the MongoDB 4.0 deployment:"4.0":
Run the 对setFeatureCompatibilityVersion command against the admin database.adnub数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。db.adminCommand( { setFeatureCompatibilityVersion: "4.0" } )
To disable the 4.0 features that persist data incompatible with MongoDB 3.6, set the feature compatibility to 要禁用保持与MongoDB 3.6不兼容数据的4.0功能,请在MongoDB 4.0部署中将功能兼容性设置为“3.6”:"3.6" on the MongoDB 4.0 deployment:
Run the 对setFeatureCompatibilityVersion command against the admin database.admin数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。"3.6" featureCompatibilityVersion is supported on MongoDB 3.6 and MongoDB 4.0 Deployments Only."3.6"featureCompatibilityVersion。db.adminCommand( { setFeatureCompatibilityVersion: "3.6" } )
If run as part of the downgrade process from MongoDB 4.0 to MongoDB 3.6, you must also remove all persisted features that are incompatible with 3.6. See the appropriate downgrade procedures.如果作为从MongoDB 4.0到MongoDB 3.6的降级过程的一部分运行,则还必须删除与3.6不兼容的所有持久化功能。请参阅相应的降级程序。
To enable the 3.6 features that persist data incompatible with MongoDB 3.4, set the feature compatibility to 要启用保留与MongoDB 3.4不兼容数据的3.6功能,请在MongoDB 3.6部署中将功能兼容性设置为“3.6”:"3.6" on the MongoDB 3.6 deployment:
Run the 对setFeatureCompatibilityVersion command against the admin database.admin数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。db.adminCommand( { setFeatureCompatibilityVersion: "3.6" } )
To disable the 3.6 features that persist data incompatible with MongoDB 3.4, set the feature compatibility to 要禁用保留与MongoDB 3.4不兼容数据的3.6功能,请在MongoDB 3.6部署中将功能兼容性设置为"3.4" on the MongoDB 3.6 deployment:"3.4":
Run the 对setFeatureCompatibilityVersion command against the admin database.admin数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。"3.4" featureCompatibilityVersion is supported on MongoDB 3.6 and MongoDB 3.4 Deployments Only."3.4"featureCompatibilityVersion。db.adminCommand( { setFeatureCompatibilityVersion: "3.4" } )
If run as part of the downgrade process from MongoDB 3.6 to MongoDB 3.4, you must also remove all persisted features that are incompatible with 3.4. See the appropriate downgrade procedures.如果作为从MongoDB 3.6降级到MongoDB 3.4的过程的一部分运行,则还必须删除与3.4不兼容的所有持久化功能。请参阅相应的降级程序。
The following example sets the optional write concern 以下示例将可选的写入问题wtimeout field to 5000 (5 seconds).wtimeout字段设置为5000(5秒)。
Run the 对setFeatureCompatibilityVersion command against the admin database.admin数据库运行setFeatureCompatibilityVersion命令。
mongod instance.mongod实例上运行命令。mongos instance.mongos实例上运行该命令。db.adminCommand( {
setFeatureCompatibilityVersion: "5.0",
writeConcern: { wtimeout: 5000 }
} )