Dela via


Installera SQL Server med SMB-fildelningslagring

gäller för:SQL Server – endast Windows

I SQL Server 2012 (11.x) och senare versioner kan systemdatabaser (master, model, msdboch tempdb) och databasmotorns användardatabaser installeras med SMB-filservern (Server Message Block) som lagringsalternativ. Detta gäller både fristående SQL Server- och SQL Server-redundansklusterinstallationer (FCI).

Not

FILESTREAM stöds för närvarande inte på en SMB-filresurs.

Installationsöverväganden

SMB-fildelningsformat

När du anger SMB-filresursen stöds följande UNC-sökvägsformat (Universal Naming Convention) för fristående och FCI-databaser:

  • \\ServerName\ShareName\
  • \\ServerName\ShareName

Mer information finns i Universell namngivningskonvention.

UNC-sökvägen för loopback (en UNC-sökväg vars servernamn är localhost, 127.0.0.1eller namnet på den lokala datorn) stöds inte. Som ett specialfall stöds inte heller SQL Server med filserverkluster på samma nod som SQL Server. För att förhindra den här situationen bör du skapa SQL Server och filserverklustret på avgränsade Windows-kluster.

Följande UNC-sökvägsformat stöds inte:

  • Loopback-väg, som \\localhost\...\ eller \\127.0.0.1\...\
  • Administrativa aktier, till exempel \\servername\x$
  • Andra UNC-sökvägsformat som \\?\x:\
  • Mappade nätverksdiskar

Stödda datadefinitionsspråkskommandon (DDL)

Följande Transact-SQL DDL-instruktioner och lagrade procedurer för databasmotorn stöder SMB-fildelningar:

  1. SKAPA DATAPÄLS
  2. ALTER DATABASE
  3. RESTORE-instruktioner
  4. SÄKERHETSKOPIA

Installationsalternativ

  • I konfigurationsgränssnittet, på sidan Database Engine Configuration, på fliken Data kataloger, anger du parametern Datarotkatalog som \\<FileServer>\<Share1>\. Ersätt <FileServer> och <Share1> med värden från din miljö.

  • Vid installationen av kommandotolken anger du /INSTALLSQLDATADIR som \\<FileServer>\<Share1>\.

    Här är en exempelsyntax för att installera SQL Server på en fristående server med alternativet för SMB-filresurser:

    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
    

    Från och med SQL Server 2022 (16.x) läser du licensvillkoren för Programvara för Microsoft SQL Server på aka.ms/useterms.

    Om du vill installera en SQL Server-redundansklusterinstans med en enda nod med Databasmotorn och Analysis Services, standardinstans:

    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
    

    Mer information om användningen av olika kommandoradsparameteralternativ i SQL Server finns i Installera och konfigurera SQL Server i Windows från kommandotolken.

Not

Dina lösenord bör följa SQL Server-standardprincipen lösenordsprincip. Lösenordet måste som standard vara minst åtta tecken långt och innehålla tecken från tre av följande fyra uppsättningar: versaler, gemener, bas-10 siffror och symboler. Lösenord kan vara upp till 128 tecken långa. Använd lösenord som är så långa och komplexa som möjligt.

Överväganden för operativsystem (SMB-protokoll vs. SQL Server)

Olika Windows-operativsystem har olika SMB-protokollversioner och SMB-protokollversionen är transparent för SQL Server. Du hittar fördelarna med olika SMB-protokollversioner med avseende på SQL Server.

Operativsystem SMB2-protokollversion Fördelar med SQL Server
Windows Server 2012 och senare versioner, inklusive Server Core 3.0 Stöd för transparent redundansväxling av filresurser som ger noll stilleståndstid, utan att det krävs några åtgärder för databasadministratören eller filserveradministratören i konfigurationer av filserverkluster.

Stöd för I/O med flera nätverksgränssnitt samtidigt och tolerans mot fel i nätverksgränssnittet.

Stöd för nätverksgränssnitt med RDMA-funktioner.

Mer information om dessa funktioner och Server Message Block finns i Översikt över servermeddelandeblock.

Stöd för Skalbar filserver (SoFS) med kontinuerlig tillgänglighet.
Windows Server 2012 R2 och senare versioner, inklusive Server Core 3.2 Stöd för felfri redundansväxling av fildelningar utan avbrott, utan att det krävs några åtgärder från databasadministratören eller filserveradministratören i filserverkluster-konfigurationer.

