Installazione di SQL Server con l'opzione di archiviazione su condivisione file SMB

Con l'avvio di SQL Server 2012 i database di sistema (Master, Model, MSDB e TempDB) e quelli utente Motore di database possono essere installati con il file server SMB (Server Message Block) come opzione di archiviazione. Questa condizione è valida per le installazioni di SQL Server autonome e per le installazioni del cluster di failover di SQL Server.

[!NOTA]

Filestream non è attualmente supportato in una condivisione file SMB.

Considerazioni sull'installazione

Formati di condivisione di file SMB:

Quando si specifica la condivisione file SMB, sono supportati i seguenti formati di percorso UNC (Universal Naming Convention) per database autonomi e dell'istanza del cluster di failover:

  • \\NomeServer\NomeCondivisione\

  • \\NomeServer\NomeCondivisione

Per ulteriori informazioni su Universal Naming Convention, vedere la pagina relativa a UNC (https://go.microsoft.com/fwlink/?LinkId=245534).

Il percorso UNC del loopback (percorso UNC il cui nome del server è localhost, 127.0.0.1 o il nome del computer locale) non è supportato. In un caso speciale, non è supportato neanche SQL Server in cui viene utilizzato il cluster di file server ospitato nello stesso nodo eseguito da SQL Server. Per evitare questa situazione, è consigliabile che SQL Server e il cluster di file server vengano creati in cluster Windows separati.

I formati di percorso UNC riportati di seguito non sono supportati:

  • Percorso del loopback, ad esempio \\localhost\.. \ o \\127.0.0.1\... \

  • Condivisioni amministrative, ad esempio \\nomeserver\x$

  • Altri formati di percorso UNC come \\? \x:\

  • Unità di rete su cui è stato eseguito il mapping

Istruzioni DDL (Data Definition Language) supportate

Le istruzioni DDL di Transact-SQL e le stored procedure del motore di database seguenti supportano le condivisioni file SMB:

  1. CREATE DATABASE (Transact-SQL)

  2. ALTER DATABASE (Transact-SQL)

  3. RESTORE (Transact-SQL)

  4. BACKUP (Transact-SQL)

  5. sp_attach_db (Transact-SQL)

  6. sp_attach_single_file_db (Transact-SQL)

Opzioni di installazione

  • Nella scheda "Directory dati" della pagina "Configurazione del motore di database" del programma di installazione, impostare il parametro "Directory radice dati" su "\\fileserver1\share1\".

  • Nell'installazione del prompt dei comandi, specificare "/INSTALLSQLDATADIR" come "\\fileserver1\share1\".

    Di seguito è riportata la sintassi di esempio per installare SQL Server in un server autonomo utilizzando l'opzione di condivisione file SMB:

    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
    

    Per installare un'istanza del cluster di failover di SQL Server a nodo singolo con il motore di database e Analysis Services, istanza predefinita:

    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
    

    Per ulteriori informazioni sull'utilizzo di vari parametri opzionali della riga di comando in SQL Server 2012, vedere Installare SQL Server 2012 dal prompt dei comandi.

Considerazioni relative al sistema operativo (protocollo SMB eSQL Server)

Sistemi operativi Windows diversi dispongono di versioni diverse del protocollo SMB e la versione del protocollo SMB è trasparente a SQL Server. È possibile individuare i vantaggi delle varie versioni del protocollo SMB in relazione a SQL Server 2012.

Sistema operativo

Versione del protocollo SMB2

Vantaggi per SQL Server

Windows Server 2008

2.0

  • Prestazioni migliorate rispetto a versioni precedenti di SMB.

  • Durevolezza, che consente il recupero da problemi di rete temporanei.

Windows Server 2008 R2

2.1

  • Supporto per MTU di grandi dimensioni che consente il trasferimento di grandi quantità di dati, ad esempio per le operazioni di backup e di ripristino di SQL. Questa funzionalità deve essere abilitata dall'utente. Per ulteriori informazioni su come abilitare questa funzionalità, vedere Novità di SMB (https://go.microsoft.com/fwlink/?LinkID=237319).

  • Significativi miglioramenti nelle prestazioni, in particolare per i carichi di lavoro di tipo OLTP di SQL. Questi miglioramenti delle prestazioni richiedono l'applicazione di un hotfix. Per ulteriori informazioni sull'hotfix, vedere qui (https://go.microsoft.com/fwlink/?LinkId=237320).

Windows Server 2012

3.0

  • Supporto per il failover trasparente delle condivisioni file che garantisce tempi di inattività ridotti a zero senza interventi dell'amministratore del DBA SQL o del file server nelle configurazioni di cluster di file server.

  • Supporto per IO che utilizzano più interfacce di rete simultaneamente e tolleranza agli errori dell'interfaccia di rete.

  • Supporto per interfacce di rete con funzionalità RDMA.

  • Per ulteriori informazioni su queste funzionalità e su Server Message Block, vedere la pagina relativa alla panoramica di Server Message Block (https://go.microsoft.com/fwlink/?LinkId=253174).

  • Supporto per il file server di scalabilità orizzontale (SoFS) con una disponibilità continua.

Windows Server 2012 R2

3.02

  • Supporto per il failover trasparente delle condivisioni file che garantisce tempi di inattività ridotti a zero senza interventi dell'amministratore del DBA SQL o del file server nelle configurazioni di cluster di file server.

  • Supporto per IO che utilizzano più interfacce di rete simultaneamente e tolleranza agli errori dell'interfaccia di rete, tramite SMB multicanale.

  • Supporto per interfacce di rete con funzionalità RDMA mediante SMB diretto.

  • Per ulteriori informazioni su queste funzionalità e su Server Message Block, vedere la pagina relativa alla panoramica di Server Message Block (https://go.microsoft.com/fwlink/?LinkId=253174).

  • Supporto per il file server di scalabilità orizzontale (SoFS) con una disponibilità continua.

  • Ottimizzato per l'I/O di lettura/scrittura casuale di piccole dimensioni comune a SQL Server OLTP.

  • L'unità massima di trasmissione (MTU) è abilitata per impostazione predefinita. Migliora in maniera significativa le prestazioni in trasferimenti sequenziali di grandi dimensioni come il backup o il ripristino di database o data warehouse di SQL Server.

Considerazioni sulla sicurezza

  • Gli account dei servizi SQL Server e SQL Server Agent devono disporre di autorizzazioni di condivisione FULL CONTROL e di autorizzazioni NTFS sulle cartelle condivise SMB. L'account del servizio SQL Server può essere un account di dominio o di sistema quando si utilizza un file server SMB. Per ulteriori informazioni sulle autorizzazioni NTFS e di condivisione, vedere Autorizzazioni di condivisione e autorizzazioni NTFS su un file server (https://go.microsoft.com/fwlink/?LinkId=245535).

    [!NOTA]

    Le autorizzazioni di condivisione Controllo completo e le autorizzazioni NTFS sulle cartelle condivise SMB devono essere limitate a: account del servizio SQL Server, account del servizio SQL Server Agent e utenti di Windows con ruoli di amministratore del server.

    Si consiglia per utilizzare un account di dominio come account del servizio SQL Server. Se l'account di sistema viene utilizzato come account del servizio, concedere le autorizzazioni per l'account del computer nel formato: <domain_name>\<computer_name>$.

    [!NOTA]

    • Durante l'installazione di SQL Server, è necessario specificare l'account di dominio come account del servizio se la condivisione file SMB viene specificata come opzione di archiviazione. Con le condivisioni file SMB, è possibile specificare l'account di sistema come account del servizio solo dopo l'installazione di SQL Server.

    • Gli account virtuali non possono essere autenticati a un percorso remoto. Per tutti gli account virtuali viene utilizzata l'autorizzazione dell'account del computer. Eseguire il provisioning dell'account del computer nel formato <domain_name>\<computer_name>$.

  • L'account utilizzato per installare SQL Server deve disporre di autorizzazioni FULL CONTROL sulla cartella della condivisione file SMB utilizzata come directory dei dati o su qualsiasi altra cartella dei dati (directory del database utente, directory del log del database utente, directory TempDB, directory del log TempDB, directory di backup) durante l'Installazione del cluster.

  • È necessario che all'account utilizzato per installare SQL Server venga concesso il privilegio SeSecurityPrivilege sul file server SMB. Per concedere tale privilegio, utilizzare la console Criteri di sicurezza locale nel file server per aggiungere l'account di installazione di SQL Server ai criteri Gestione file registro di controllo e di sicurezza. Questa impostazione è disponibile nella sezione Assegnazione diritti utente in Criteri locali nella console Criteri di sicurezza locale.

Problemi noti

  • Dopo aver scollegato un database di SQL Server 2012 che si trova in un archivio collegato alla rete, è possibile che si verifichino problemi di autorizzazione del database durante il tentativo di ricollegare il database di SQL Server. Il problema è definito in questo articolo della Knowledge Base (https://go.microsoft.com/fwlink/?LinkId=237321). Per evitarlo, vedere la sezione relativa a ulteriori informazioni nell'articolo della Knowledge Base.

  • Se la condivisione file SMB viene utilizzata come opzione di archiviazione per un'istanza cluster di SQL Server, per impostazione predefinita il log di diagnostica del cluster di failover di SQL Server non può essere scritto nella condivisione file perché la DLL risorse di SQL Server non dispone di autorizzazioni di lettura/scrittura in una condivisione file. Per risolvere il problema, tentare uno dei metodi seguenti:

    1. Concedere autorizzazioni di lettura/scrittura in una condivisione file a tutti gli oggetti computer del cluster.

    2. Impostare il percorso dei log di diagnostica su un percorso file locale. Vedere l'esempio seguente:

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

Vedere anche

Riferimento

Configurare account di servizio e autorizzazioni di Windows

Concetti

Pianificazione di un'installazione di SQL Server

Altre risorse

Procedure per l'installazione