2016-05-31 5 views
2

Mein mongodb kann jetzt nicht lanuch, wenn ich starten möchte Mongo bekam Fehler ***aborting after invariant() failureWie Mongo (WT-Engine) nur mit Sammlung-0 - ****. Wt-Datei wiederherstellen?

Jetzt möchte ich sammel 0 wiederherstellen -. **** zu einem neuen DB-Datei wt, ist das möglich?

+0

FYI, Fragen zur Datenbankverwaltung gehören eher zu DBA StackExchange als zu StackOverflow. Siehe: [Was kann ich hier fragen?] (Http://stackoverflow.com/help/on-topic). Hoffentlich sollte ein Moderator dies migrieren, so dass es nicht nötig ist, ihn erneut zu veröffentlichen. – Stennie

Antwort

0

Wie bei MongoDB 3.2 können nur vollständige Backups von WiredTiger-Datenverzeichnissen in eine neue Instanz kopiert werden. WiredTiger-Auflistungs- oder Indexdateien sind nicht eigenständig; Sie basieren auf anderen Metadaten in den Katalogdateien WiredTiger.*. Die Invariante/Assertion, die Sie beim Start erhalten, wird erwartet, wenn Datendateien unvollständig oder inkonsistent sind.

Wenn Sie sichern möchten und eine einzige Sammlung wiederherstellen, sollten Sie mongodump und mongorestore verwenden, zB:

mongodump --db test --collection northwind --host host1 

mongorestore --db test dump/test/northwind.bson --host host2 

Für unterstützte vollständige Sicherungsverfahren finden Sie unter: MongoDB Backup Methods.

+0

Hallo, @Stennie, wir haben ganze dbpath-Ordner behalten, aber wir können jetzt nicht lanuch mongo. Kann ich die 'WiredTiger. *' Katalogdateien selbst erstellen? – diggzhang

+0

@diggzhang Läuft deine ursprüngliche 'mongod'-Instanz noch? Wenn Sie Zugriff auf eine funktionierende Instanz haben, würde ich einer der unterstützten Sicherungs- und Wiederherstellungsverfahren folgen. Wenn Sie nicht ... als letzter Ausweg können Sie 'mongod --repair' versuchen. Ich denke, das Wiederherstellen mit dem vollständigen DBpath ist eine andere Frage (und eine, die wahrscheinlich mehr Diskussion beinhaltet, als auf StackOverflow geeignet ist). Ich würde vorschlagen, eine neue Frage mit weiteren Details zu entweder [DBA StackExchange] (https://dba.stackexchange.com/tags/mongodb) oder der Diskussionsgruppe [mongodb-user] (https://groups.google. com/forum/#! forum/mongodb-user). – Stennie

+0

@ Stennie, Yeah, ich war 'mongod --reqair' benutze aber immer noch den Trace-Fehler. – diggzhang