Wenn Sie eine Datenbank in SQL Server mit den Standardoptionen erstellen, werden eine Datendatei und eine Protokolldatei erstellt. Die Datendatei speichert die Daten und Datenbankobjekte (wie Tabellen, Ansichten, gespeicherte Prozeduren usw.). Die Protokolldatei speichert die Informationen, die zum Wiederherstellen aller Transaktionen in der Datenbank erforderlich sind. Wenn Sie eine wachsende Datenbank haben, befinden Sie sich möglicherweise in der Situation, dass Sie eine neue Protokolldatei (und/oder Datendatei) hinzufügen müssen.
So wie Sie einer vorhandenen Datenbank in SQL Server weitere Datendateien hinzufügen können, können Sie auch weitere Protokolldateien hinzufügen. Die Syntax unterscheidet sich jedoch geringfügig, je nachdem, ob Sie eine Datendatei oder eine Protokolldatei erstellen. Das Hinzufügen einer Datendatei erfordert ADD FILE
beim Hinzufügen einer Protokolldatei ist ADD LOG FILE
erforderlich .
Dieser Artikel zeigt, wie Sie mithilfe von T-SQL eine Protokolldatei zu einer vorhandenen Datenbank in SQL Server hinzufügen.
Beispiel
Um eine Protokolldatei zu einer vorhandenen Datenbank hinzuzufügen, verwenden Sie ALTER DATABASE
-Anweisung mit dem ADD LOG FILE
Streit. Geben Sie die Details der neuen Protokolldatei an und führen Sie die Anweisung aus.
Hier ist ein Beispiel:
USE master; GO ALTER DATABASE Solutions ADD LOG FILE ( NAME = Solutions_log_2, FILENAME = '/var/opt/mssql/data/Solutions_log2.ldf', SIZE = 10MB, MAXSIZE = 100MB, FILEGROWTH = 5% ); GO
Dadurch wird eine Protokolldatei mit dem logischen Namen Solutions_log_2
hinzugefügt zu den Solutions
Datenbank. Wir geben an, dass der physische Pfad /var/opt/mssql/data/Solutions_log2.ldf
ist . Beachten Sie, dass dieser Pfad Linux/Mac-Syntax verwendet. Wenn Sie Windows verwenden, müssen Sie die entsprechende Syntax verwenden (Backslashes anstelle der Schrägstriche).
Überprüfen Sie das Ergebnis
Sie können das Ergebnis überprüfen, indem Sie die folgende Abfrage ausführen:
USE Solutions; GO SELECT name, physical_name FROM sys.database_files; GO
Ergebnis:
name physical_name --------------- -------------------------------------- Solutions /var/opt/mssql/data/Solutions.mdf Solutions_log /var/opt/mssql/data/Solutions_log.ldf Solutions_dat_2 /var/opt/mssql/data/Solutions_dat2.ndf Solutions_dat_3 /var/opt/mssql/data/Solutions_dat3.ndf Solutions_log_2 /var/opt/mssql/data/Solutions_log2.ldf
Wir können die neue Protokolldatei neben der ursprünglichen Protokolldatei (sowie verschiedenen Datendateien) sehen.
In diesem Beispiel wähle ich nur zwei Spalten der sys.database_files
aus Ansicht anzuzeigen. Sie können auch das Sternchen (*
), um auf Wunsch alle Spalten zurückzugeben.