使用ensureIndex函數(shù)創(chuàng)建集合的索引。
創(chuàng)新互聯(lián)公司專注于信豐網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供信豐營銷型網(wǎng)站建設,信豐網(wǎng)站制作、信豐網(wǎng)頁設計、信豐網(wǎng)站官網(wǎng)定制、微信小程序服務,打造信豐網(wǎng)絡公司原創(chuàng)品牌,更為您提供信豐網(wǎng)站排名全網(wǎng)營銷落地服務。
對集合而言,每個索引只需要創(chuàng)建一次,重復創(chuàng)建沒有任何作用;
> show collections system.indexes users
所有的數(shù)據(jù)庫的索引元數(shù)據(jù)都存放在system.indexs的集合中;
使用getIndexes函數(shù)查看給定的集合上的索引信息:
> db.users.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "blog.users" }, { "v" : 1, "key" : { "username" : 1 }, "name" : "username_1", "ns" : "blog.users" }, { "v" : 1, "key" : { "age" : 1, "username" : 1 }, "name" : "age_1_username_1", "ns" : "blog.users" } ] >
可以適應dropIndex函數(shù)刪除指定的索引:
> db.users.dropIndex({"username":1}) { "nIndexesWas" : 3, "ok" : 1 } > db.users.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "blog.users" }, { "v" : 1, "key" : { "age" : 1, "username" : 1 }, "name" : "age_1_username_1", "ns" : "blog.users" } ] >
上述的例子中可以看到索引的標識默認格式為keyname1_dir1_keyname2_dir….keynameN_DirN;
也可以指定標識名:
> db.users.ensureIndex({"username":1},{"name":"firstname"}) { "createdCollectionAutomatically" : false, "numIndexesBefore" : 2, "numIndexesAfter" : 3, "ok" : 1 } > db.users.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "blog.users" }, { "v" : 1, "key" : { "age" : 1, "username" : 1 }, "name" : "age_1_username_1", "ns" : "blog.users" }, { "v" : 1, "key" : { "username" : 1 }, "name" : "firstname", "ns" : "blog.users" } ] >
修改索引的步驟:刪除索引—>創(chuàng)建索引;
刪除索引可以直接指定索引標識,例如:
> db.users.dropIndex("firstname") { "nIndexesWas" : 3, "ok" : 1 } > db.users.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "blog.users" }, { "v" : 1, "key" : { "age" : 1, "username" : 1 }, "name" : "age_1_username_1", "ns" : "blog.users" } ] >
本文標題:【MongoDB學習筆記22】MongoDB的索引管理
網(wǎng)頁URL:http://chinadenli.net/article20/joegco.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供域名注冊、標簽優(yōu)化、營銷型網(wǎng)站建設、Google、關鍵詞優(yōu)化、網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)