Original von infernogott
Ja PT kann ich noch ganz normal benutzen, also hände einlesen, datenbanken durchsehen usw. deswegen wundert es mich etwas das nur backup und komprimieren nicht geht.
Ich gehe jede Wette ein, dass dein Rechner mal abgestürzt ist. Das ganze kann folgendermassen zu stande kommen: Das Windows Dateisystem ist transaktionsorientiert - d.h. ein Schreibzugriff wird ganz oder garnicht ausgeführt. Angenommen PostgreSQL wollte die Tabellen, die es jetzt nicht finden kann löschen. Es trägt die Nummern der Tabellen also aus dem eigenen Index aus und löscht die Dateien/Verzeichnisse physikalisch auf der Festplatte. Der Index wird idR allerdings nicht sofort auf die Platte geschrieben, sondern erst später (aus Performance gründen). Stürzt dein Rechner jetzt ab, dann steht im alten Index auf der Festplatte die Tabelle noch drin, allerdings ist sie nicht mehr physikalisch auf der Platte zu finden. Bei einem bereinigen der Datenbank schaut PostgreSQL aber alle Tabellen durch und steigt dann aus, weil die Relation nicht mehr vorhanden ist - das gleiche gilt für ein Komplettbackup. Selbst wenn der neue Index aber auf die Festplatte geschrieben wurde, dann kann es trotzdem noch passieren, dass du nach einem Neustart wieder den alten hast. Sollte der Rechner nämlich abstürzen, während die Indexdatei geschrieben wird, so erkennt Windows beim Neustart, dass der Schreibzugriff unvollständig war und stellt die alte Version wieder her (transaktionsorientiert - ganz oder gar nicht). PostgreSQL hat zwar Mechanismen eingebaut, die soetwas verhindern sollen (Transaktionslogs), doch selbst die werden nach einem Absturz von Windows u.U. wieder auf die alte Version zurückgesetzt und somit bekommt Postgres nicht mit, dass es eigentlich Tabellen gelöscht hat.
hm backup mit pt geht nicht, es macht zwar ein backup aber das ist dann nur 0 byte groß -.-
Dann wird's jetzt wirklich kompliziert. Da du vermutlich nicht viel mit Datenbanken zu tun hast, wäre es am einfachsten, wenn du die DB neu initialisierst und die alten HandHistories wieder einliest.
Hast du nicht mehr alle HHs, dann können wir schon versuchen deine Datenbank manuell zu zerlegen. Allerdings wird das ne längere Geschichte, da ich selbst kein PT habe und dir somit nicht schnell ein Skript schreiben kann, welches die nötigen Arbeiten erledigt. Wenn ich Zugriff auf deine Datenbank hätte, dann wäre das ganze schnell erledigt, doch das wird nicht wirklich machbar sein. Je nach Grösse deiner Datenbank könntest du aber den gesamten "data" Ordner zusammenpacken und mir irgendwie schicken. Dann würde ich das schnell hier erledigen.
Gruss,
Alex