Zuweisung Inhalte gelöschten Accounts auf neuen

  • Affected Version
    WoltLab Suite 3.0

    Heyo,

    habe aktuell folgendes Problem:
    Einer meiner Admins hat entweder ausversehen einen User gelöscht beim Zuweisen neuer Rechte oder der User ist aus unbekannten Gründen einfach aus dem Forum verschwunden. Zum Glück nur der Account des Users weg und alle Posts, Themen, PNs des Users sind noch in der Datenbank / Forum (aber als username und der Titel als Gast markiert). Wie kann ich nun am besten alles dem neuen Account des Users zuordnen?


    Post zum Zuordnen im Woltlab-Forum zum WCF 2.1

    Hatte obigen Beitrag schon gelesen, aber ich möchte mir einfach absolut sicher sein, dass ich, wenn ich in der Datenbank arbeite, keinen Mist baue.

    Wir haben das WoltLab Suite Forum 5.0.22, WoltLab Suite Version 3.0.22.

    Ich kenne die alte userID und den alten username.

    Natürlich ist bei allen seinen alten Inhalten im Forum / Wiki die userID auf NULL gesetzt worden, aber der username ist überall original dran geblieben.


    Also was müsste ich jetzt im SQL ausführen?

    Wäre das so schon ungefähr richtig?


    Bei Conversation. Müsste ich das auch für "Conversation _message" und "conversation_message_search_index" machen?

    Bei Conversation Tabellen allgemein: Auch noch lastPosterID ergänzen, wenn es dem username entspricht?



    Schonmal großen lieben Dank für jedwede Hilfe!

  • Kann mir schwer vorstellen das es Probleme gibt wenn du die Befehle ausführst.


    Wenn du auf ganz Nummer sicher gehen willst;

    1. Forum in Wartungsmodus setzen
    2. Backup der Datenbank erstellen
    3. Befehle ausführen
    4. Prüfen ob Zuweisung korrekt sind
    5. Wartungsmodus entfernen

    Wenn etwaiges (hoffentlich nicht) nochmal vorkommen sollte, weist du ob es klappt oder nicht :)

  • Ich habe hier das gleiche Problem mit einem User nach dem Update auf 5.2. Der User war so komplett weg, dass eine neue Registrierung unter dem gleichen Usernamen möglich war. Die alten Beiträge enthalten in der DB bei UserID NULL. funktioniert der im Eingangspost gelistete Code auch bei der 5.2?

  • Ich habe hier das gleiche Problem mit einem User nach dem Update auf 5.2. Der User war so komplett weg, dass eine neue Registrierung unter dem gleichen Usernamen möglich war. Die alten Beiträge enthalten in der DB bei UserID NULL. funktioniert der im Eingangspost gelistete Code auch bei der 5.2?

    Wenn das Update fehlgeschlagen ist, würde ich erstmal ein Backup einspielen und das Update wiederholen, und nicht versuchen die bereits sichtbaren Auswirkungen zurechtzufrickeln. War der Benutzer denn vorher wirklich noch vorhanden?

  • Das Update ist ohne Fehlermeldungen durchgelaufen, also denke ich, dass ein Einspielen des Backus kein anderes Ergebnis bringen würde. Eher vermute ich, dass die Datenbank über die Jahre korrupt geworden ist, da immer wieder Backups im laufenden Betrieb erstellt wurden, die dann auch immer mal wieder eingespielt wurden. Ich kann aber sagen, dass der letzte Beitrag des gelöschten Users von vor ca. 2 Tage vor dem Update stammt. Sonst gibt es keinerlei Meldungen seitens der User, dass irgend etwas nicht rund läuft. Letztendlich kann ich auch Dusseligkeit nicht ausschließen ;)


    Nachdem wir sicher gestellt haben, dass die Person hinter dem neuen Account die selbe Person ist, die hinter dem alten Account stand, würde ich daher die entsprechende Zuordnung der Inhalte zum neuen Account vornehmen.

  • Eher vermute ich, dass die Datenbank über die Jahre korrupt geworden ist, da immer wieder Backups im laufenden Betrieb erstellt wurden

    Das glaube ich eher nicht, da das im Normalfall nicht zu Fehlern führt.

    Ich sichere seit Ewigkeiten sämtliche Internet-Präsenzen im laufenden Betrieb und habe dadurch noch nicht ein Mal irgendwelche Probleme bekommen, warum auch? Die jeweilige Tabelle wird bei der Bearbeitung eh kurz gelocked und gut ist.


    Weitaus kritischer wäre es umgekehrt, wenn Du ein Restore im Live-Betrieb durchführen würdest. Davon würde ich dringend abraten, das kann fast nur schief gehen.


    Was den User angeht, so kannst Du ggf. auch nur die einzelnen User-Tabellen zurück spielen. Die komplette DB ist dazu im Normalfall gar nicht notwendig. Es sei denn, es sind auch Abhängigkeiten "verschwunden", die diesen einen User betreffen.

    Gruß

    Jörg

    (Jaydee)

  • Der Meinung bin ich nicht. Dann müsste ja selbst ein Cronjob nachts jedes mal seinerseits z.B. ein Forum kurz schließen, um eine Sicherung zu fahren. Das macht doch kein Mensch...

    Und es gibt auch technisch dazu absolut keinen Grund, derartige Empfehlungen sind immer nur (leicht übertriebene) Vorsicht.


    Man sollte allerdings derartige Arbeiten auf möglichst Lastarme Zeiten (also bestimmte Nacht-Zeiten) verlegen, das stimmt. Obwohl ich das manuell sogar teils tagsüber am WE mache, z.B. vor Updates. Und es gab in 20 Jahren nicht ein Mal irgenwelche Probleme dadurch und selbst wenn es die mal gäbe, hat man (hoffentlich) ein zeitnahes Backup als "Fallback".

    Gruß

    Jörg

    (Jaydee)

  • Due Backups erfolgten bisher immer über ein Backup des gesamten Servers (Snapshot). Das kann im laufenden Betrieb schon Probleme machen bei Schreibzugriffen auf die DB. Aber insgesamt spricht es sehr für die WoltLab-Software, dass da trotzdem so wenig passiert ist. Deswegen würde mich schon interessieren ob man mit der Beschreibung auch im 5.2er die Datensätze einem User wieder zuordnen kann.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!