it-swarm.com.de

Stoppen Sie den Replikatsatz MongoDB

Der Befehl zum Starten eines Replikatsatzes in der MongoDB-Shell lautet rs.initiate ().

Was ist das Gegenteil dieses Befehls? Wie stoppe ich den Replikatsatz?

Es gibt Befehle zum Rekonfigurieren der Gruppe oder zum Entfernen von Mitgliedern. Es gibt jedoch keine Möglichkeit, das letzte Mitglied zu entfernen und den Replikatsatz zu zerstören.

16
Josh Elias

Es hängt alles davon ab, was Ihr Ziel ist. Wenn Sie die vorhandene mongod als Standalone-Server anstelle eines Replikatsatzmitglieds wiederverwenden möchten, führen Sie die folgenden Schritte aus:

  1. Starten Sie den Mongod-Prozess ohne --replSet-Argument erneut.
  2. Löschen Sie die lokale Datenbank:

    use local;
    db.dropDatabase();
    
34
Asya Kamsky

Ich habe gerade dieses Problem in der Produktion. @ Maganaps (15. März) Kommentar rettete meinen Speck! 

Mit mongodb 3.2.10 müssen Sie das oplog nicht ausgeben, sondern nur das erste Mitglied:

use local
db.system.replset.remove({}) 

Starten Sie dann das Mitglied neu. Es wird jetzt immer noch sein Oplog und seine Daten haben. Renn einfach:

rs.initiate()
rs.reconfig(conf)

Wo ist conf das neue conf? Führen Sie dann für jedes der anderen Mitglieder einfach den oben genannten Re-Set-Daten-Papierkorb aus, und starten Sie sie erneut. Wenn sie anfangen, werden sie sich dem Set anschließen. 

4
ABrowne

1) Wechseln Sie zur Mongo-Shell auf Sekundärservern

2) Stoppen Sie die sekundären Server mit dem folgenden Befehl:

use admin db.shutdownServer()

2] Gehen Sie zu Linux Shell auf sekundären Servern und geben Sie den folgenden Befehl ein:

Sudo service mongod stop

Weitere Informationen finden Sie unter dem folgenden Link:

http://www.tutespace.com/2016/03/stopping-and-startingmongodb.html