Installieren von SQL Server mit dem Speicher der SMB-DateifreigabeInstall SQL Server with SMB fileshare storage

Ab SQL Server 2012SQL Server 2012können Systemdatenbanken (master, model, msdb und tempdb) sowie DatenbankmodulDatabase Engine -Benutzerdatenbanken mit dem SMB-Dateiserver (Server Message Block) als Speicheroption installiert werden.Starting with SQL Server 2012SQL Server 2012, system databases (Master, Model, MSDB, and TempDB), and DatenbankmodulDatabase Engine user databases can be installed with Server Message Block (SMB) file server as a storage option. Dies gilt sowohl für eigenständige SQL ServerSQL Server - als auch für SQL ServerSQL Server -Failoverclusterinstallationen (FCI).This applies to both SQL ServerSQL Server stand-alone and SQL ServerSQL Server failover cluster installations (FCI).

Hinweis

Filestream auf einer SMB-Dateifreigabe wird derzeit nicht unterstützt.Filestream is currently not supported on an SMB file share.

Überlegungen zur InstallationInstallation considerations

SMB-Dateifreigabeformate:SMB fileshare formats:

Beim Angeben der SMB-Dateifreigabe werden die folgenden UNC-Pfadformate (Universal Naming Convention) für eigenständige und FCI-Datenbanken unterstützt:While specifying the SMB file share, the following are supported Universal Naming Convention (UNC) Path formats for standalone and FCI databases:

  • \\Servername\Freigabename\\\ServerName\ShareName\

  • \\Servername\Freigabename\\ServerName\ShareName

    Weitere Informationen zu UNC (Universal Naming Convention) finden Sie unter UNC.For more information about Universal Naming Convention, see UNC.

    Der UNC-Loopbackpfad (ein UNC-Pfad, dessen Servername "localhost" oder "127.0.0.1" lautet bzw. dem Namen des lokalen Computers entspricht) wird nicht unterstützt.The loopback UNC path (a UNC path whose server name is localhost, 127.0.0.1, or the local machine name) is not supported. Darüber hinaus wird ein Sonderfall, bei dem SQL ServerSQL Server den Dateiservercluster verwendet, der auf demselben Knoten gehostet wird, auf dem SQL ServerSQL Server ausgeführt wird, ebenfalls nicht unterstützt.As a special case, SQL ServerSQL Server using File Server Cluster which is hosted on the same node SQL ServerSQL Server is running is also not supported. Um diese Situation zu vermeiden, wird empfohlen, SQL ServerSQL Server - und Dateiservercluster auf getrennten Windows-Clustern zu erstellen.To prevent this situation, it is recommended that SQL ServerSQL Server and File Server Cluster to be created on separated Windows Clusters.

    Folgende UNC-Pfadformate werden nicht unterstützt:The below UNC path formats are not supported:

  • Loopbackpfad, z. B. „ \\localhost\..\“ oder „ \\127.0.0.1\...\“Loopback path, e.g., \\localhost\..\ or \\127.0.0.1\...\

  • Administrative Freigaben, z. B. „ \\servername\x$“Administrative shares, e.g., \\servername\x$

  • Weitere UNC-Pfadformate, wie „ \\?\x:\“Other UNC path formats like \\?\x:\

  • Zugeordnete Netzlaufwerke.Mapped network drives.

Unterstützte DDL-Anweisungen(Data Definition Language, Datendefinitionssprache)Supported data definition language (DDL) statements

SMB-Dateifreigaben werden von den folgenden Transact-SQLTransact-SQL -DDL-Anweisungen und gespeicherten Datenbankmodul-Prozeduren unterstützt:The following Transact-SQLTransact-SQL DDL statements and database engine stored procedures support SMB file shares:

  1. CREATE DATABASE (SQL Server Transact-SQL)CREATE DATABASE (SQL Server Transact-SQL)

  2. ALTER DATABASE (Transact-SQL)ALTER DATABASE (Transact-SQL)

  3. RESTORE (Transact-SQL)RESTORE (Transact-SQL)

  4. BACKUP (Transact-SQL)BACKUP (Transact-SQL)

