sql >> Database >  >> NoSQL >> MongoDB

onbevoegd db-vergrendelingstype:-1

Ik heb een eenvoudige repro geschreven, maar had geen enkel probleem om het succesvol uit te voeren.

public static void main(String[] args) throws UnknownHostException, MongoException {
    Mongo mongo = new Mongo();
    DB db = mongo.getDB("test");
    boolean auth = db.authenticate("scott", "scott".toCharArray());
    DBCollection coll = db.getCollection("myWords");
    DBObject dbObj = (DBObject) JSON.parse("{ \"_id\" : 1.0 , \"words\" : [ \"a\" , \"b\" , \"c\"] , \"score\" : 1.1 , \"data\" : \"foo\"}");
    coll.insert(dbObj);
    System.out.print(coll.findOne().toString());

    Morphia morphia = new Morphia();
    Datastore datastore = morphia.createDatastore(mongo, "test");
    Word w = datastore.find(Word.class).get();
    System.out.print(w);

}

@Entity("myWords")
static class Word {
    @Id Double id;
    ArrayList<String> words = new ArrayList<String>();
    Double score;
    String data;

    @Override
    public String toString() {
        return this.id.toString();
    }


}

Wat resulteerde in dit:

{ "_id" : 1.0 , "words" : [ "a" , "b" , "c"] , "score" : 1.1 , "data" : "foo"} 
...
1.0

Wat het juiste lijkt. Kun je deze code uitvoeren, maar je db/gebruiker/wachtwoord vervangen?



  1. MongoDB - aflopende index raar gedrag

  2. Hoe maak je een gedistribueerd slot aan met Redis?

  3. Match met subtekenreeks in mongodb-aggregatie

  4. Redis is geconfigureerd om RDB-snapshots op te slaan, maar kan momenteel niet op schijf blijven staan ​​- Ubuntu Server