Jump to content

SQL Server/ DB Attach geht nicht


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo,

 

kann mir vielleicht einer sagen, warum nach einem wunderbaren detach einer Datenbank die Wiederherstellung mit attach nicht mehr geht ?????? :confused:

 

Ich wollte doch nur das überdimensionale Logfile endlich loswerden. Es hieß Datenbank einfach

exec sp_detach_db 'DATENBANK'

und dann die Logfiles einfach löschen und das Datenfile mit

Exec sp_attach_db 'DATENBANK' N'DATENFILENAME'

wieder anschliessen.

 

Habe es sogar dann mit dem Befehl sp_attach_single_file_db probiert, ging auch in die Hose.

 

Kann mir vielleich jemand helfen ?? :cry:

 

Merci

Link zu diesem Kommentar

Du hast was?

 

Hoffentlich geht da nichts mehr, wenn man einfach eine Log-Datei löscht. Du hast hoffentlich noch eine gute Sicherung, falls nicht, ist die Datenbank ... im Eimer.

 

Wenn Du ein Logfile verkleinern möchtest, dann sichere die Datenbank und verwende die entsprechenden ... ich glaube, truncate - Befehle - das steht alles in der Online-Hilfe.

 

Und informiere dich dringend, was es mit den mindestens zwei Dateien pro logischer Datenbank auf sich hat, von denen Du eine gelöscht hast. In der Online-Hilfe findest Du bsp. den Punkt Sql-Server-Architektur - Datenbankarchitektur - Physische Datenbankarchitektur.

 

[Edit] Das ist ungefähr so, wie wenn Du als Admin auf einem XP-Rechner deine NTLDR, NTDETECT.COM und BOOT.INI löschst und dich beim nächsten Rechnerneustart wunderst, weshalb der Rechner hängt.

 

--------------

Gruß, Auer

Link zu diesem Kommentar

Hallo Leute,

 

meine Datenbank zieht sich die Daten über nacht mit einem ftp Script und liest Sie ein. Es ist nur eine read-only DB. Aber warum sollte das starten der DB ohne Log-File nicht gehen, sobald keine Aktionen darin gespeichert werden, ist mir das doch egal.

 

In irgendeiner Beschreibung im Internet habe ich gelesen, das bei attach ohne Log-File vom SQL Server eine neue angelegt wird.

 

http://www.experts-exchange.com/Databases/Microsoft_SQL_Server/Q_20651271.html

 

Mein Problem ist jetzt folgendes, falls das mit dem Logfile stimmt.

Ich kann diese Datenbank nicht mehr anlegen weil Sie offiziell existiert. Umbennenen kann ich eine andere auch nicht.

 

Also nun ???? I need help :cry::confused:

Link zu diesem Kommentar

Zur Frage, weshalb das Log nicht gelöscht werden kann, verweise ich auf die Sql-Server-Hilfe. Den Link habe ich mangels Reg nicht gelesen.

 

Zum Problem des Logfiles: Sobald Daten geladen werden, wird dies erst im Log protokolliert und mit Prüfpunkt abgeschlossen, dann werden die Änderungen in die eigentliche Hauptdatenbank geschrieben. Da Du Daten einliest, füllt sich das Log. Du kannst allerdings mit der sp_dboption 'trunc. log on chkpt.' festlegen, daß das Protokoll ständig abgeschnitten wird, damit nicht zu groß wird - bei Online-Buchungssystemen wäre dies fahrlässig, beim einmaligen Dateneinlesen oder bei Testdatenbanken ist das problemlos.

 

Die offizielle Hilfe gibt zum Problem einer solchen unterbrochenen sp_attach_db - Operation nichts her, ein Löschen der Datenbank wird wohl nicht funktionieren. Wenn ein Stop des NT-Dienstes nicht automatisch zu einem Rollback dieser Operation führt: Gab es irgendwelche weitergehenden Fehlermeldungen von sp_attach_db? Läßt sich die Datenbank erneut abtrennen, so daß Du die ftp-Daten in eine neue Datenbank einliest? Ansonsten fällt mir bloß noch ein, die DBCC - Funktionen anzuwenden, um die Datenbank in irgendeiner Form soweit reparieren zu lassen, daß sie gelöscht werden kann.

 

-------------

Gruß, Auer

Link zu diesem Kommentar

Hallo Leute,

 

Habe glücklicherweise :) noch ein Backup gefunden was sich aber nur mit der Einstellung zum Überschreiben beim Backup aktivieren liess. Habe aber jetzt wieder das Problem, wie kriege ich mein Monster Logfile los (44GB). Alle DTS Packete loggen von den Einstellungen her nicht, aber es wird immer größer.

 

Wie kann man ein solches Logfile ohne Komplikationen loswerden ?? :confused: Von mir aus kann nach dem Import noch ein Funktion über DTS laufen, die das Logfile wieder leer macht, doch wie geht das, wie sehen die Funktionen aus ??

Link zu diesem Kommentar

Setze mit sp_dboption die Datenbankoption 'trunc. log on chkpt.' auf On. Damit wird das Log nach Sicherungspunkten immer abgeschnitten und wächst nicht mehr so unendlich groß. Dies müßte den Fehler in Zukunft vermeiden.

 

Das Log verkleinern gelingt mit der DBCC Shrinkfile - Funktion. Wenn ich es richtig weiß, dann bleibt dies scheinbar zunächst ohne Wirkung. Als ich damit mal herumgespielt hatte, mußten erst ein paar Daten eingefügt werden, bis der Platz auf der Festplatte freigegeben wurde.

 

-------------

Gruß, Auer

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...