Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server - nur Windows
In SQL Server 2012 (11.x) und höheren Versionen können Systemdatenbanken (master
, model
, msdb
und tempdb
), und Datenbankmodul-Benutzerdatenbanken mit dem Server Message Block (SMB)-Dateiserver als Speicheroption installiert werden. Dies gilt sowohl für eigenständige SQL Server - als auch für SQL Server -Failoverclusterinstallationen (FCI).
Hinweis
FILESTREAM wird derzeit nicht für eine SMB-Dateifreigabe unterstützt.
Überlegungen zur Installation
SMB-Dateifreigabeformate
Beim Angeben der SMB-Dateifreigabe werden die folgenden UNC-Pfadformate (Universal Naming Convention) für eigenständige und FCI-Datenbanken unterstützt:
\\ServerName\ShareName\
\\ServerName\ShareName
Weitere Informationen finden Sie unter Universal Naming Convention.
Der UNC-Loopbackpfad (ein UNC-Pfad, dessen Servername localhost 127.0.0.1
oder der Name des lokalen Computers ist) wird nicht unterstützt. Als Sonderfall wird SQL Server mit Dateiservercluster, der auf demselben Knoten gehostet wird wie SQL Server, ebenfalls nicht unterstützt. Um diese Situation zu verhindern, sollten Sie SQL Server und den Dateiservercluster auf getrennten Windows-Clustern erstellen.
Die folgenden UNC-Pfadformate werden nicht unterstützt:
- Loopbackpfad, z. B
\\localhost\...\
oder\\127.0.0.1\...\
- Administrative Freigaben, z. B.
\\servername\x$
- Weitere UNC-Pfadformate wie
\\?\x:\
- Zugeordnete Netzlaufwerke
Unterstützte DDL-Anweisungen(Data Definition Language, Datendefinitionssprache)
SMB-Dateifreigaben werden von den folgenden Transact-SQL-DDL-Anweisungen und gespeicherten Datenbank-Engine-Prozeduren unterstützt:
Installationsoptionen
Legen Sie auf der Setup-Benutzeroberfläche auf der Seite "Datenbankmodulkonfiguration " auf der Registerkarte "Datenverzeichnisse " den Parameter "Datenstammverzeichnis " als
\\<FileServer>\<Share1>\
. fest. Ersetzen Sie<FileServer>
und<Share1>
durch Werte aus Ihrer Umgebung.Geben Sie in der Eingabeaufforderungsinstallation
/INSTALLSQLDATADIR
als\\<FileServer>\<Share1>\
an.Dies ist die Beispielsyntax zum Installieren von SQL Server auf einem eigenständigen Server mithilfe der SMB-Dateifreigabeoption:
Setup.exe /q /ACTION=Install /FEATURES=SQL /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<password>" /SQLSYSADMINACCOUNTS="<DomainName\UserName>" /AGTSVCACCOUNT="<DomainName\UserName>" /AGTSVCPASSWORD="<password>" /INSTALLSQLDATADIR="\\FileServer\Share1\" /IACCEPTSQLSERVERLICENSETERMS
Ab SQL Server 2022 (16.x) lesen Sie die Microsoft SQL Server-Softwarelizenzbedingungen unter aka.ms/useterms.
So installieren Sie eine aus einem Knoten bestehende SQL Server-Failoverclusterinstanz mit der Datenbank-Engine und Analysis Services (Standardinstanz):
setup.exe /q /ACTION=InstallFailoverCluster /InstanceName=MSSQLSERVER /INDICATEPROGRESS /ASSYSADMINACCOUNTS="<DomainName\UserName>" /ASDATADIR=<Drive>:\OLAP\Data /ASLOGDIR=<Drive>:\OLAP\Log /ASBACKUPDIR=<Drive>:\OLAP\Backup /ASCONFIGDIR=<Drive>:\OLAP\Config /ASTEMPDIR=<Drive>:\OLAP\Temp /FAILOVERCLUSTERDISKS="<Cluster Disk Resource Name - for example, 'Disk S:'" /FAILOVERCLUSTERNETWORKNAME="<Insert Network Name>" /FAILOVERCLUSTERIPADDRESSES="IPv4;xx.xxx.xx.xx;Cluster Network;xxx.xxx.xxx.x" /FAILOVERCLUSTERGROUP="MSSQLSERVER" /Features=AS,SQL /ASSVCACCOUNT="<DomainName\UserName>" /ASSVCPASSWORD="<password>" /AGTSVCACCOUNT="<DomainName\UserName>" /AGTSVCPASSWORD="<password>" /INSTALLSQLDATADIR="\\FileServer\Share1\" /SQLCOLLATION="SQL_Latin1_General_CP1_CS_AS" /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<password>" /SQLSYSADMINACCOUNTS="<DomainName\UserName> /IACCEPTSQLSERVERLICENSETERMS
Weitere Informationen zur Verwendung verschiedener Befehlszeilenparameteroptionen in SQL Server finden Sie unter Installieren und Konfigurieren von SQL Server unter Windows über die Eingabeaufforderung.
Hinweis
Ihre Kennwörter sollten der SQL Server-Standardkennwortrichtlinie entsprechen. Ein Standardkennwort enthält mindestens acht Zeichen, die aus drei der folgenden vier Kategorien stammen müssen: Großbuchstaben, Kleinbuchstaben, Grundzahlen (0–9) und Symbole. Kennwörter können bis zu 128 Zeichen lang sein. Verwenden Sie möglichst lange und komplexe Kennwörter.
Überlegungen zum Betriebssystem (SMB-Protokoll vs. SQL Server)
Jedes Windows-Betriebssystem verfügt über eine eigene SMB-Protokollversion, die gegenüber SQL Server transparent ist. Sie können die Vorteile der verschiedenen SMB-Protokollversionen in Bezug auf SQL Serververgleichen.
Betriebssystem | SMB2-Protokollversion | Vorteile für SQL Server |
---|---|---|
Windows Server 2012 und höhere Versionen, einschließlich Server Core | 3.0 | Unterstützung für transparentes Failover von Dateifreigaben – ohne Ausfallzeiten und Eingriffe seitens SQL-DBA durch den Datenbankadministrator oder Dateiserveradministratoren in Dateiserver-Clusterkonfigurationen. Unterstützung für die E/A über mehrere Netzwerkschnittstellen gleichzeitig und Toleranz für Netzwerkschnittstellenfehler. Unterstützung für Netzwerkschnittstellen mit RDMA-Funktionen. Weitere Informationen zu diesen Features und zum Blockieren von Servernachrichten finden Sie in der Übersicht über den Servernachrichtenblock. Unterstützung für den Scale-Out File Server (SoFS) mit kontinuierlicher Verfügbarkeit. |
Windows Server 2012 R2 und höhere Versionen, einschließlich Server Core | 3.2 | Unterstützung für transparentes Failover von Dateifreigaben – ohne Ausfallzeiten und Eingriffe seitens SQL-DBA durch den Datenbankadministrator oder Dateiserveradministratoren in Dateiserver-Clusterkonfigurationen. Unterstützung für E/A über mehrere Netzwerkschnittstellen gleichzeitig und Toleranz für Netzwerkschnittstellenfehler, unter Verwendung von SMB Multichannel. Unterstützung für Netzwerkschnittstellen mit RDMA-Funktionen, unter Verwendung von SMB Direct. Weitere Informationen zu diesen Features und zum Blockieren von Servernachrichten finden Sie in der Übersicht über den Servernachrichtenblock. Unterstützung für Scale-Out-Dateiserver (SoFS) mit kontinuierlicher Verfügbarkeit. Optimiert für kleine, zufällige Lese- und Schreib-E/A-Vorgänge, die bei SQL Server-Transaktions-Workloads häufig vorkommen. Maximale Übertragungseinheit (Maximum Transmission Unit, MTU) ist standardmäßig aktiviert; hierdurch wird bei umfassenden sequenziellen Übertragungen wie SQL Server Data Warehouse- und Datenbanksicherungen und -wiederherstellungen die Leistung wesentlich verbessert. |
Sicherheitshinweise
Das SQL Server-Dienstkonto und das SQL Server-Agent-Dienstkonto sollten
FULL CONTROL
über Freigabeberechtigungen und NTFS-Berechtigungen für die SMB-Freigabeordner verfügen. Das SQL Server -Dienstkonto kann ein Domänen- oder Systemkonto sein, wenn ein SMB-Dateiserver verwendet wird. Weitere Informationen zu Freigabe- und NTFS-Berechtigungen finden Sie unter "Freigeben" und "NTFS-Berechtigungen" auf einem Dateiserver.Hinweis
Die
FULL CONTROL
Freigabeberechtigungen und NTFS-Berechtigungen für die SMB-Freigabeordner sollten auf das SQL Server-Dienstkonto, das SQL Server Agent-Dienstkonto und Windows-Benutzer mit Administratorserverrollen beschränkt sein.Verwenden Sie ein Domänenkonto als SQL Server-Dienstkonto. Wenn das Systemkonto als Dienstkonto verwendet wird, erteilen Sie die Berechtigungen für das Computerkonto im Format
<domain-name>\<computer-name>*$*
.Hinweis
Während der SQL Server-Einrichtung müssen Sie das Domänenkonto als Dienstkonto angeben, wenn die SMB-Dateifreigabe als Speicheroption angegeben wird. Bei der SMB-Dateifreigabe kann das
System
Konto nur nach der Installation von SQL Server als Dienstkonto angegeben werden.Virtuelle Konten können nicht an einem Remotestandort authentifiziert werden. Alle virtuellen Konten verwenden die Berechtigung des Computerkontos. Geben Sie das Computerkonto im folgenden Format an:
<domain-name>\<computer-name>*$*
.Das Konto, das zum Installieren von SQL Server verwendet wird, sollte über VOLLZUGRIFF für den Ordner "SMB-Dateifreigabe" verfügen, der als Datenverzeichnis oder andere Datenordner (Benutzerdatenbankverzeichnis, Benutzerdatenbankprotokollverzeichnis,
tempdb
Verzeichnis, tempdb-Protokollverzeichnis, Sicherungsverzeichnis) während des Cluster-Setups verwendet wird.Dem Konto, das zum Installieren von SQL Server verwendet wird, sollten Berechtigungen für den SMB-Dateiserver gewährt
SeSecurityPrivilege
werden. Um dieses Privileg zu gewähren, verwenden Sie die Konsole für die Lokale Sicherheitsrichtlinie auf dem Datei-Server, um das SQL-Server-Setupkonto der Richtlinie Überwachungs- und Sicherheitsprotokolle verwalten hinzuzufügen. Diese Einstellung ist im Abschnitt " Benutzerrechtezuweisungen " unter "Lokale Richtlinien" verfügbar.
Einschränkungen und bekannte Probleme
Nachdem Sie eine SQL Server-Datenbank getrennt haben, die sich im netzwerkgebundenen Speicher befindet, treten möglicherweise Datenbankberechtigungsprobleme auf, während Sie versuchen, die SQL Server-Datenbank erneut anzufügen. Weitere Informationen finden Sie unter Fehler 5120.
Wenn die SMB-Dateifreigabe als Speicheroption für eine gruppierte Instanz von SQL Server verwendet wird, kann das SQL Server-Failoverclusterdiagnoseprotokoll standardmäßig nicht in die Dateifreigabe geschrieben werden, da die SQL Server-Ressourcen-DLL keine Lese-/Schreibberechtigung für die Dateifreigabe besitzt. Führen Sie eine der folgenden Aktionen aus, um diesen Fehler zu beheben:
Erteilen Sie allen Computerobjekten im Cluster Lese-/Schreibberechtigungen für die Dateifreigabe.
Legen Sie als Speicherort für die Diagnoseprotokolle einen lokalen Dateipfad fest. Sehen Sie sich folgendes Beispiel an:
ALTER SERVER CONFIGURATION SET DIAGNOSTICS LOG PATH = 'C:\logs';
Wenn Sie SQL Server-Datendateien auf SMB-Dateifreigaben hosten, gehen alle Ein-/Ausgabevorgänge mit den Dateien über die Netzwerkschnittstelle auf dem Server oder der virtuellen Maschine. Stellen Sie sicher, dass genügend Netzwerkbandbreite vorhanden ist, um die für die Workload erforderliche E/A zu unterstützen.
Die Nichtverfügbarkeit der Dateifreigabe, auf der die SQL Server-Datendateien gespeichert sind, kann aufgrund von Netzwerkverbindungsproblemen oder anderen Fehlern zu E/A-Verzögerungen oder -Fehlern im SQL Server führen. Stellen Sie für unternehmenskritische Workloads Redundanz im Netzwerk und bei den Dateifreigaben sicher. Sorgen Sie außerdem dafür, dass die Dateifreigabe ein transparentes Failover gemäß SMB 3.0 unterstützt. Diese Funktion wird auch als fortlaufende Verfügbarkeit bezeichnet.