Ich versuche, eine Datenbank mit zwei unformatierten Partitionen zu erstellen.
Microsoft Docs gibt an, dass Sie dies tun können. Sie müssen lediglich den Laufwerksbuchstaben der unformatierten Partition angeben, wie in:
CREATE DATABASE DirectDevice
ON (NAME = DirectDevice_system, FILENAME = 'S:')
LOG ON (NAME = DirectDevice_log, FILENAME = 'T:')
SQL Server 2017 gibt jedoch diesen Fehler zurück:
Meldung 5170, Ebene 16, Status 4, Zeile 1 Die
Datei 'S:' kann nicht erstellt werden, da sie bereits vorhanden ist. Ändern Sie den Dateipfad oder den Dateinamen und wiederholen Sie den Vorgang.
Meldung 1802, Ebene 16, Status 4, Zeile 1
ERSTELLEN DER DATENBANK fehlgeschlagen. Einige aufgelistete Dateinamen konnten nicht erstellt werden. Überprüfen Sie die zugehörigen Fehler.
Der relevante Teil der Dokumentation besagt:
Wenn sich die Datei auf einer unformatierten Partition befindet, darf os_dateiname nur den Laufwerksbuchstaben einer vorhandenen unformatierten Partition angeben. Auf jeder Raw-Partition kann nur eine Datendatei erstellt werden.
Und ja, Laufwerk S: und T: sind beide unformatierte unformatierte Partitionen, die in meinem System vorhanden sind:
DISKPART> Detailpartition Partition 4 Geben Sie Folgendes ein: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 Versteckt: Nein Erforderlich: Nein Attrib: 0000000000000000 Offset in Bytes: 999934656512 Volumen ### Ltr Label Fs Typ Größe Status Info ---------- --- ----------- ----- ---------- ------- ---- ----- -------- * Volume 6 T RAW-Partition 127 MB fehlerfrei DISKPART> Partition 3 auswählen Partition 3 ist jetzt die ausgewählte Partition. DISKPART> Detailpartition Partition 3 Geben Sie Folgendes ein: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 Versteckt: Nein Erforderlich: Nein Attrib: 0000000000000000 Offset in Bytes: 1000067825664 Volumen ### Ltr Label Fs Typ Größe Status Info ---------- --- ----------- ----- ---------- ------- ---- ----- -------- * Volume 7 S RAW-Partition 129 MB fehlerfrei
Das Entfernen des Doppelpunkts aus den Laufwerksbuchstaben wie in FILENAME = 'S'
und FILENAME = 'T'
führt zu:
Meldung 5105, Ebene 16, Status 2, Zeile 1
Ein Fehler bei der Dateiaktivierung ist aufgetreten. Der physische Dateiname 'S' ist möglicherweise falsch. Diagnostizieren und korrigieren Sie zusätzliche Fehler und wiederholen Sie den Vorgang.
Meldung 1802, Ebene 16, Status 1, Zeile 1
ERSTELLEN DER DATENBANK fehlgeschlagen. Einige aufgelistete Dateinamen konnten nicht erstellt werden. Überprüfen Sie die zugehörigen Fehler.
Die SQL Server 2000-Dokumentation zeigt das folgende Beispiel im CREATE DATABASE
Abschnitt:
H. Verwenden von unformatierten Partitionen In
diesem Beispiel wird eine Datenbank mit dem Namen Employees mithilfe von unformatierten Partitionen erstellt. Die unformatierten Partitionen müssen vorhanden sein, wenn die Anweisung ausgeführt wird, und auf jeder unformatierten Partition kann nur eine Datei gespeichert werden.
USE master
GO
CREATE DATABASE Employees
ON
( NAME = Empl_dat,
FILENAME = 'f:',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = 'Sales_log',
FILENAME = 'g:',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB )
GO
Das obige Beispiel zeigt jedoch SIZE
, MAXSIZE
und FILEGROWTH
Parameter, die für SQL Server-Datendateien, die auf RAW-Partitionen gespeichert sind, eindeutig nicht erforderlich sind.
Weitere Details aus der SQL Server 2000-Dokumentation, insbesondere zu Raw-Laufwerken:
Verwenden von unformatierten Partitionen
Microsoft® SQL Server ™ 2000 unterstützt die Verwendung von unformatierten Partitionen zum Erstellen von Datenbankdateien. Raw-Partitionen sind Festplattenpartitionen, die nicht mit einem Microsoft Windows NT®-Dateisystem wie FAT und NTFS formatiert wurden. In einigen Fällen kann die Verwendung von Datenbanken, die auf unformatierten Partitionen erstellt wurden, zu einem leichten Leistungsgewinn gegenüber NTFS oder FAT führen. Bei den meisten Installationen werden jedoch bevorzugt Dateien verwendet, die auf NTFS- oder FAT-Partitionen erstellt wurden. Wenn Sie eine Datenbankdatei auf einer unformatierten Partition erstellen, geben Sie nicht die physischen Namen der Dateien an, aus denen die Datenbank besteht. Sie geben nur die Laufwerksbuchstaben der Datenträger an, auf denen die Datenbankdateien erstellt werden sollen. Wenn Sie Microsoft Windows® 2000 Server verwenden, können Sie bereitgestellte Laufwerke erstellen, um auf unformatierte Partitionen zu verweisen. Wenn Sie ein lokales Laufwerk in einem leeren Ordner mounten, Windows 2000 weist dem Laufwerk einen Laufwerkspfad zu und keinen Laufwerksbuchstaben. Bereitgestellte Laufwerke unterliegen nicht dem durch Laufwerksbuchstaben festgelegten Limit von 26 Laufwerken. Daher können Sie eine unbegrenzte Anzahl von unformatierten Partitionen verwenden. Wenn Sie eine Datenbankdatei auf einem bereitgestellten Laufwerk erstellen, müssen Sie den Laufwerkspfad zum Dateinamen mit einem abschließenden Backslash () beenden, z. B. E: \ Beispielname. Informationen zum Erstellen eines bereitgestellten Laufwerks finden Sie in der Windows 2000 Server-Dokumentation.Bei der Verwendung von unformatierten Partitionen sind verschiedene Einschränkungen zu beachten:
Auf jeder unformatierten Partition kann nur eine Datenbankdatei erstellt werden. Die logische Partition muss als einzelne Datenbankdatei konfiguriert werden, da sich auf der unformatierten Partition kein Dateisystem befindet.Standard-Dateisystemoperationen wie Kopieren, Verschieben und Löschen können nicht mit unformatierten Partitionen verwendet werden.
Datenbankdateien auf unformatierten Partitionen können nicht mit dem Windows NT-Sicherungsdienstprogramm gesichert werden. Es können jedoch weiterhin SQL Server-Datenbank- oder Transaktionsprotokollsicherungen erstellt werden.
Datenbankdateien auf unformatierten Partitionen können nicht automatisch erweitert werden. Erstellen Sie die Datenbank zunächst in voller Größe oder erweitern Sie die Datenbankdateien manuell. Weitere Informationen finden Sie unter Erweitern einer Datenbank.
Es können nur Partitionen mit Buchstaben wie E: oder bereitgestellte Laufwerke wie E: \ Beispielname \ verwendet werden. Nummerierte Geräte können nicht verwendet werden.
Dateisystemdienste wie das Ersetzen fehlerhafter Blöcke sind bei unformatierten Partitionen nicht verfügbar.
Dies wurde von inspiriert Brent Ozar der Post über SQL Server 6.5 , das tat Rohpartitionen unterstützen