Erweitern einer Datenbank

Standardmäßig erweitert SQL Server eine Datenbank automatisch gemäß den Vergrößerungsparametern, die beim Erstellen der Datenbank definiert wurden.Sie können eine Datenbank auch manuell erweitern, indem Sie einer vorhandenen Datenbankdatei zusätzlichen Speicherplatz zuordnen oder eine neue Datei erstellen. Das Erweitern des Speicherplatzes für Daten und Transaktionsprotokolle kann notwendig werden, wenn vorhandene Dateien vollständig gefüllt sind. Wenn eine Datenbank bereits den gesamten zugeordneten Speicherplatz verbraucht hat und eine automatische Vergrößerung der Datenbank nicht mehr möglich ist, wird der Fehler 1105 ausgelöst. Dies ist dann der Fall, wenn keine automatische Vergrößerung der Datenbank eingerichtet wurde oder wenn nicht ausreichend Speicherplatz auf der Festplatte vorhanden ist.

Beim Erweitern einer Datenbank muss der zusätzliche Speicherplatz mindestens 1 MB umfassen. Wenn eine Datenbank erweitert wird, wird der neue Speicherplatz sofort für die Daten- oder für die Transaktionsprotokolldatei zur Verfügung gestellt, je nachdem, welche Datei erweitert wurde. Wenn eine Datenbank erweitert wird, empfiehlt es sich, die maximale Größe anzugeben, bis zu der die Datei vergrößert werden kann. Dadurch wird verhindert, dass die Datei so lange vergrößert wird, bis der gesamte Speicherplatz der Festplatte verbraucht ist. Verwenden Sie zum Angeben der Maximalgröße der Datei den MAXSIZE-Parameter der ALTER DATABASE-Anweisung oder die Option Beschränktauf (MB), wenn Sie zum Erweitern der Datenbank das Dialogfeld Eigenschaften in SQL Server Management Studio verwenden. Beim Erweitern einer Datenbank wird für die Zuordnung zusätzlichen Speicherplatzes für das Transaktionsprotokoll dasselbe Verfahren verwendet.

Wenn das Transaktionsprotokoll nicht so eingerichtet ist, dass es automatisch vergrößert wird, kann der Speicherplatz des Transaktionsprotokolls vollkommen verbraucht werden, wenn bestimmte Aktivitäten in der Datenbank ausgeführt werden. Wenn beispielsweise das Wiederherstellungsmodell der Datenbank auf FULL festgelegt ist, können umfangreiche Massenvorgänge. wie z. B. Massenkopier- oder Indexerstellungsvorgänge, zum raschen Auffüllen des Transaktionsprotokolls führen. Zusätzlich zum Erweitern der Größe des Transaktionsprotokolls kann die Protokolldatei abgeschnitten werden. Durch Abschneiden des Protokolls werden inaktive Transaktionen, für die ein Commit ausgeführt wurde, aus der Datei entfernt, sodass SQL Server Database Engine (Datenbankmodul) die Möglichkeit hat, diesen nicht verwendeten Teil des Transaktionsprotokolls wiederzuverwenden. Der Zeitpunkt und die Art des Abschneidens des Protokolls hängt vom Wiederherstellungsprotokoll der Datenbank ab. Weitere Informationen zum Abschneiden eines Transaktionsprotokolls finden Sie unter Abschneiden des Transaktionsprotokolls.

Erweitern von tempdb

Standardmäßig wird die tempdb-Datenbank automatisch vergrößert, sobald mehr Speicherplatz erforderlich ist, da MAXSIZE für die Dateien auf UNLIMITED festgelegt ist. Aus diesem Grund kann tempdb so lange vergrößert werden, bis der Speicherplatz auf dem Datenträger, auf dem sich tempdb befindet, vollständig verbraucht ist.

Sie können verhindern, dass tempdb unbegrenzt vergrößert wird, indem Sie für den MAXSIZE-Parameter von tempdb einen Wert festlegen. Diese Vorgehensweise wird jedoch nicht empfohlen. Ein Einschränken der Größe von tempdb kann zur Folge haben, dass für die Datenbank nicht ausreichend Speicherplatz zur Verfügung steht. Dies kann erhebliche Störungen in der Produktionsumgebung verursachen und dazu führen, dass ausgeführte Anwendungen Vorgänge nicht abschließen können. Wenn für den MAXSIZE-Parameter von tempdb ein Wert festgelegt wurde und Sie die Größe von tempdb heraufsetzen möchten, müssen Sie eines der folgenden Verfahren anwenden:

  • Heraufsetzen der Größe der Dateien in der Standarddateigruppe, die zurzeit von tempdb verwendet wird.

  • Hinzufügen einer neuen Datei zu der Standarddateigruppe.

  • Aktivieren der automatischen Vergrößerung der Dateien, die von tempdb verwendet werden.

    Wichtiger HinweisWichtig

    tempdb kann keine benutzerdefinierten Dateigruppen enthalten.

Weitere Informationen finden Sie unter tempdb-Datenbank.

So erhöhen Sie die Größe einer Datenbank

So ändern Sie den physikalischen Speicherort einer Datenbank