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 } } )