導出mongo索引mongodb
今天使用mongoshake工具同步mongodb
發現索引不能同步,因此找了一個同步索引腳本ide
在源庫執行這個腳本工具
var collectionList = db.getCollectionNames(); for(var index in collectionList){ var collection = collectionList[index]; var cur = db.getCollection(collection).getIndexes(); if(cur.length == 1){ continue; } for(var index1 in cur){ var next = cur[index1]; if(next["key"]["_id"] == '1'){ continue; } print( "try{ db.getCollection(\""+collection+"\").ensureIndex("+JSON.stringify(next.key)+",{background:1, unique:" + (next.unique || false) + "" + (next.expireAfterSeconds > 0 ? ", expireAfterSeconds :" + next.expireAfterSeconds : "") + " })}catch(e){print(e)}")}}
結果如圖ui
在目標庫執行查出的結果.net
try{ db.getCollection("mongodb_log").ensureIndex({"@timestamp":1,"ip":1},{background:1, unique:false })}catch(e){print(e)} try{ db.getCollection("mycat").ensureIndex({"@timestamp":1,"ip":1},{background:1, unique:false })}catch(e){print(e)} try{ db.getColle ...... try{ db.getCollection("test").ensureIndex({"uid":-1},{background:1, unique:false })}catch(e){print(e)}
不能白漂,感謝楊、懟懟 和 popsidelee
轉載至
https://blog.csdn.net/qq_22956867/article/details/102917841
https://blog.csdn.net/badyting/article/details/84753790code