Ich habe die mongodb 3.4.1 auf dem ubuntu 16.04 installiert und auf Digital Ocean gehostet.mongoose kann autorisierte db nicht verbinden
Mein lokaler Mongo Kunde war mongochef 4.5.2
Zuerst habe ich die Berechtigung für meine App nicht eingerichtet, es gehackt und wurde für Bitcoin als Lösegeld gefragt. Also habe ich versucht, die Autorisierung einzurichten. Ist jedoch ein Kabelproblem aufgetreten, einmal die authorization: enable
in die /etc/mongo.conf einstellen. Es ist nicht möglich, die Datenbank remote und lokal mit der mongoose
zu verbinden, und hat den Fehler auth failed. Aber es könnte mit dem Terminal und dem MongoChef verbunden sein.
hier ist meine Verbindung mit Mungo
global.db=mongoose.connect('mongodb://admin:[email protected]:27017/nodedb');
und ich habe auch versucht,
var options = {
user : "admin",
pass : “admin123",
auth : {authMechanism: 'MONGODB-CR'}
} global.db = mongoose.connect('mongodb://@ip:27017/test',options);
und verändert auch die ip mit localhost und 127.0.0.1 lokal ausgefallen ist, gleich.
Nur für den Fall, dass der localhost und 127.0.0.1 nicht erkannt wurde. Auch stellen Sie die Konfiguration in der Datei/etc/hosts mit:
127.0.0.1 localhost 127.0.0.1 computename
Update ~:
gibt es zwei Benutzer in meiner Admin-DB. Einer ist Root-Benutzer. Und eine andere ist admin mit admin123, die authentifizierte DB nodedb
wirklich von diesem Problem erschöpft ist, hat jemand dieses Problem begegnen ???
danke Neuling. Ich habe bereits einen Benutzer zum nodedb hinzugefügt, der admin: admin123 ist. Obwohl dieser Benutzer dem nodedb authentifiziert ist. Aber es ist tatsächlich in der Admin-DB gespeichert. Sind alle Benutzer in mongodb erforderlich, um in Admin zu speichern? – Suwen