ALTER SERVER CONFIGURATION (Transact-SQL)

Vengono modificate le impostazioni di configurazione globali per il server corrente in SQL Server 2012.

Icona di collegamento a un argomento Convenzioni della sintassi Transact-SQL

Sintassi

ALTER SERVER CONFIGURATION
SET <optionspec> 

<optionspec> ::=
{
     <process_affinity>
   | <diagnostic_log>
   | <failover_cluster_property>
   | <hadr_cluster_context>
}

<process_affinity> ::= 
   PROCESS AFFINITY 
   {
     CPU = { AUTO | <CPU_range_spec> } 
   | NUMANODE = <NUMA_node_range_spec> 
   }
   <CPU_range_spec> ::= 
      { CPU_ID | CPU_ID  TO CPU_ID } [ ,...n ] 

   <NUMA_node_range_spec> ::= 
      { NUMA_node_ID | NUMA_node_ID TO NUMA_node_ID } [ ,...n ]

<diagnostic_log> ::= 
   DIAGNOSTICS LOG 
   { 
     ON  
   | OFF  
   | PATH = { 'os_file_path' | DEFAULT }  
   | MAX_SIZE = { 'log_max_size' MB | DEFAULT }  
   | MAX_FILES = { 'max_file_count' | DEFAULT }  
   }

<failover_cluster_property> ::= 
   FAILOVER CLUSTER PROPERTY <resource_property>
   <resource_property> ::=
      {
        VerboseLogging = { 'logging_detail' | DEFAULT }  
      | SqlDumperDumpFlags = { 'dump_file_type' | DEFAULT }
      | SqlDumperDumpPath = { 'os_file_path'| DEFAULT }
      | SqlDumperDumpTimeOut = { 'dump_time-out' | DEFAULT }
      | FailureConditionLevel = { 'failure_condition_level' | DEFAULT }
      | HealthCheckTimeout = { 'health_check_time-out' | DEFAULT }
      }

<hadr_cluster_context> ::=
   HADR CLUSTER CONTEXT = { 'remote_windows_cluster' | LOCAL }

Argomenti

<process_affinity> ::=

  • PROCESS AFFINITY
    Consente di associare i thread di hardware alle CPU.

  • CPU = { AUTO | <CPU_range_spec> }
    Consente di distribuire thread di lavoro di SQL Server a ogni CPU all'interno dell'intervallo specificato. Alle CPU non incluse nell'intervallo specificato non saranno assegnati thread.

    • AUTO
      Specifica che a nessun thread viene assegnata una CPU. Il sistema operativo può spostare liberamente i thread tra le CPU in base al carico di lavoro del server. Si tratta dell'impostazione predefinita e consigliata.

    • <CPU_range_spec> ::=
      Specifica la CPU o l'intervallo di CPU a cui assegnare thread.

    • { CPU_ID | CPU_ID TO CPU_ID } [ ,...n ]
      Elenco di una o più CPU. Gli ID CPU iniziano da 0 e sono valori integer.
  • NUMANODE = <NUMA_node_range_spec>
    Consente di assegnare thread a tutte le CPU che appartengono al nodo NUMA o all'intervallo di nodi NUMA specificato.

    • <NUMA_node_range_spec> ::=
      Specifica lo stato del nodo NUMA o dell'intervallo di nodi NUMA.

    • { NUMA_node_ID | NUMA_node_ID TO NUMA_node_ID } [ ,...n ]
      Elenco di uno o più nodi NUMA. Gli ID nodo NUMA iniziano da 0 e sono valori integer.

<diagnostic_log> ::=

  • DIAGNOSTICS LOG
    Consente di avviare o arrestare la registrazione dei dati di diagnostica acquisiti dalla stored procedure sp_server_diagnostics e di impostare i parametri di configurazione dei log SQLDIAG, quali il conteggio del rollover dei file, le dimensioni dei file di log e la posizione dei file. Per ulteriori informazioni, vedere Visualizzazione e lettura del log di diagnostica dell'istanza del cluster di failover.

  • ON
    Consente di avviare la registrazione dei dati di diagnostica di SQL Server nel percorso specificato dall'opzione file PATH. Questa impostazione è quella predefinita.

  • OFF
    Consente di arrestare la registrazione dei dati di diagnostica.

  • PATH = { 'os_file_path' | DEFAULT }
    Percorso che indica la posizione dei log di diagnostica. Il percorso predefinito è <\MSSQL\Log> all'interno della cartella di installazione dell'istanza del cluster di failover di SQL Server.

  • MAX_SIZE = { 'log_max_size' MB | DEFAULT }
    Dimensione massima in megabyte che può raggiungere ogni log di diagnostica. Il valore predefinito è 100 MB.

  • MAX_FILES = { 'max_file_count' | DEFAULT }
    Numero massimo di file di log di diagnostica che è possibile archiviare nel computer prima che vengano riciclati per nuovi log di diagnostica.

