切记:数据库操作需谨慎,建议做好操作失败的操作,也能及时处理。
由于本次建立的索引,后台创建,并找到对应措施如:可以及时中断索引的创建
索引创建操作:以下操作在数千万条数据的表格实践过
1、查看集合是否有索引:
db.getCollection("_TEMPLATE_TASK_TIME_HISTORY").getIndexes();
2、索引总值大小:
db.getCollection("_TEMPLATE_TASK_TIME_HISTORY").totalIndexSize()
3、删除索引(能放后台执行就在后台执行):
db.getCollection("_TEMPLATE_TASK_TIME_HISTORY").dropIndex({"countTime":1},{background:true})
4、创建索引(一定要在后台执行,否则锁库,原因是在建索引时大量的读写会把数据搞坏):
db.getCollection("_TEMPLATE_TASK_TIME_HISTORY").dropIndex({"countTime":1},{background:true})
5、查看索引创建进度:
db.currentOp().inprog.forEach(function(op){ if(op.msg) print(op.msg) })