Mongodb在replicaset的secondary上補建索引
1 問題簡述
mongodb replicaset故障,故設定成primary單機,這時在單機上面加了index tid_1,然後設定replicaset,但是
這個時候secondary沒有tid_1,此時怎麼辦?primary上面有索引tid_1, secondary沒有。
2 辦法是有的,就是重新在主庫上面再建一遍索引。
db.tickets.getIndexes();
use ssodatabase;
3 找到原來的建索引的語句
db.tickets.ensureIndex({ "tid" : 1 },{ "name" : "tid_1" });
修改成
db.tickets.ensureIndex({ "tid" : 1 },{ "name" : "tid_2" });
4 primary上執行
PRIMARY>
PRIMARY> db.tickets.ensureIndex({ "tid" : 1 },{ "name" : "tid_2" });
PRIMARY>
5 check主庫的indexes,沒有任何變化
PRIMARY> db.tickets.getIndexes();
[
{
"v" : 1,
"key" : {
"_id" : 1
},
"ns" : "ssodatabase.tickets",
"name" : "_id_"
},
{
"v" : 1,
"key" : {
"tid" : 1
},
"ns" : "ssodatabase.tickets",
"name" : "tid_1"
}
]
PRIMARY>
別慌,去secondary上去看看。
6 check secondary庫的indexes,有變化了
SECONDARY> db.tickets.getIndexes();
[
{
"v" : 1,
"key" : {
"_id" : 1
},
"ns" : "ssodatabase.tickets",
"name" : "_id_"
},
{
"v" : 1,
"key" : {
"tid" : 1
},
"ns" : "ssodatabase.tickets",
"name" : "tid_2"
}
]
SECONDARY>
看到多了tid_2,表示建成功了,而且primary和secondary都只有一個關於tid的key的index,雖然index的名字不一樣。
索引MongoDB與MySQL等關係型資料庫還是大大不同的,secondary庫沒有index沒有關係,在primary上面重新create即可。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26230597/viewspace-1102524/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mongodb replicaSet 模式搭建MongoDB模式
- mongoDB的索引MongoDB索引
- MongoDB 索引MongoDB索引
- mongodb索引使用MongoDB索引
- 快速掌握mongoDB(三)——mongoDB的索引詳解MongoDB索引
- MongoDB索引的簡單理解MongoDB索引
- MongoDB中的定時索引MongoDB索引
- MongoDB索引,效能分析MongoDB索引
- 【Mongo】MongoDB索引管理-索引的建立、檢視、刪除MongoDB索引
- mongodb建立索引和刪除索引和背景索引backgroundMongoDB索引
- mongodb 如何檢視索引MongoDB索引
- MongoDB ( 五 )高階_索引MongoDB索引
- MongoDB學習之豐富的索引MongoDB索引
- MySQL索引(二):建索引的原則MySql索引
- 採用secondary的冷備份的方式來新增新的secondary節點
- 【MongoDB學習筆記】MongoDB索引那點事MongoDB筆記索引
- MongoDB慢查詢與索引MongoDB索引
- 005.MongoDB索引及聚合MongoDB索引
- MongoDB索引優化詳解MongoDB索引優化
- MongoDB複合索引詳解MongoDB索引
- 在 Fedora 上安裝 MongoDB 伺服器MongoDB伺服器
- 在Red Hat和Centos上安裝MongoDBCentOSMongoDB
- 在滴滴雲上搭建 MongoDB 叢集 (一):MongoDB
- 9.19 abc371補題 & map 在 dp 上的妙用
- 在windows上構建OpenCascadeWindows
- mongodb資料庫如何建立索引?MongoDB資料庫索引
- MongoDB中複合索引結構MongoDB索引
- MongoDB索引與優化詳解MongoDB索引優化
- (2) SqlServer表與索引的結構的補充SQLServer索引
- 構建vscode的vue元件程式碼補全外掛以及上傳VSCodeVue元件
- 在MongoDB資料庫中查詢資料(上)MongoDB資料庫
- 在windows上構建LLVM 7.0.1WindowsLVM
- 在Windows上使用Docker 建立MongoDB 副本集的極簡方法(翻譯)WindowsDockerMongoDB
- 理解索引(上)索引
- 「生產事故」MongoDB複合索引引發的災難MongoDB索引
- 在 GitHub 上構建並存放自己的 npm packageGithubNPMPackage
- 建木在 Rainbond 上使用實踐AI
- SQLServer索引優化(3):對於建組合索引的要求SQLServer索引優化
- 在分割槽表上使用正確的索引來提高效能索引