henniee
Goto Top

SQL-Server 2000 / tempdb vergrößern...

Hallo, ich habe andauernd im Ebventlog:
Fehler: 9002, Schweregrad: 17, Status: 6
Die Protokolldatei für die tempdb-Datenbank ist voll. Sichern Sie das Transaktionsprotokoll für die Datenbank, um Protokollspeicherplatz freizugeben.



jetzt habe ich versucht die tempdb zu vergrößern, leider bleibt die Beschränkung wie im Screenshot...
Was kann ich tun?
Bin für jede Hilfe Dankbar...

Content-Key: 19775

Url: https://administrator.de/contentid/19775

Printed on: April 20, 2024 at 02:04 o'clock

Member: MadMax
MadMax Nov 16, 2005 at 04:01:38 (UTC)
Goto Top
Hallo Henniee,

die Datenbank zu vergrößern ist sinnlos, im Normalfall passiert das eh automatisch (Häkchen bei "Datei automatisch vergrößern" auf den Registern "Datendateien" und "Transaktionsprotokoll"). Der Fehler bedeutet nämlich nicht, daß die DB tempdb an sich zu klein ist, sondern nur der Bereich, in dem die Transaktionen mitprotokolliert werden (Transaktionsprotokoll). Prüfe mal folgende Einstellungen:
1. die Häkchen bei "Datei automatisch vergrößern" auf den Registern "Datendateien" und "Transaktionsprotokoll"
2. Wiederherstellung/Modell: Einfach auf dem Register "Optionen"

Wenn die Einstellungen so sind, dann kann die Festplatte voll sein, auf der das Transaktionsprotokoll liegt.

Gruß, Mad Max
Member: Atti58
Atti58 Nov 16, 2005 at 06:56:13 (UTC)
Goto Top
Transaktionsprotokolle werden normalerweise nach einem erfolgreichen Backup automatisch gelöscht - sicherst Du Deine Datenbank denn nicht?

Gruß

Atti
Member: MadMax
MadMax Nov 16, 2005 at 13:33:29 (UTC)
Goto Top
Naja, tempdb sichern ist ziemlich witzlos, oder? face-wink
Member: Atti58
Atti58 Nov 16, 2005 at 14:30:18 (UTC)
Goto Top
... das hab' ich wohl überlesen *rotwerd* ...

Gruß

Atti
Member: MadMax
MadMax Oct 26, 2006 at 19:52:27 (UTC)
Goto Top
Nabend dbfoxy,

wie der Name schon sagt, landen in der tempdb temporäre Daten und Objekte. Deswegen wird wohl auch die Routine nach 10h ins Essen brechen, ich nehme an, da werden ein paar temporäre Tabellen verwendet.

Prüf mal nach, ob bei den DB-Eigenschaften von tempdb im Register "Optionen" beim Wiederherstellungsmodell "Einfach" eingestellt ist. Dann wird das Transaktionsprotokoll von selbst gekürzt. Wenn das nicht reicht, dann sollte zwischen den Befehlen ab und an mal ein "backup log tempdb with truncate_only" stehen, damit wird das Transaktionsprotokoll abgeschnitten.

Außerdem solltest Du mal prüfen, ob Dein 10h-Import nicht inzwischen tatsächlich die Festplatte vollgeschrieben hat und somit das Transaktionsprotokoll nicht vergrößert werden kann.

Gruß, Mad Max
Member: MadMax
MadMax Oct 28, 2006 at 08:30:08 (UTC)
Goto Top
Hm, so ab und an ein kleiner Blick in die Hilfe vom jeweiligen Programm könnte nicht unbedingt schaden. Ich zitiere:


Verschieben von „tempdb“
So ändern Sie den physischen Speicherort der tempdb-Datenbank

1. Ändern Sie die tempdb-Datenbank, indem Sie mithilfe der ALTER DATABASE-Anweisung und der MODIFY FILE-Klausel die physischen Dateinamen aller Dateien in tempdb so ändern, dass sie auf den neuen physischen Speicherort verweisen, z. B. den neuen Datenträger.

2. Beenden Sie SQL Server, und führen Sie einen Neustart durch.

3. Löschen Sie die alten Dateien der tempdb-Datenbank von dem ursprünglichen Speicherort.


Heißt also für Dich:
alter database tempdb modify file (name = tempdev, filename = 'e:\sonstwo\tempdb.mdf')
alter database tempdb modify file (name = templog, filename = 'e:\sonstwo\templog.ldf')

Gruß, Mad Max