2011-01-05 4 views
0

Quand je suis en train de permettre au tesson ... Je reçois des erreurs suivantes ........Impossible de créer un index tout en sharding

use admin 
switched to db admin 
> db.runCommand({ enablesharding : "sgserver" }) 
{ "ok" : 1 } 
> db.runCommand({ shardcollection : "sgserver.block_seek_pos", key : {fileGUID : 1} }) 

"ok" : 0, 
"errmsg" : "please create an index over the sharding key before sharding." 

> db.sgserver.ensureIndex({"fileGUID": 1}) 
> db.runCommand({ shardcollection : "sgserver.block_seek_pos", key : {fileGUID : 1} }) 

"ok" : 0, 
"errmsg" : "please create an index over the sharding key before sharding." 

Son insistant sur le fait que je crée un index, mais si J'essaye de créer un index je reçois l'erreur mentionnée ci-dessus.

Quelqu'un peut-il m'aider avec ça?

Répondre

2

La collection sgserver est-elle dans la base de données admin?

Je ne vois pas la commande où vous basculez vers la base de données correcte avant de faire ensureIndex(). Le code devrait probablement ressembler à ceci:

db.runCommand({ enablesharding : "sgserver" }); 
use sgserver; 
db.sgserver.ensureIndex({"fileGUID": 1}); 
db.runCommand({ shardcollection : "sgserver.block_seek_pos", key : {fileGUID : 1} }) 
+0

Merci pour votre réponse ......... – SampathKumar