<failover_cluster_property> ::=

  • FAILOVER CLUSTER PROPERTY
    Consente di modificare le proprietà del cluster di failover privato delle risorse di SQL Server.

  • VERBOSE LOGGING = { 'logging_detail' | DEFAULT }
    Consente di impostare il livello di registrazione per il clustering di failover di SQL Server. Può essere abilitata per fornire dettagli aggiuntivi nei log degli errori per la risoluzione dei problemi.

    • 0: la registrazione è disabilitata (impostazione predefinita)

    • 1: solo errori

    • 2: errori e avvisi

  • SQLDUMPEREDUMPFLAGS
    Determina il tipo di file di dump generati dall'utilità SQLDumper di SQL Server. L'impostazione predefinita è 0. Per altre informazioni, vedere l'articolo della Knowledge Base sull'utilità SQL Server Dumper.

  • SQLDUMPERDUMPPATH = { 'os_file_path' | DEFAULT }
    Percorso in cui l'utilità SQLDumper archivia i file di dump. Per ulteriori informazioni, vedere l'articolo della Knowledge Base sull'utilità SQL Server Dumper.

  • SQLDUMPERDUMPTIMEOUT = { 'dump_time-out' | DEFAULT }
    Valore di timeout in millisecondi prima che l'utilità SQLDumper generi un dump in caso di errore di SQL Server. Il valore predefinito è 0, che indica che non vi sono limiti di tempo per completare il dump. Per ulteriori informazioni, vedere l'articolo della Knowledge Base sull'utilità SQL Server Dumper.

  • FAILURECONDITIONLEVEL = { 'failure_condition_level' | DEFAULT }
    Condizioni in cui si verifica il failover o il riavvio dell'istanza del cluster di failover di SQL Server. Il valore predefinito è 3, che indica che si verificherà il failover o il riavvio della risorsa di SQL Server in caso di errori critici del server. Per ulteriori informazioni su questo e altri livelli delle condizioni di errore, vedere Configurare le impostazioni della proprietà FailureConditionLevel.

  • HEALTHCHECKTIMEOUT = { 'health_check_time-out' | DEFAULT }
    Valore di timeout che consente di definire il tempo di attesa da parte della DLL risorse del motore di database di SQL Server relativo alla restituzione delle informazioni sull'integrità del server prima che venga stabilita la mancata risposta dell'istanza di SQL Server. Il valore di timeout è espresso in millisecondi. L'impostazione predefinita è 60000 millisecondi (60 secondi).

<hadr_cluster_context> ::=

  • HADR CLUSTER CONTEXT = { 'remote_windows_cluster' | LOCAL }
    Passa il contesto del cluster HADR dell'istanza del server al cluster WSFC (Windows Server Failover Clustering) specificato. Il contesto del cluster HADR determina il cluster WSFC (Windows Server Failover Clustering) che gestisce i metadati per le repliche di disponibilità ospitate dall'istanza del server. Utilizzare l'opzione SET HADR CLUSTER CONTEXT solo durante una migrazione tra cluster di Gruppi di disponibilità AlwaysOn a un'istanza di SQL Server 2012 SP1 in un nuovo cluster WSFC.

    È possibile cambiare il contesto del cluster HADR solo dal cluster WSFC locale a un cluster remoto e quindi nuovamente dal cluster remoto al cluster locale. È possibile cambiare il contesto del cluster HADR in un cluster remoto solo se l'istanza di SQL Server non ospita alcuna replica di disponibilità.

    Il contesto di un cluster HADR remoto può essere nuovamente cambiato nel cluster locale in qualsiasi momento, a meno che l'istanza del server non ospiti una replica di disponibilità.

    Per identificare il cluster di destinazione, specificare uno dei valori seguenti:

    • windows_cluster
      Nome dell'oggetto cluster (CON) di un cluster WSFC. È possibile specificare il nome breve o il nome di dominio completo. Per individuare l'indirizzo IP di destinazione di un nome breve, ALTER SERVER CONFIGURATION utilizza la risoluzione DNS. In alcuni casi, un nome breve potrebbe generare confusione e DNS potrebbe restituire l'indirizzo IP errato. È pertanto consigliabile specificare il nome di dominio completo.

    • LOCAL
      Cluster WSFC locale.

    Per ulteriori informazioni, vedere Modificare il contesto del cluster HADR dell'istanza del server (SQL Server).

Osservazioni generali

Questa istruzione non richiede un riavvio di SQL Server. Nel caso di un'istanza del cluster di failover di SQL Server, non è necessario un riavvio della risorsa cluster di SQL Server.

Limitazioni e restrizioni

Questa istruzione non supporta i trigger DDL.

Autorizzazioni

Sono necessarie le autorizzazioni ALTER SETTINGS per l'opzione di affinità del processo, le autorizzazioni ALTER SETTINGS e VIEW SERVER STATE per le opzioni relative a log di diagnostica e proprietà del cluster di failover e l'autorizzazione CONTROL SERVER per l'opzione relativa al contesto del cluster HADR.

La DLL risorse del Motore di database di SQL Server viene eseguita con l'account di sistema locale. L'account di sistema locale, pertanto, deve disporre di accesso in lettura e in scrittura al percorso specificato nell'opzione relativa al log di diagnostica.

