发布于 2015-09-14 14:55:05 | 593 次阅读 | 评论: 0 | 来源: 网络整理
Creates an index on the field specified, if that index does not already exist.
参数: |
---|
警告
Index names, including their full namespace (i.e. database.collection) can be no longer than 128 characters. See the db.collection.getIndexes() field “name” for the names of existing indexes.
Consider the following prototype:
db.collection.ensureIndex({ <key>: 1})
This command creates an index, in ascending order, on the field [key].
If the keys document specifies more than one field, than db.collection.ensureIndex() creates a compound index. To specify a compound index use the following form:
db.collection.ensureIndex({ <key>: 1, <key1>: -1 })
This command creates a compound index on the key field (in ascending order) and key1 field (in descending order.)
注解
The order of an index is important for supporting cursor.sort() operations using the index.
The 索引 section of this manual for full documentation of indexes and indexing in MongoDB.
Option | Value | Default |
---|---|---|
background | true or false | false |
unique | true or false | false |
name | string | none |
cache | true or false | true |
dropDups | true or false | false |
sparse | true or false | false |
expireAfterSeconds | integer | none |
v | index version | 1 |
Options: |
|
---|
Please be aware of the following behaviors of ensureIndex():
To add or change index options you must drop the index using the db.collection.dropIndex() and issue another ensureIndex() operation with the new options.
If you create an index with one set of options, and then issue ensureIndex() method command with the same index fields and different options without first dropping the index, ensureIndex() will not rebuild the existing index with the new options.
If you call multiple ensureIndex() methods with the same index specification at the same time, only the first operation will succeed, all other operations will have no effect.
Non-background indexing operations will block all other operations on a database.
You cannot stop a foreground index build once it’s begun. See the Monitor and Control Index Building for more information.
[1] | The default index version depends on the version of mongod running when creating the index. Before version 2.0, the this value was 0; versions 2.0 and later use version 1. |