InstallationsoptionenInstallation options

  • Legen Sie den Parameter „Datenstammverzeichnis“ in der Setup-Benutzeroberfläche auf der Seite „Datenbankmodulkonfiguration“ auf der Registerkarte „Datenverzeichnisse“ auf „\\fileserver1\share1\“ fest.In setup UI “Database Engine Configuration” page, “Data Directories” tab, set the parameter “Data root directory as “\\fileserver1\share1\”.

  • Geben Sie „/INSTALLSQLDATADIR“ bei der Installation über die Eingabeaufforderung als „\\fileserver1\share1\“ an.In command prompt installation, specify the “/INSTALLSQLDATADIR” as “\\fileserver1\share1\”.

    Die folgende Beispielsyntax zeigt, wie Sie SQL ServerSQL Server mithilfe der SMB-Dateifreigabeoption auf einem eigenständigen Server installieren:Here is the sample syntax to install SQL ServerSQL Server on a Standalone server using SMB file share option:

    Setup.exe /q /ACTION=Install /FEATURES=SQL /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<StrongPassword>" /SQLSYSADMINACCOUNTS="<DomainName\UserName>" /AGTSVCACCOUNT="<DomainName\UserName>" /AGTSVCPASSWORD="<StrongPassword>" /INSTALLSQLDATADIR="\\FileServer\Share1\" /IACCEPTSQLSERVERLICENSETERMS  
    

    So installieren Sie eine SQL ServerSQL Server -Failoverclusterinstanz mit einem einzelnen Knoten mit der Standardinstanz von DatenbankmodulDatabase Engine und Analysis ServicesAnalysis Services:To install a single-node SQL ServerSQL Server failover cluster instance with the DatenbankmodulDatabase Engine and Analysis ServicesAnalysis Services, default instance:

    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="xxxxxxxxxxx" /AGTSVCACCOUNT="<DomainName\UserName>" /AGTSVCPASSWORD="xxxxxxxxxxx" /INSTALLSQLDATADIR="\\FileServer\Share1\" /SQLCOLLATION="SQL_Latin1_General_CP1_CS_AS" /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="xxxxxxxxxxx" /SQLSYSADMINACCOUNTS="<DomainName\UserName> /IACCEPTSQLSERVERLICENSETERMS  
    

    Weitere Informationen zur Verwendung verschiedener Optionen für Befehlszeilenparameter in SQL Server 2017SQL Server 2017finden Sie unter Installieren von SQL Server 2016 von der Eingabeaufforderung.For more information about the usage of various command line parameter options in SQL Server 2017SQL Server 2017, see Install SQL Server 2016 from the Command Prompt.

Überlegungen zum Betriebssystem (SMB-Protokoll oder SQL ServerSQL Server)Operating system considerations (SMB Protocol vs. SQL ServerSQL Server)

Jedes Windows-Betriebssystem verfügt über eine eigene SMB-Protokollversion, die gegenüber SQL ServerSQL Servertransparent ist.Different Windows operating systems has different SMB protocol versions, and the SMB protocol version is transparent to SQL ServerSQL Server. Sie können die Vorteile der verschiedenen SMB-Protokollversionen in Bezug auf SQL Server 2017SQL Server 2017vergleichen.You can find the benefits of different SMB protocol versions with respect to SQL Server 2017SQL Server 2017.

BetriebssystemOperating System SMB2-ProtokollversionSMB2 protocol version Vorteile für SQL ServerSQL ServerBenefits to SQL ServerSQL Server
Windows Server 2008Windows Server 2008 SP 2 SP 2 2.02.0 Verbesserte Leistung gegenüber SMB-Vorgängerversionen.Improved performance over previous SMB versions.

