Seite 1 von 1

User-Tabelle in DB gelöscht, Hilfe bei Wiederherstellung?

Verfasst: 25.11.2012 10:02
von Redragon
Hi zusammen,

zunächst mal tut's mir leid, dass ich Euch behelligen muss, denn das Problem hab ich ganz allein verursacht, und es wäre vermeidbar gewesen... Also, ich lern grad sehr viel aus der Sache, daher bitte nicht schimpfen, das tu ich schon ausreichend selbst. ;-)

An der Stelle sei gleich noch erwähnt, dass ich zwar alle Mods von Hand installieren kann, ich von Datenbanken jedoch so gut wie keine Ahnung habe, ich schaffs normalerweise aber, Änderungen laut Installationsanleitungen händisch durchzuführen.

Mit meinem derzeitigen Problem suche ich nun jemanden, der mir einen Tipp geben kann, wie ich meine Tabelle Users in der Datenbank wiederherstellen kann, ohne Content zu zerkloppen.

Was ist passiert?

Ich habe gestern mehrere Mods eingebaut, alle neuen funktionierten einwandfrei. Beim Mod "User Mention" gabs dann Probleme, da ich nicht gesehen hatte, dass es eine neuere Version gibt (ich hatte also die alte mit alten SQL-Anweisungen genutzt). Beim Aktualisieren funktionierte der Mod dann zwar halbwegs, jedoch war ich der Meinung, die veralteten SQL-Anweisungen rückgängig machen zu müssen, da es Probleme mit dem schon seit einer Weile installierten und gut funktionierenden mChat gab (die es jetzt, nachdem ich alles rückgängig gemacht habe, übrigens immer noch gibt, seufz). Ich dachte, wenn ich einfach in der User-Tabelle den Eintrag "user_notify_mention" komplett lösche und die aktuelle SQL-Anweisung nutze, um das nochmal neu anzulegen, wäre alles einwandfrei.

Dem war aber nicht so. Anscheinend, wie ich dann herausfand, habe ich mir damit irgendwie die komplette User-Tabelle gelöscht.

Ok, jetzt kommt das, weshalb ich selber schuld bin: ich hatte vorher kein DB-Backup gemacht... Ich hab noch ein uraltes, in dem kaum Content ist, jedoch die User bis auf zwei alle vorhanden wären...

Ich habe dann mithilfe des Support Tool Kits wieder Zugang bekommen und auch einen Adminaccount angelegt. Ich kann sehen, dass sämtliche Inhalte noch da sind, als Autoren sind auch die alten Benutzernamen noch vorhanden, nur der Link führt dann zur Fehlermeldung, der User sei nicht bekannt. Auch wenn ich ein Topic anklicke, sehe ich die korrekte Anzahl der Antworten im Thema, jedoch keinerlei Inhalt.

Wie kann ich jetzt weiter machen?

Laienhaft gedacht: Wenn ich die User-Tabelle wieder so herstelle wie sie war, mit den alten IDs, reicht das aus, um die Inhalte wieder mit den Usern zu verknüpfen?

Wenn nein, kann ich in der Datenbank händisch Anpassungen vornehmen, zur Not für jeden der paar hundert Beiträge einzeln (das wäre es mir wert), um die Verknüpfung zwischen Inhalten und Usern wieder herzustellen?

In dem alten Backup habe ich zwei Anweisungen, die ich laienhaft gedacht jetzt nutzen würde, um die Tabelle wieder herzustellen:

Code: Alles auswählen

