MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Rails Mongoid kann sich nicht authentifizieren – fehlgeschlagen mit Fehler 13:nicht autorisiert für Abfrage auf my_db.my_collection

Bin auch auf dieses Problem gestoßen. Ich würde vermuten, dass Sie MongoDB 3+ ausführen?

Die schlechte Nachricht: Moped 2 (das heute von Mongoid verwendet wird) unterstützt keine Authentifizierung für MongoDB 3+.

Die gute Nachricht: Eine umfassende Überarbeitung ist gerade im Gange (Mongoid 5), die vom MongoDB-Team unterstützt wird. Sie können heute vom Master ziehen und es ausprobieren ... aber ich würde es noch nicht für die Produktion empfehlen, da es sehr instabil ist.

Lösungsoptionen

  1. Entfernen Sie den Benutzer/übergeben Sie die Authentifizierung von MongoDB und allen öffentlichen DNS an die Datenbank. Verwenden Sie SSH mit einem privaten Schlüssel und verbinden Sie sich mit der privaten Adresse.
  2. Downgrade auf MongoDB 2.x
  3. Verwenden Sie Mongoid 5