Dauerhaftigkeit zur einfacheren Wiederherstellung nach vorübergehenden Netzwerkstörungen.Durability, which helps recover from temporary network glitches.
Windows Server 2008 R2Windows Server 2008 R2 SP 1, einschließlich Server Core SP 1, including Server Core 2.12.1 Unterstützung eines höheren MTU-Werts, der für umfangreiche Datenübertragungen wie SQL-Sicherungs- und -Wiederherstellungsvorgänge vorteilhaft ist.Support for large MTU, which benefits large data transfers, such as SQL backup and restore. Diese Funktion muss vom Benutzer aktiviert werden.This capability must be enabled by user. Ausführliche Informationen zum Aktivieren dieser Funktion finden Sie unter Neues in SMB (http://go.microsoft.com/fwlink/?LinkID=237319).For more details on how to enable this capability, see What’s New in SMB (http://go.microsoft.com/fwlink/?LinkID=237319).

Signifikante Leistungsverbesserungen besonders für SQL-OLTP-Arbeitsauslastungen.Significant performance improvements, specifically for SQL OLTP style workloads. Diese Leistungsverbesserungen erfordern die Anwendung eines Hotfixes.These performance improvements require applying a hotfix. Weitere Informationen zum Hotfix finden Sie hier (http://go.microsoft.com/fwlink/?LinkId=237320).For more information on the hotfix, see this (http://go.microsoft.com/fwlink/?LinkId=237320).
Windows Server 2012Windows Server 2012, einschließlich Server Core, including Server Core 3.03.0 Unterstützung für transparentes Failover von Dateifreigaben – ohne Ausfallzeiten und Administratoreingriffe seitens SQL-DBA oder Dateiserveradministratoren in Dateiserver-Clusterkonfigurationen.Support for transparent failover of file shares providing zero downtime with no administrator intervention required for SQL DBA or file server administrator in file server cluster configurations.

Unterstützung für die E/A über mehrere Netzwerkschnittstellen gleichzeitig sowie Toleranz für Netzwerkschnittstellenfehler.Support for IO using multiple network interfaces simultaneously, as well as tolerance to network interface failure.

Unterstützung für Netzwerkschnittstellen mit RDMA-Funktionen.Support for network interfaces with RDMA capabilities.

Weitere Informationen zu diesen Funktionen sowie zu Server Message Block finden Sie in der Übersicht zu Server Message Block (http://go.microsoft.com/fwlink/?LinkId=253174).For more information on these features and Server Message Block, see Server Message Block overview (http://go.microsoft.com/fwlink/?LinkId=253174).

Unterstützung für Dateiserver mit horizontaler Skalierung mit kontinuierlicher Verfügbarkeit.Support for Scale Out File Server (SoFS) with continuous availability.
Windows Server 2012Windows Server 2012 R2, einschließlich Server Core R2, including Server Core 3.23.2 Unterstützung für transparentes Failover von Dateifreigaben – ohne Ausfallzeiten und Administratoreingriffe seitens SQL-DBA oder Dateiserveradministratoren in Dateiserver-Clusterkonfigurationen.Support for transparent failover of file shares providing zero downtime with no administrator intervention required for SQL DBA or file server administrator in file server cluster configurations.

Unterstützung für E/A über mehrere Netzwerkschnittstellen gleichzeitig sowie Toleranz für Netzwerkschnittstellenfehler, unter Verwendung von SMB Multichannel.Support for IO using multiple network interfaces simultaneously, as well as tolerance to network interface failure, using SMB Multichannel.

Unterstützung für Netzwerkschnittstellen mit RDMA-Funktionen, unter Verwendung von SMB Direct.Support for network interfaces with RDMA capabilities using SMB Direct.

Weitere Informationen zu diesen Funktionen sowie zu Server Message Block finden Sie in der Übersicht zu Server Message Block (http://go.microsoft.com/fwlink/?LinkId=253174).For more information on these features and Server Message Block, see Server Message Block overview (http://go.microsoft.com/fwlink/?LinkId=253174).

Unterstützung für Dateiserver mit horizontaler Skalierung mit kontinuierlicher Verfügbarkeit.Support for Scale Out File Server (SoFS) with continuous availability.

Optimiert für kleine wahlfreie Lese-/Schreib-E/A-Vorgänge, wie sie für SQL ServerSQL Server -OLTP üblich sind.Optimized for small random read/write I/O common to SQL ServerSQL Server OLTP.

Maximale Übertragungseinheit (Maximum Transmission Unit, MTU) ist standardmäßig aktiviert; hierdurch wird bei umfassenden sequenziellen Übertragungen wie SQL ServerSQL Server Data Warehouse- und Datenbanksicherungen und -wiederherstellungen die Leistung wesentlich verbessert.Maximum Transmission Unit (MTU) is turned on by default, which significantly enhances performance in large sequential transfers like SQL ServerSQL Server data warehouse and database backup or restore.

Überlegungen zur SicherheitSecurity considerations

  • Das SQL ServerSQL Server -Dienstkonto und das SQL ServerSQL Server -Agent-Dienstkonto sollten über FULL CONTROL-Freigabeberechtigungen und NTFS-Berechtigungen für die SMB-Freigabeordner verfügen.The SQL ServerSQL Server service account and SQL ServerSQL Server agent service account should have FULL CONTROL share permissions and NTFS permissions on the SMB share folders. Das SQL ServerSQL Server -Dienstkonto kann ein Domänen- oder Systemkonto sein, wenn ein SMB-Dateiserver verwendet wird.The SQL ServerSQL Server service account can be a domain account or a system account if an SMB file server is used. Weitere Informationen zu Freigabe- und NTFS-Berechtigungen finden Sie unter Freigabe- und NTFS-Berechtigungen auf einem Dateiserver (http://go.microsoft.com/fwlink/?LinkId=245535).For more information about share and NTFS permissions, see Share and NTFS Permissions on a File Server (http://go.microsoft.com/fwlink/?LinkId=245535).

    Hinweis

    Die FULL CONTROL-Freigabeberechtigungen und die NTFS-Berechtigungen in den SMB-Freigabeordnern sollten wie folgt beschränkt werden: SQL ServerSQL Server -Dienstkonto, SQL ServerSQL Server Agent-Dienstkonto und Windows-Benutzer mit admin-Serverrollen.The FULL CONTROL share permissions and NTFS permissions on the SMB share folders should be restricted to: SQL ServerSQL Server service account, SQL ServerSQL Server Agent service account and windows users with admin server roles.

    Es wird empfohlen, das Domänenkonto als SQL ServerSQL Server-Dienstkonto zu verwenden.It is recommended to use domain account as a SQL ServerSQL Server service account. Wenn das Systemkonto als Dienstkonto verwendet wird, gewähren Sie die Berechtigungen für das Computerkonto im folgenden Format: <Domänenname>\<Computername>*$.If system account is used as a service account, grant the permissions for the machine account in the format: <domain_name>\<computer_name>\$*.

    Hinweis

    Beim SQL ServerSQL Server-Setup ist es erforderlich, das Domänenkonto als Dienstkonto anzugeben, wenn die SMB-Dateifreigabe als Speicheroption festgelegt wird.During SQL ServerSQL Server setup, it is required to specify domain account as a service account if SMB file share is specified as a storage option. Bei der SMB-Dateifreigabe kann das Systemkonto erst nach der SQL ServerSQL Server -Installation als Dienstkonto angegeben werden.With SMB file share, System account can only be specified as a service account post SQL ServerSQL Server installation.

    Virtuelle Konten können nicht gegenüber einem Remotestandort authentifiziert werden.Virtual accounts cannot be authenticated to a remote location. Alle virtuellen Konten verwenden die Berechtigung des Computerkontos.All virtual accounts use the permission of machine account. Geben Sie das Computerkonto im Format <Domänenname>\<Computername>*$* an.Provision the machine account in the format <domain_name>\<computer_name>*$*.

  • Das für die SQL ServerSQL Server-Installation verwendete Konto sollte über FULL CONTROL-Berechtigungen für den als Datenverzeichnis verwendeten SMB-Dateifreigabeorder oder andere beim Cluster-Setup verwendete Datenordner (Benutzerdatenbankverzeichnis, Benutzerdatenbank-Protokollverzeichnis, TempDB-Verzeichnis, TempDB-Protokollverzeichnis, Sicherungsverzeichnis) verfügen.The account used to install SQL ServerSQL Server should have FULL CONTROL permissions on the SMB file share folder used as the data directory, or any other data folders (User database directory, user database log directory, TempDB directory, TempDB log directory, backup directory) during Cluster Setup.

  • Dem Konto, das für die Installation von SQL ServerSQL Server verwendet wird, müssen SeSecurityPrivilege-Berechtigungen auf dem SMB-Dateiserver zugewiesen werden.The account used to install SQL ServerSQL Server should be granted SeSecurityPrivilege privileges on the SMB file server. Diese Berechtigung weisen Sie zu, indem Sie die Konsole "Lokale Sicherheitsrichtlinie" auf dem Dateiserver verwenden, um der Richtlinie zum Verwalten von Überwachungs- und Sicherheitsprotokollen das SQL ServerSQL Server -Setupkonto hinzuzufügen.To grant this privilege, use the Local Security Policy console on the file server to add the SQL ServerSQL Server setup account to the Manage auditing and security log policy. Diese Einstellung ist in der Konsole "Lokale Sicherheitsrichtlinie" im Abschnitt Zuweisen von Benutzerrechten unter Lokale Richtlinien verfügbar.This setting is available in the User Rights Assignments section under Local Policies in the Local Security Policy console.

Bekannte ProblemeKnown issues

  • Nachdem Sie eine SQL Server 2017SQL Server 2017 -Datenbank getrennt haben, die sich auf einem dem Netzwerk zugeordneten Speichermedium befindet, könnte ein Problem mit der Datenbankberechtigung auftreten, wenn Sie versuchen, die SQL ServerSQL Server -Datenbank erneut anzufügen.After you detach a SQL Server 2017SQL Server 2017 database that resides on network-attached storage, you might run into database permission issue while trying to reattach the SQL ServerSQL Server database. Das Problem wird in diesem KB-Artikel (http://go.microsoft.com/fwlink/?LinkId=237321) beschrieben.The issue is defined in this KB article (http://go.microsoft.com/fwlink/?LinkId=237321). Wie Sie dieses Problem umgehen, erfahren Sie im KB-Artikel im Abschnitt Weitere Informationen .To work around this issue, see the More Information section in the KB article.

  • Wenn die SMB-Dateifreigabe als Speicheroption für eine gruppierte Instanz von SQL ServerSQL Serververwendet wird, kann das SQL ServerSQL Server -Failovercluster-Diagnoseprotokoll standardmäßig nicht in die Dateifreigabe geschrieben werden, da die SQL ServerSQL Server -Ressourcen-DLL keine Lese-/Schreibberechtigung für die Dateifreigabe hat.If SMB file share is used as a storage option for a clustered instance of SQL ServerSQL Server, by default the SQL ServerSQL Server Failover Cluster Diagnostics Log cannot be written to the file share because SQL ServerSQL Server Resource DLL lacks the read/write permission on the file share. Führen Sie eine der folgenden Aktionen aus, um diesen Fehler zu beheben:To resolve this issue, try one of the following methods:

    1. Erteilen Sie allen Computerobjekten im Cluster Lese-/Schreibberechtigungen für die Dateifreigabe.Grant read/write permissions on the file share to all computer objects in the cluster.

    2. Legen Sie als Speicherort für die Diagnoseprotokolle einen lokalen Dateipfad fest.Set the location of the diagnostic logs to a local file path. Sehen Sie sich folgendes Beispiel an:See the following example:

      ALTER SERVER CONFIGURATION  
      SET DIAGNOSTICS LOG PATH = 'C:\logs';  
      

Siehe auchSee also

Planen einer SQL Server-Installation Planning a SQL Server Installation
Konfigurieren von Windows-Dienstkonten und -BerechtigungenConfigure Windows Service Accounts and Permissions