Stöd för I/O med flera nätverksgränssnitt samtidigt och tolerans mot fel i nätverksgränssnittet med hjälp av SMB Multichannel.

Stöd för nätverksgränssnitt med RDMA-funktioner med SMB Direct.

Mer information om dessa funktioner och Server Message Block finns i Översikt över servermeddelandeblock.

Stöd för Skalbar filserver (SoFS) med kontinuerlig tillgänglighet.

Optimerad för små slumpmässiga läs-/skriv-I/O-arbetsbelastningar som är gemensamma för SQL Server-transaktionsformat.

Maximal överföringsenhet (MTU) är aktiverat som standard, vilket avsevärt förbättrar prestanda vid stora sekventiella överföringar som SQL Server-informationslager och säkerhetskopiering eller återställning av databaser.

Säkerhetshänsyn

  • SQL Server-tjänstkontot och SQL Server-agentens tjänstkonto bör ha FULL CONTROL resursbehörigheter och NTFS-behörigheter för SMB-resursmapparna. SQL Server-tjänstkontot kan vara ett domänkonto eller ett systemkonto om en SMB-filserver används. För mer information om dela- och NTFS-behörigheter finns i Dela och NTFS-behörigheter på en filserver.

    Not

    FULL CONTROL resursbehörigheter och NTFS-behörigheter för SMB-resursmapparna bör begränsas till SQL Server-tjänstkontot, SQL Server Agent-tjänstkontot och Windows-användare med administratörsserverroller.

    Använd ett domänkonto som ett SQL Server-tjänstkonto. Om systemkontot används som ett tjänstkonto beviljar du behörigheterna för datorkontot i formatet <domain-name>\<computer-name>*$*.

    Not

    Under konfigurationen av SQL Server måste du ange domänkontot som ett tjänstkonto om SMB-filresursen anges som ett lagringsalternativ. Med SMB-filandel kan System-kontot endast anges som ett tjänstkonto efter installationen av SQL Server.

    Virtuella konton kan inte autentiseras till en fjärrplats. Alla virtuella konton använder behörigheten för datorkontot. Etablera datorkontot i formatet <domain-name>\<computer-name>*$*.

  • Det konto som används för att installera SQL Server bör ha fullständig behörighet för SMB-filresursmappen som används som datakatalog eller andra datamappar (användardatabaskatalog, användardatabasloggkatalog, tempdb katalog, tempdb-loggkatalog, säkerhetskopieringskatalog) under klusterinstallationen.

  • Kontot som används för att installera SQL Server bör beviljas SeSecurityPrivilege behörigheter på SMB-filservern. Om du vill bevilja den här behörigheten använder du konsolen Lokal säkerhetsprincip på filservern för att lägga till SQL Server-konfigurationskontot i Hantera gransknings- och säkerhetslogg princip. Den här inställningen är tillgänglig i avsnittet Tilldelningar av användarrättigheter under lokala principer.

Kända problem och begränsningar

När du kopplar från en SQL Server-databas som finns på nätverksansluten lagring kan det uppstå problem med databasbehörigheter när du försöker koppla om SQL Server-databasen. Mer information finns i Fel 5120.

Om SMB-fildelning används som lagringsalternativ för en klustrad instans av SQL Server kan diagnostikloggen för SQL Server-failoverkluster som standard inte skrivas till fildelningen eftersom SQL Server Resource DLL saknar läs-/skrivbehörighet för fildelningen. Lös problemet genom att prova någon av följande metoder:

  1. Bevilja läs-/skrivbehörigheter för filresursen till alla datorobjekt i klustret.

  2. Ange platsen för diagnostikloggarna till en lokal filsökväg. Se följande exempel:

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

När du är värd för SQL Server-datafiler på SMB-filresurser går alla I/O mot filerna genom nätverksgränssnittet på servern eller den virtuella datorn. Se till att det finns tillräckligt med nätverksbandbredd för att stödja I/O som krävs av arbetsbelastningen.

Otillgängligheten för filresursen som är värd för SQL Server-datafilerna på grund av problem med nätverksanslutningen eller andra fel kan leda till I/O-fördröjningar eller fel i SQL Server. För verksamhetskritiska arbetslaster kontrollerar du att det finns redundans inbyggd i nätverket och filresursen och att filresursen stöder transparent felövergång med SMB 3.0, kallas även kontinuerlig tillgänglighet.