Esempi

Categoria

Elementi di sintassi inclusi

Impostazione dell'affinità del processo

CPU • NUMANODE • AUTO

Impostazione delle opzioni del log di diagnostica

ON • OFF • PATH • MAX_SIZE

Impostazione delle proprietà del cluster di failover

HealthCheckTimeout

Modifica del contesto del cluster di una replica di disponibilità

'windows_cluster'

Impostazione dell'affinità del processo

Negli esempi inclusi in questa sezione viene illustrato come impostare l'affinità del processo in CPU e nodi NUMA. Negli esempi si presuppone che il server contenga 256 CPU disposte ciascuna in quattro gruppi di 16 nodi NUMA. I thread non sono assegnati ad alcun nodo NUMA o CPU.

  • Gruppo 0: nodi NUMA da 0 a 3, CPU da 0 a 63

  • Gruppo 1: nodi NUMA da 4 a 7, CPU da 64 a 127

  • Gruppo 2: nodi NUMA da 8 a 12, CPU da 128 a 191

  • Gruppo 3: nodi NUMA da 13 a 16, CPU da 192 a 255

A. Impostazione dell'affinità in tutte le CPU nei gruppi 0 e 2

Nell'esempio seguente viene impostata l'affinità su tutte le CPU nei gruppi 0 e 2.

ALTER SERVER CONFIGURATION 
SET PROCESS AFFINITY CPU=0 TO 63, 128 TO 191;

B. Impostazione dell'affinità su tutte le CPU nei nodi NUMA 0 e 7

Nell'esempio seguente l'affinità delle CPU viene impostata sui nodi 0 e 7.

ALTER SERVER CONFIGURATION 
SET PROCESS AFFINITY NUMANODE=0, 7;

C. Impostazione dell'affinità sulle CPU da 60 a 200

Nell'esempio seguente viene impostata l'affinità sulle CPU da 60 a 200.

ALTER SERVER CONFIGURATION 
SET PROCESS AFFINITY CPU=60 TO 200;

D. Impostazione dell'affinità sulla CPU 0 di un sistema che dispone di due CPU

Nell'esempio seguente viene impostata l'affinità su CPU=0 in un computer che dispone di due CPU. Prima dell'esecuzione dell'istruzione seguente, la maschera di bit di affinità interna è 00.

ALTER SERVER CONFIGURATION SET PROCESS AFFINITY CPU=0;

E. Impostazione dell'affinità su AUTO

Nell'esempio seguente l'affinità viene impostata su AUTO.

ALTER SERVER CONFIGURATION
SET PROCESS AFFINITY CPU=AUTO;

Impostazione delle opzioni del log di diagnostica

Negli esempi inclusi in questa sezione viene illustrato come impostare i valori per l'opzione del log di diagnostica.

A. Avvio della registrazione dei dati di diagnostica

Nell'esempio seguente viene avviata la registrazione dei dati di diagnostica.

ALTER SERVER CONFIGURATION SET DIAGNOSTICS LOG ON;

B. Arresto della registrazione dei dati di diagnostica

Nell'esempio seguente viene arrestata la registrazione dei dati di diagnostica.

ALTER SERVER CONFIGURATION SET DIAGNOSTICS LOG OFF;

C. Definizione della posizione dei log di diagnostica

Nell'esempio seguente viene impostata la posizione dei log di diagnostica sul percorso di file specificato.

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

D. Definizione della dimensione massima di ogni log di diagnostica

Nell'esempio seguente viene impostata su 10 megabyte la dimensione massima di ogni log di diagnostica.

ALTER SERVER CONFIGURATION 
SET DIAGNOSTICS LOG MAX_SIZE = 10 MB;

Impostazione delle proprietà del cluster di failover

Nell'esempio seguente viene illustrata l'impostazione dei valori delle proprietà della risorsa cluster di failover di SQL Server.

A. Definizione del valore per la proprietà HealthCheckTimeout

Nell'esempio seguente viene impostata l'opzione HealthCheckTimeout su 15.000 millisecondi (15 secondi).

ALTER SERVER CONFIGURATION 
SET FAILOVER CLUSTER PROPERTY HealthCheckTimeout = 15000;

Modifica del contesto del cluster di una replica di disponibilità

Nell'esempio seguente viene cambiato il contesto del cluster HADR dell'istanza di SQL Server. Per specificare il cluster WSFC di destinazione, clus01, nell'esempio viene specificato il nome completo dell'oggetto cluster, clus01.xyz.com.

ALTER SERVER CONFIGURATION SET HADR CLUSTER CONTEXT = 'clus01.xyz.com';

Vedere anche

Attivitá

Configurare SQL Server per l'utilizzo di Soft-NUMA (SQL Server)

Riferimento

sys.dm_os_schedulers (Transact-SQL)

sys.dm_os_memory_nodes (Transact-SQL)

Concetti

Modificare il contesto del cluster HADR dell'istanza del server (SQL Server)