Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So fügen Sie einer SQL Server-Datenbank (T-SQL) eine Protokolldatei hinzu

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.