# Table: users
DROP TABLE IF EXISTS users;
CREATE TABLE `users` (
  `user_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
USW...
und

Code: Alles auswählen

INSERT INTO users (user_id,
USW... 
Beide sind ziemlich umfangreich.

Wenn ich diese beiden Anweisungen in mySQL laufen lasse, ist dann was die User betrifft alles wieder beim Alten? Sprich, dass ich mich mit meinen alten Accounts wieder einloggen kann und die ersatzweise angelegten dann wieder verschwunden sind?

Sind dann schon automatisch alle Beiträge wieder mit den Nutzern verknüpft oder müsste ich dann noch was machen?

Ich mache jetzt erstmal nichts mehr, bevor ich nicht eine Einschätzung von jemandem gehört habe, der mehr davon versteht als ich...

Mir ist SEHR wichtig (außer der Tatsache, dass das Forum überhaupt wieder läuft), dass die Inhalte erhalten bleiben. Es käme dem Tod des Forums gleich, wenn die jetzt weg wären... Und ja, daraus lerne ich, in Zukunft vorher Backups zu machen. ;-)

Leider hab ich bisher auch keine Liste der vorher installierten Mods gemacht... :-( Die URL des Forums nutzt wenig, da es ein absolut geschütztes ist und hochsensibel (man sieht also ohne eingeloggt zu sein rein gar nichts), die User sind nur aktiv, weil ich versprochen habe, dass keinerlei Inhalte von außen gesehen werden können. Daher würde ich gern vermeiden, die URL öffentlich hier einzustellen, danke. Ich habe phpbb 3.0.11 installiert. Wenn Ihr noch Angaben braucht, bitte Bescheid sagen.

Ganz herzlichen Dank schon im voraus für jedwede Hilfe!!!
Adrian

Ach so, tut mir leid, noch ein Nachsatz, weils mir grad auffällt, könnte wichtig sein:

Im ACP auf der Startseite steht unter Statistiken eindeutig, dass nicht nur der Inhalt, sondern auch die Benutzeraccounts noch da sind... Da steht die alte Anzahl plus den neu geschaffenen Adminaccount... ??? Wie kann das denn sein, wenn die Tabelle in der Datenbank leer ist?? Gäbe es also vielleicht eine noch einfachere Möglichkeit, alles wieder herzustellen, wenn es theoretisch doch alles noch irgendwo da ist??

Übrigens fehlen im Adminbereich auch einige Elemente... Ich kann z.B. den Cache nicht löschen, weil der Button fehlt, der Reiter Styles fehlt komplett, unter Mods fehlt der Teil über mChat, der vorher da war usw... Hat das was mit dem STK zu tun oder auch mit irgendwelchen Datenbankproblemen?

Re: User-Tabelle in DB gelöscht, Hilfe bei Wiederherstellung

Verfasst: 25.11.2012 11:10
von Miriam
Zuerst einmal: Ruhe bewahren!

Wenn NUR DIE USER-TABELLE gelöscht wurde kannst Du sie mit den von Dir geposteten Befehlen wieder herstellen und füllen.
Mache VORHER ein Backup der ganzen Datenbank. Benutze dazu den mysqldumper.

Beachte auch: KB:phpmyadmin und KB:pma_faq.

Falls Du es erst auf Deinem Rechner zu Hause testen willst, lies KB:Umzug.

Re: User-Tabelle in DB gelöscht, Hilfe bei Wiederherstellung

Verfasst: 25.11.2012 11:13
von Mahony
Hallo
Redragon hat geschrieben:Übrigens fehlen im Adminbereich auch einige Elemente... Ich kann z.B. den Cache nicht löschen, weil der Button fehlt, der Reiter Styles fehlt komplett
Das liegt daran, dass nur Gründer das Recht haben den cache zu leeren und auf die Styles zuzugreifen.

Grüße: Mahony

Re: User-Tabelle in DB gelöscht, Hilfe bei Wiederherstellung

Verfasst: 25.11.2012 12:26
von Redragon
Hallo Ihr beiden,

ganz ganz herzlichen Dank für die schnelle Reaktion!!!

Ich habe nun die beiden Querys laufen lassen und nun ist es wieder auf dem Stand vom Backup, d.h. es fehlen mir nur zwei User, die bisher eh noch nichts gepostet hatten, und alle müssen ihre Profileinstellungen, Avatare usw. nochmal neu machen. Auch scheinen alle Beiträge, stichpunktartig geprüft, korrekt zugeordnet, auch wenn die Anzahl in der Mitgliederliste nicht korrekt ist.

Soweit so gut. Puuuuuhhhh!

ich danke Euch sehr, damit habt Ihr mir sehr schnell geholfen und den größten Batzen Unheil, den ich selber angerichtet habe, deutlichst minimieren können.

Jetzt die Frage: wo kann ich die Anzahl der geschriebenen Beiträge in der Datenbank händisch korrigieren, damit sie auf dem korrekten Stand ist? Beispiel: ein User hatte zum Zeitpunkt des Backups 2 Beiträge, jetzt sind es laut Suche übers Profil 58... Wo kann ich die Zahl in der DB von 2 auf 58 ändern, und das entsprechend für alle User?

Leider hat sich wie gesagt das Problem mit dem mChat aufgrund des User Mention Mods immer noch nicht aufgelöst, obwohl ich alle Dateien in den alten Zustand versetzt habe. Muss das nochmal kontrollieren.

Außerdem bekomme ich einen blank screen, wenn ich einen Beitrag poste. Der wird auch erstellt und ist dann aufrufbar, jedoch scheint was mit der Weiterleitung nach dem Abschicken nicht zu stimmen. Da ich für den User mention Mod sowohl posting.php als auch functions_posting.php angepackt habe, werd ich beide nochmal besonders kontrollieren. Aber das wäre Thema eines neuen Threads, denn dieser ist mit der Wiederherstellung der User erledigt, wenn Ihr mir noch helfen könnt, die Beitragszahl zu korrigieren.

Nochmals meinen allerherzlichsten Dank und einen schönen Sonntag an alle! :-)
Adrian

PS: Jetzt sehe ich auch wieder die vorher verschwundenen Adminbereiche, genau so war es, Mahony! :-)

Re: User-Tabelle in DB gelöscht, Hilfe bei Wiederherstellung

Verfasst: 25.11.2012 12:37
von Mahony
Hallo
wo kann ich die Anzahl der geschriebenen Beiträge in der Datenbank händisch korrigieren, damit sie auf dem korrekten Stand ist?
Du kannst im Administrations-Bereich den Beitragszähler und die Statistiken resynchronisieren.

Statistiken resynchronisieren
Berechnet die Anzahl von Beiträgen, Themen, Benutzern und Dateien neu.

Beitragszähler resynchronisieren
Nur existierende Beiträge werden berücksichtigt, nicht jedoch automatisch gelöschte.

Grüße: Mahony

Re: User-Tabelle in DB gelöscht, Hilfe bei Wiederherstellung

Verfasst: 25.11.2012 13:10
von Redragon
Oh wow... so einfach! Hat wunderbar funktioniert, danke danke danke! :-)

*Ich vermisse den "anbet-Smilie"...alternativ den daumen hoch smilie oder einen danke button* ;-)

Schönen Sonntag!!
Adrian