In SQL Server speichern Datenbanken ihre Daten und Objekte (wie Tabellen, Ansichten, gespeicherte Prozeduren usw.) in Dateien. Wenn Sie eine Datenbank mit den Standardoptionen erstellen, werden eine Datendatei und eine Protokolldatei erstellt. Sie sind jedoch nicht auf nur eine von jeder Datei beschränkt. Sie können Datendateien (und Protokolldateien) bei Bedarf zu einem späteren Zeitpunkt zu einer Datenbank hinzufügen.
Dieser Artikel enthält Beispiele für die Verwendung von T-SQL zum Hinzufügen einer Datendatei zu einer vorhandenen Datenbank in SQL Server.
Beispiel
Hier ist ein Beispiel für das Hinzufügen einer einzelnen Datendatei zu einer vorhandenen Datenbank:
USE-Master; GOALTER DATABASE Solutions ADD FILE ( NAME =Solutions_dat_2, FILENAME ='/var/opt/mssql/data/Solutions_dat_2.ndf', SIZE =10MB, MAXSIZE =100MB, FILEGROWTH =5% );GO
Dadurch wird eine Datendatei mit dem logischen Namen Solutions_dat_2 und dem physischen Pfad /var/opt/mssql/data/Solutions_dat_2.ndf
hinzugefügt (Dies ist der physische Speicherort auf dem Computer).
Beachten Sie, dass dieses Beispiel Linux/Mac-Dateipfade verwendet. Wenn Sie Windows verwenden, müssen Sie Backslashes verwenden (\
) anstelle von Schrägstrichen (/
).
Hier ist eine Erklärung der verschiedenen Argumente, die in diesem Beispiel verwendet werden:
NAME
- Gibt den logischen Dateinamen an. Dies ist der logische Name, der in einer Instanz von SQL Server verwendet wird, wenn auf die Datei verwiesen wird.
FILENAME
- Dies ist der vollständige physische Pfad zur Datei (d. h. der Pfad des Betriebssystems zur Datei).
SIZE
- Gibt die Dateigröße an. Kann in KB, MB, GB oder TB angegeben werden.
MAXSIZE
- Die maximale Dateigröße, auf die die Datei anwachsen kann. Kann in KB, MB, GB, TB oder UNBEGRENZT angegeben werden.
FILEGROWTH
- Das automatische Wachstumsinkrement der Datei (die Menge an Speicherplatz, die der Datei jedes Mal hinzugefügt wird, wenn neuer Speicherplatz benötigt wird). Kann in KB, MB, GB, TB oder % angegeben werden.
Der Standardwert ist MB
(für Megabyte).
Überprüfen Sie das Ergebnis
Wir können das Ergebnis überprüfen, indem wir die folgende Abfrage ausführen:
USE-Lösungen; GOSELECT name, physical_name FROM sys.database_files; GEHEN
Ergebnis:
name physikalischer_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_dat_2.ndfWir können die neue Datendatei neben der ursprünglichen Datendatei (und Protokolldatei) aufgelistet sehen.
Natürlich können Sie auch das Sternchen (
*
), um auf Wunsch alle Spalten zurückzugeben.Wenn Sie feststellen, dass Sie sie eines Tages nicht mehr benötigen, können Sie Ihre neue Datendatei jederzeit entfernen.