Configurare SQL Server in Linux con lo strumento mssql-confConfigure SQL Server on Linux with the mssql-conf tool

QUESTO ARGOMENTO SI APPLICA A: SìSQL Server (solo Linux)nonDatabase SQL di AzurenonAzure SQL Data Warehousenon Parallel Data Warehouse THIS TOPIC APPLIES TO: yesSQL Server (Linux only)noAzure SQL DatabasenoAzure SQL Data WarehousenoParallel Data Warehouse

MSSQL-conf è uno script di configurazione installato con SQL Server 2017 per Red Hat Enterprise Linux, SUSE Linux Enterprise Server e Ubuntu.mssql-conf is a configuration script that installs with SQL Server 2017 for Red Hat Enterprise Linux, SUSE Linux Enterprise Server, and Ubuntu. È possibile utilizzare questa utilità per impostare i parametri seguenti:You can use this utility to set the following parameters:

AgenteAgent Abilitare SQL Server AgentEnable SQL Server Agent
ConfrontoCollation Impostare nuove regole di confronto per SQL Server in Linux.Set a new collation for SQL Server on Linux.
Suggerimenti dei clientiCustomer feedback Scegliere se SQL Server Invia commenti e suggerimenti a Microsoft.Choose whether or not SQL Server sends feedback to Microsoft.
Profilo di Posta elettronica databaseDatabase Mail Profile Impostare il profilo di posta elettronica database predefinito per SQL Server in LinuxSet the default database mail profile for SQL Server on Linux
Directory predefinita dei datiDefault data directory Modificare la directory predefinita per nuovi file di dati SQL Server database (con estensione mdf).Change the default directory for new SQL Server database data files (.mdf).
Directory predefinita logDefault log directory Modifica la directory predefinita per nuovi file di log (ldf) di database di SQL Server.Changes the default directory for new SQL Server database log (.ldf) files.
Directory predefinita dei file del database masterDefault master database file directory Modifica la directory predefinita dei file di database master nell'installazione esistente di SQL.Changes the default directory for the master database files on existing SQL installation.
Nome file predefinito del database masterDefault master database file name Modifica il nome del file di database master.Changes the name of master database files.
Directory dump predefinitaDefault dump directory Modificare la directory predefinita per nuovi dump della memoria e altri file sulla risoluzione dei problemi.Change the default directory for new memory dumps and other troubleshooting files.
Directory log di errore predefinitaDefault error log directory Modifica la directory predefinita per i nuovi file di log degli errori di SQL Server, la traccia predefinita Profiler, XE sessione di integrità di sistema e Hekaton sessione XE.Changes the default directory for new SQL Server ErrorLog, Default Profiler Trace, System Health Session XE, and Hekaton Session XE files.
Directory di backup predefinitaDefault backup directory Modificare la directory predefinita per i nuovi file di backup.Change the default directory for new backup files.
Tipo di immagineDump type Scegliere il tipo di file di dump di memoria di dump per la raccolta.Choose the type of dump memory dump file to collect.
Disponibilità elevataHigh availability Abilitare gruppi di disponibilità.Enable Availability Groups.
Directory di controllo localeLocal Audit directory Impostare una directory da aggiungere i file di controllo locale.Set a a directory to add Local Audit files.
Impostazioni localiLocale Impostare le impostazioni locali per SQL Server da usare.Set the locale for SQL Server to use.
Limite di memoriaMemory limit Impostare il limite di memoria per SQL Server.Set the memory limit for SQL Server.
Porta TCPTCP port Cambiare la porta in cui SQL Server è in ascolto per le connessioni.Change the port where SQL Server listens for connections.
TLSTLS Configurare la sicurezza a livello di trasporto.Configure Transport Level Security.
Flag di tracciaTraceflags Impostare i flag di traccia che il servizio verrà utilizzato.Set the traceflags that the service is going to use.

Suggerimento

Alcune di queste impostazioni possono essere configurate anche con le variabili di ambiente.Some of these settings can also be configured with environment variables. Per altre informazioni, vedere le impostazioni di configurazione SQL Server con le variabili di ambiente.For more information, see Configure SQL Server settings with environment variables.

Suggerimenti sull'utilizzoUsage tips

  • Per gruppi di disponibilità AlwaysOn e i cluster di dischi condivisi, apportare sempre le stesse modifiche di configurazione in ogni nodo.For Always On Availability Groups and shared disk clusters, always make the same configuration changes on each node.

  • Per lo scenario di cluster disco condiviso, non tentare di riavviare la mssql server il servizio per applicare le modifiche.For the shared disk cluster scenario, do not attempt to restart the mssql-server service to apply changes. SQL Server è in esecuzione come un'applicazione.SQL Server is running as an application. Al contrario, portare la risorsa non in linea e quindi torna online.Instead, take the resource offline and then back online.

  • Questi esempi Esegui mssql-conf per specificare il percorso completo: /opt/mssql/bin/mssql-conf.These examples run mssql-conf by specify the full path: /opt/mssql/bin/mssql-conf. Se si sceglie di passare a tale percorso, invece, eseguire mssql-conf nel contesto della directory corrente: . / conf mssql.If you choose to navigate to that path instead, run mssql-conf in the context of the current directory: ./mssql-conf.

Abilitare SQL Server AgentEnable SQL Server Agent

Il sqlagent.enabled impostazione consente SQL Server Agent.The sqlagent.enabled setting enables SQL Server Agent. Per impostazione predefinita, SQL Server Agent è disabilitato.By default, SQL Server Agent is disabled. Se sqlagent.enabled non è presente nel file di impostazioni mssql.conf internamente SQL Server si presuppone che SQL Server Agent sia abilitato.If sqlagent.enabled is not present in the mssql.conf settings file, then SQL Server internally assumes that SQL Server Agent is enabled.

Per modificare questa impostazione, utilizzare la procedura seguente:To change this settings, use the following steps:

  1. Abilitare SQL Server Agent:Enable the SQL Server Agent:

    sudo /opt/mssql/bin/mssql-conf set sqlagent.enabled true 
    
  2. Riavviare il servizio SQL Server:Restart the SQL Server service:

    sudo systemctl restart mssql-server
    

Modificare le regole di confronto di SQL ServerChange the SQL Server collation

Il set di regole di confronto opzione consente di modificare il valore delle regole di confronto per le regole di confronto supportate.The set-collation option changes the collation value to any of the supported collations.

  1. Primo il backup di tutti i database utente sul server.First backup any user databases on your server.

  2. Quindi usare il sp_detach_db stored procedure per scollegare i database utente.Then use the sp_detach_db stored procedure to detach the user databases.

  3. Eseguire la set di regole di confronto opzione e seguire le istruzioni:Run the set-collation option and follow the prompts:

    sudo /opt/mssql/bin/mssql-conf set-collation
    
  4. L'utilità mssql-conf tenterà di modificare il valore di regole di confronto specificate e riavviare il servizio.The mssql-conf utility will attempt to change to the specified collation value and restart the service. Se si verificano errori, viene eseguito il rollback nuovamente le regole di confronto al valore precedente.If there are any errors, it rolls back the collation to the previous value.

  5. Ripristinare i backup dei database utente.Retore your user database backups.

Per un elenco di regole di confronto supportate, eseguire la Sys. fn_helpcollations funzione: SELECT Name from sys.fn_helpcollations().For a list of supported collations, run the sys.fn_helpcollations function: SELECT Name from sys.fn_helpcollations().

Configurare i suggerimenti dei clientiConfigure customer feedback

Il telemetry.customerfeedback le modifiche alle impostazioni se SQL Server Invia commenti e suggerimenti a Microsoft o non.The telemetry.customerfeedback setting changes whether SQL Server sends feedback to Microsoft or not. Per impostazione predefinita, questo valore è impostato su true per tutte le edizioni.By default, this value is set to true for all editions. Per modificare il valore, eseguire i comandi seguenti:To change the value, run the following commands:

Importante

È possibile non disattivare i suggerimenti dei clienti gratuitamente edizioni di SQL Server Express e Developer.You can not turn off customer feedback for free editions of SQL Server, Express and Developer.

  1. Eseguire lo script mssql-conf come radice con il impostata comando telemetry.customerfeedback.Run the mssql-conf script as root with the set command for telemetry.customerfeedback. Nell'esempio seguente consente di disattivare i suggerimenti dei clienti, specificando false.The following example turns off customer feedback by specifying false.

    sudo /opt/mssql/bin/mssql-conf set telemetry.customerfeedback false
    
  2. Riavviare il servizio SQL Server:Restart the SQL Server service:

    sudo systemctl restart mssql-server
    

Per altre informazioni, vedere i suggerimenti dei clienti per SQL Server in Linux e il informativa sulla Privacy di SQL Server.For more information, see Customer Feedback for SQL Server on Linux and the SQL Server Privacy Statement.

Modificare il percorso della directory predefinita dati o di logChange the default data or log directory location

Il filelocation.defaultdatadir e filelocation.defaultlogdir le impostazioni di modificare il percorso in cui vengono creati i nuovi file di database e del log.The filelocation.defaultdatadir and filelocation.defaultlogdir settings change the location where the new database and log files are created. Per impostazione predefinita, questo percorso sarà /var/opt/mssql/data.By default, this location is /var/opt/mssql/data. Per modificare queste impostazioni, utilizzare la procedura seguente:To change these settings, use the following steps:

  1. Creare la directory di destinazione per il nuovo database i file di dati e di log.Create the target directory for new database data and log files. Nell'esempio seguente crea un nuovo /tmp/dati directory:The following example creates a new /tmp/data directory:

    sudo mkdir /tmp/data
    
  2. Modificare il proprietario e il gruppo della directory in cui il mssql utente:Change the owner and group of the directory to the mssql user:

    sudo chown mssql /tmp/data
    sudo chgrp mssql /tmp/data
    
  3. Utilizzare mssql-conf per modificare la directory predefinita dati con il impostare comando:Use mssql-conf to change the default data directory with the set command:

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /tmp/data
    
  4. Riavviare il servizio SQL Server:Restart the SQL Server service:

    sudo systemctl restart mssql-server
    
  5. Tutti i file di database per i nuovi database creati verranno ora essere archiviati nella nuova posizione.Now all the database files for the new databases created will be stored in this new location. Se si desidera modificare il percorso dei file di log (ldf) dei nuovi database, è possibile utilizzare il comando "set" seguente:If you would like to change the location of the log (.ldf) files of the new databases, you can use the following "set" command:

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultlogdir /tmp/log
    
  6. Questo comando si presuppone inoltre che una directory di log/tmp/esista e che sia in utente e il gruppo mssql.This command also assumes that a /tmp/log directory exists, and that it is under the user and group mssql.

Modificare il percorso di directory file di database master predefinitoChange the default master database file directory location

Il filelocation.masterdatafile e filelocation.masterlogfile le modifiche alle impostazioni la posizione in cui il motore di SQL Server cerca i file di database master.The filelocation.masterdatafile and filelocation.masterlogfile setting changes the location where the SQL Server engine looks for the master database files. Per impostazione predefinita, questo percorso sarà /var/opt/mssql/data.By default, this location is /var/opt/mssql/data.

Per modificare queste impostazioni, utilizzare la procedura seguente:To change these settings, use the following steps:

  1. Creare la directory di destinazione per i nuovi file di log di errore.Create the target directory for new error log files. Nell'esempio seguente crea un nuovo /tmp/masterdatabasedir directory:The following example creates a new /tmp/masterdatabasedir directory:

    sudo mkdir /tmp/masterdatabasedir
    
  2. Modificare il proprietario e il gruppo della directory in cui il mssql utente:Change the owner and group of the directory to the mssql user:

    sudo chown mssql /tmp/masterdatabasedir
    sudo chgrp mssql /tmp/masterdatabasedir
    
  3. Utilizzare mssql-conf per modificare la directory di database master predefinita per i file di log e dati master con il impostare comando:Use mssql-conf to change the default master database directory for the master data and log files with the set command:

    sudo /opt/mssql/bin/mssql-conf set filelocation.masterdatafile /tmp/masterdatabasedir/master.mdf
    sudo /opt/mssql/bin/mssql-conf set filelocation.masterlogfile /tmp/masterdatabasedir/mastlog.ldf
    
  4. Arrestare il servizio SQL Server:Stop the SQL Server service:

    sudo systemctl stop mssql-server
    
  5. Spostare il master. mdf e masterlog.ldf:Move the master.mdf and masterlog.ldf:

    sudo mv /var/opt/mssql/data/master.mdf /tmp/masterdatabasedir/master.mdf 
    sudo mv /var/opt/mssql/data/mastlog.ldf /tmp/masterdatabasedir/mastlog.ldf
    
  6. Avviare il servizio SQL Server:Start the SQL Server service:

    sudo systemctl start mssql-server
    

Nota

Se SQL Server non è possibile individuare i file mdf e Mastlog nella directory specificata, verrà creata automaticamente una copia basata su modelli dei database di sistema nella directory specificata e SQL Server verrà avviato correttamente.If SQL Server cannot find master.mdf and mastlog.ldf files in the specified directory, a templated copy of the system databases will be automatically created in the specified directory, and SQL Server will successfully start up. Tuttavia, i metadati, ad esempio i database utente, account di accesso server, i certificati del server, le chiavi di crittografia, processi di SQL agent o vecchia password dell'account di accesso SA non essere aggiornati nel nuovo database master.However, metadata such as user databases, server logins, server certificates, encryption keys, SQL agent jobs, or old SA login password will not be updated in the new master database. È necessario arrestare SQL Server e spostare il vecchio master. mdf e Mastlog. ldf nel nuovo percorso specificato e avvio di SQL Server per continuare a utilizzare i metadati esistenti.You will have to stop SQL Server and move your old master.mdf and mastlog.ldf to the new specified location and start SQL Server to continue using the existing metadata.

Modificare il nome del file di database master.Change the name of master database files.

Il filelocation.masterdatafile e filelocation.masterlogfile le modifiche alle impostazioni la posizione in cui il motore di SQL Server cerca i file di database master.The filelocation.masterdatafile and filelocation.masterlogfile setting changes the location where the SQL Server engine looks for the master database files. Per impostazione predefinita, questo percorso sarà /var/opt/mssql/data.By default, this location is /var/opt/mssql/data. Per modificare queste impostazioni, utilizzare la procedura seguente:To change these settings, use the following steps:

  1. Arrestare il servizio SQL Server:Stop the SQL Server service:

    sudo systemctl stop mssql-server
    
  2. Utilizzare mssql-conf per modificare i nomi previste del database master per i file di log e dati master con il impostare comando:Use mssql-conf to change the expected master database names for the master data and log files with the set command:

    sudo /opt/mssql/bin/mssql-conf set filelocation.masterdatafile /var/opt/mssql/data/masternew.mdf
    sudo /opt/mssql/bin/mssql-conf set filelocation.mastlogfile /var/opt/mssql/data /mastlognew.ldf
    
  3. Modificare il nome del file di dati e log database masterChange the name of the master database data and log files

    sudo mv /var/opt/mssql/data/master.mdf /var/opt/mssql/data/masternew.mdf
    sudo mv /var/opt/mssql/data/mastlog.ldf /var/opt/mssql/data/mastlognew.ldf
    
  4. Avviare il servizio SQL Server:Start the SQL Server service:

    sudo systemctl start mssql-server
    

Modificare il percorso di directory dump predefinitoChange the default dump directory location

Il filelocation.defaultdumpdir le modifiche alle impostazioni il percorso predefinito in cui la memoria e dump SQL vengono generati quando è presente un arresto anomalo del sistema.The filelocation.defaultdumpdir setting changes the default location where the memory and SQL dumps are generated whenever there is a crash. Per impostazione predefinita, questi file vengono generati in /var/opt/mssql/log.By default, these files are generated in /var/opt/mssql/log.

Per impostare la nuova posizione, utilizzare i comandi seguenti:To set up this new location, use the following commands:

  1. Creare la directory di destinazione per i nuovi file di dump.Create the target directory for new dump files. Nell'esempio seguente crea un nuovo /tmp/dump directory:The following example creates a new /tmp/dump directory:

    sudo mkdir /tmp/dump
    
  2. Modificare il proprietario e il gruppo della directory in cui il mssql utente:Change the owner and group of the directory to the mssql user:

    sudo chown mssql /tmp/dump
    sudo chgrp mssql /tmp/dump
    
  3. Utilizzare mssql-conf per modificare la directory predefinita dati con il impostare comando:Use mssql-conf to change the default data directory with the set command:

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdumpdir /tmp/dump
    
  4. Riavviare il servizio SQL Server:Restart the SQL Server service:

    sudo systemctl restart mssql-server
    

Modificare il percorso di directory predefinito file di log degli erroriChange the default error log file directory location

Il filelocation.errorlogfile il percorso in cui il nuovo log degli errori, la traccia predefinita profiler, sessione di integrità di sistema XE e i file di sessione XE Hekaton vengono creati le modifiche alle impostazioni.The filelocation.errorlogfile setting changes the location where the new error log, default profiler trace, system health session XE and Hekaton session XE files are created. Per impostazione predefinita, questo percorso sarà /var/opt/mssql/log.By default, this location is /var/opt/mssql/log. La directory in cui è impostato il file di log degli errori di SQL diventa la directory log predefinita per gli altri log.The directory in which SQL errorlog file is set becomes the default log directory for other logs.

Per modificare queste impostazioni:To change these settings:

  1. Creare la directory di destinazione per i nuovi file di log di errore.Create the target directory for new error log files. Nell'esempio seguente crea un nuovo /tmp/logs directory:The following example creates a new /tmp/logs directory:

    sudo mkdir /tmp/logs
    
  2. Modificare il proprietario e il gruppo della directory in cui il mssql utente:Change the owner and group of the directory to the mssql user:

    sudo chown mssql /tmp/logs
    sudo chgrp mssql /tmp/logs
    
  3. Utilizzare mssql-conf per modificare il nome del file di log degli errori predefinito con il impostare comando:Use mssql-conf to change the default errorlog filename with the set command:

    sudo /opt/mssql/bin/mssql-conf set filelocation.errorlogfile /tmp/logs/errorlog
    
  4. Riavviare il servizio SQL Server:Restart the SQL Server service:

    sudo systemctl restart mssql-server
    

Modificare il percorso di directory di backup predefinitoChange the default backup directory location

Il filelocation.defaultbackupdir le modifiche alle impostazioni il percorso predefinito in cui vengono generati i file di backup.The filelocation.defaultbackupdir setting changes the default location where the backup files are generated. Per impostazione predefinita, questi file vengono generati in /var/opt/mssql/data.By default, these files are generated in /var/opt/mssql/data.

Per impostare la nuova posizione, utilizzare i comandi seguenti:To set up this new location, use the following commands:

  1. Creare la directory di destinazione per i nuovi file di backup.Create the target directory for new backup files. Nell'esempio seguente crea un nuovo /tmp/backup directory:The following example creates a new /tmp/backup directory:

    sudo mkdir /tmp/backup
    
  2. Modificare il proprietario e il gruppo della directory in cui il mssql utente:Change the owner and group of the directory to the mssql user:

    sudo chown mssql /tmp/backup
    sudo chgrp mssql /tmp/backup
    
  3. Per modificare la directory di backup predefinita con il comando "set", utilizzare conf mssql:Use mssql-conf to change the default backup directory with the "set" command:

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultbackupdir /tmp/backup
    
  4. Riavviare il servizio SQL Server:Restart the SQL Server service:

    sudo systemctl restart mssql-server
    

Specificare le impostazioni di dump dei componenti di baseSpecify core dump settings

Se si verifica un'eccezione in uno dei processi di SQL Server, SQL Server crea un dump di memoria.If an exception occurs in one of the SQL Server processes, SQL Server creates a memory dump.

Sono disponibili due opzioni per il controllo del tipo di memoria esegue il dump raccolti da SQL Server: coredump.coredumptype e coredump.captureminiandfull.There are two options for controlling the type of memory dumps that SQL Server collects: coredump.coredumptype and coredump.captureminiandfull. Tali elementi sono correlati a due fasi di acquisizione dump dei componenti di base.These relate to the two phases of core dump capture.

La prima acquisizione fase viene controllata dal coredump.coredumptype impostazioni che determinano il tipo di file di dump generati durante un'eccezione.The first phase capture is controlled by the coredump.coredumptype setting, which determines the type of dump file generated during an exception. La seconda fase viene abilitata durante la coredump.captureminiandfull impostazione.The second phase is enabled when the coredump.captureminiandfull setting. Se coredump.captureminiandfull è impostata su true, il dump del file specificato da coredump.coredumptype viene generato e viene inoltre generato un breve dump secondo.If coredump.captureminiandfull is set to true, the dump file specified by coredump.coredumptype is generated and a second mini dump is also generated. L'impostazione coredump.captureminiandfull su false disabilita l'acquisizione secondo tentativo.Setting coredump.captureminiandfull to false disables the second capture attempt.

  1. Decidere se acquisire i dump di formattazione rapida e completi con il coredump.captureminiandfull impostazione.Decide whether to capture both mini and full dumps with the coredump.captureminiandfull setting.

    sudo /opt/mssql/bin/mssql-conf set coredump.captureminiandfull <true or false>
    

    Impostazione predefinita: falseDefault: false

  2. Specificare il tipo di file dump con il coredump.coredumptype impostazione.Specify the type of dump file with the coredump.coredumptype setting.

    sudo /opt/mssql/bin/mssql-conf set coredump.coredumptype <dump_type>
    

    Impostazione predefinita: miniplusDefault: miniplus

    Nella tabella seguente sono elencati i possibili coredump.coredumptype valori.The following table lists the possible coredump.coredumptype values.

    TipoType DescriptionDescription
    minimini Alle minishell si sono il più piccolo tipo di file di dump.Mini is the smallest dump file type. Usa le informazioni di sistema Linux per determinare il thread e moduli del processo.It uses the Linux system information to determine threads and modules in the process. Il dump contiene solo i moduli e gli stack di thread di ambiente host.The dump contains only the host environment thread stacks and modules. Non contiene i riferimenti di memoria indiretto o variabili globali.It does not contain indirect memory references or globals.
    miniplusminiplus È simile a mini miniPlus, ma include memoria aggiuntiva.MiniPlus is similar to mini, but it includes additional memory. Riconosce le caratteristiche interne di SQLPAL e all'ambiente host, aggiungere le seguenti aree di memoria per il dump:It understands the internals of SQLPAL and the host environment, adding the following memory regions to the dump:
    -Varie funzioni globali- Various globals
    -Tutta la memoria oltre 64TB- All memory above 64TB
    -All denominata area trovata nella /proc/$ pid e mappe- All named regions found in /proc/$pid/maps
    -Memoria indiretto dal thread e stack- Indirect memory from threads and stacks
    -Informazioni sul thread- Thread information
    -Del Teb e associati del Peb- Associated Teb’s and Peb’s
    -Informazione modulo- Module Information
    -Struttura ad albero VMM e VAD- VMM and VAD tree
    filteredfiltered Progettazione filtrato viene utilizzato un sottrazione basato su tutta la memoria del processo in cui è inclusa specificamente esclusi.Filtered uses a subtraction-based design where all memory in the process is included unless specifically excluded. La struttura in grado di comprendere le caratteristiche interne di SQLPAL e all'ambiente host, escludendo il dump determinate aree geografiche.The design understands the internals of SQLPAL and the host environment, excluding certain regions from the dump.
    fullfull Completa un dump del processo completo che include tutte le aree si trova nella /proc/$ pid e mappe.Full is a complete process dump that includes all regions located in /proc/$pid/maps. Non è controllato dalla coredump.captureminiandfull impostazione.This is not controlled by coredump.captureminiandfull setting.

Impostare il profilo di posta elettronica database predefinito per SQL Server in LinuxSet the default database mail profile for SQL Server on Linux

Il sqlpagent.databasemailprofile consente di impostare il profilo di posta elettronica database predefinito per gli avvisi di posta elettronica.The sqlpagent.databasemailprofile allows you to set the default DB Mail profile for email alerts.

sudo /opt/mssq/bin/mssql-conf set sqlagent.databasemailprofile <profile_name>

Disponibilità elevataHigh Availability

Il hadr.hadrenabled opzione Abilita gruppi di disponibilità nell'istanza di SQL Server.The hadr.hadrenabled option enables availability groups on your SQL Server instance. Il seguente comando abilita gruppi di disponibilità impostando hadr.hadrenabled su 1.The following command enables availability groups by setting hadr.hadrenabled to 1. È necessario riavviare SQL Server per l'impostazione diventino effettive.You must restart SQL Server for the setting to take effect.

sudo /opt/mssql/bin/mssql-conf set hadr.hadrenabled  1
sudo systemctl restart mssql-server

Per informazioni su come questo viene utilizzato con gruppi di disponibilità, vedere i seguenti due argomenti.For information how this is used with availability groups, see the following two topics.

Directory del set di controllo localeSet local audit directory

Il telemetry.userrequestedlocalauditdirectory impostazione Abilita controllo locale e consente di configurare la directory in cui i locale registri di controllo vengono creati.The telemetry.userrequestedlocalauditdirectory setting enables Local Audit and lets you set the directory where the Local Audit logs are created.

  1. Creare una directory di destinazione per i nuovi log di controllo locale.Create a target directory for new Local Audit logs. Nell'esempio seguente crea un nuovo /tmp/controllo directory:The following example creates a new /tmp/audit directory:

    sudo mkdir /tmp/audit
    
  2. Modificare il proprietario e il gruppo della directory in cui il mssql utente:Change the owner and group of the directory to the mssql user:

    sudo chown mssql /tmp/audit
    sudo chgrp mssql /tmp/audit
    
  3. Eseguire lo script mssql-conf come radice con il impostata comando telemetry.userrequestedlocalauditdirectory:Run the mssql-conf script as root with the set command for telemetry.userrequestedlocalauditdirectory:

    sudo /opt/mssql/bin/mssql-conf set telemetry.userrequestedlocalauditdirectory /tmp/audit
    
  4. Riavviare il servizio SQL Server:Restart the SQL Server service:

    sudo systemctl restart mssql-server
    

Per altre informazioni, vedere i suggerimenti dei clienti per SQL Server in Linux.For more information, see Customer Feedback for SQL Server on Linux.

Modificare le impostazioni locali di SQL ServerChange the SQL Server locale

Il language.lcid le modifiche alle impostazioni locali di SQL Server a qualsiasi identificatore di lingua supportata (LCID).The language.lcid setting changes the SQL Server locale to any supported language identifier (LCID).

  1. Nell'esempio seguente modifica le impostazioni locali sulla lingua francese (1036):The following example changes the locale to French (1036):

    sudo /opt/mssql/bin/mssql-conf set language.lcid 1036
    
  2. Riavviare il servizio SQL Server per rendere effettive le modifiche:Restart the SQL Server service to apply the changes:

    sudo systemctl restart mssql-server
    

Impostare il limite di memoriaSet the memory limit

Il memory.memorylimitmb impostazione controlli la quantità memoria fisica (in MB) disponibile per SQL Server.The memory.memorylimitmb setting controls the amount physical memory (in MB) available to SQL Server. Il valore predefinito è 80% della memoria fisica.The default is 80% of the physical memory.

  1. Eseguire lo script mssql-conf come radice con il impostata comando memory.memorylimitmb.Run the mssql-conf script as root with the set command for memory.memorylimitmb. L'esempio seguente modifica la memoria disponibile per SQL Server a 3,25 GB (3328 MB).The following example changes the memory available to SQL Server to 3.25 GB (3328 MB).

    sudo /opt/mssql/bin/mssql-conf set memory.memorylimitmb 3328
    
  2. Riavviare il servizio SQL Server per rendere effettive le modifiche:Restart the SQL Server service to apply the changes:

    sudo systemctl restart mssql-server
    

Modificare la porta TCPChange the TCP port

Il network.tcpport le modifiche alle impostazioni la porta TCP in cui SQL Server è in ascolto per le connessioni.The network.tcpport setting changes the TCP port where SQL Server listens for connections. Per impostazione predefinita, questa porta è 1433.By default, this port is set to 1433. Per modificare la porta, eseguire i comandi seguenti:To change the port, run the following commands:

  1. Eseguire lo script mssql-conf come radice con il comando "set" per "network.tcpport":Run the mssql-conf script as root with the "set" command for "network.tcpport":

    sudo /opt/mssql/bin/mssql-conf set network.tcpport <new_tcp_port>
    
  2. Riavviare il servizio SQL Server:Restart the SQL Server service:

    sudo systemctl restart mssql-server
    
  3. Quando ci si connette a SQL Server a questo punto, è necessario specificare la porta personalizzata con una virgola (,) dopo il nome host o indirizzo IP.When connecting to SQL Server now, you must specify the custom port with a comma (,) after the hostname or IP address. Per eseguire la connessione con SQLCMD, ad esempio, utilizzare il comando seguente:For example, to connect with SQLCMD, you would use the following command:

    sqlcmd -S localhost,<new_tcp_port> -U test -P test
    

Specificare le impostazioni di TLSSpecify TLS settings

Le opzioni seguenti configurare TLS per un'istanza di SQL Server in esecuzione in Linux.The following options configure TLS for an instance of SQL Server running on Linux.

OpzioneOption DescriptionDescription
network.forceencryptionnetwork.forceencryption Se è 1, quindi SQL ServerSQL Server forza tutte le connessioni da crittografare.If 1, then SQL ServerSQL Server forces all connections to be encrypted. Per impostazione predefinita, questa opzione è 0.By default, this option is 0.
network.tlscertnetwork.tlscert Il percorso assoluto per il certificato di file che SQL ServerSQL Server utilizza per TLS.The absolute path to the certificate file that SQL ServerSQL Server uses for TLS. Esempio: /etc/ssl/certs/mssql.pem il file del certificato deve essere accessibile dall'account mssql.Example: /etc/ssl/certs/mssql.pem The certificate file must be accessible by the mssql account. Microsoft consiglia di limitare l'accesso al file usando chown mssql:mssql <file>; chmod 400 <file>.Microsoft recommends restricting access to the file using chown mssql:mssql <file>; chmod 400 <file>.
network.tlskeynetwork.tlskey Il percorso assoluto per la chiave privata del file che SQL ServerSQL Server utilizza per TLS.The absolute path to the private key file that SQL ServerSQL Server uses for TLS. Esempio: /etc/ssl/private/mssql.key il file del certificato deve essere accessibile dall'account mssql.Example: /etc/ssl/private/mssql.key The certificate file must be accessible by the mssql account. Microsoft consiglia di limitare l'accesso al file usando chown mssql:mssql <file>; chmod 400 <file>.Microsoft recommends restricting access to the file using chown mssql:mssql <file>; chmod 400 <file>.
network.tlsprotocolsnetwork.tlsprotocols Un elenco delimitato da virgole di quali TLS sono consentiti i protocolli da SQL Server.A comma-separated list of which TLS protocols are allowed by SQL Server. SQL ServerSQL Server tenta sempre di negoziazione del protocollo consentito avanzato. always attempts to negotiate the strongest allowed protocol. Se un client non supporta alcun protocollo consentito SQL ServerSQL Server rifiuta il tentativo di connessione.If a client does not support any allowed protocol, SQL ServerSQL Server rejects the connection attempt. Per la compatibilità, tutti i protocolli supportati sono consentiti per impostazione predefinita (1.2, 1.1, 1.0).For compatibility, all supported protocols are allowed by default (1.2, 1.1, 1.0). Se i client supportano TLS 1.2, si consiglia di consentire solo TLS 1.2.If your clients support TLS 1.2, Microsoft recommends allowing only TLS 1.2.
network.tlsciphersnetwork.tlsciphers Specifica le crittografie consentite dal SQL ServerSQL Server per TLS.Specifies which ciphers are allowed by SQL ServerSQL Server for TLS. Questa stringa deve essere formattata per ogni formato di elenco di pacchetti di crittografia del OpenSSL.This string must be formatted per OpenSSL's cipher list format. In generale, non è necessario modificare questa opzione.In general, you should not need to change this option.
Per impostazione predefinita, sono consentite le crittografie seguenti:By default, the following ciphers are allowed:
ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
network.kerberoskeytabfilenetwork.kerberoskeytabfile Percorso del file keytab KerberosPath to the Kerberos keytab file

Per un esempio di usando le impostazioni di TLS, vedere crittografia delle connessioni a SQL Server in Linux.For an example of using the TLS settings, see Encrypting Connections to SQL Server on Linux.

Abilita/disabilita i flag di tracciaEnable/Disable traceflags

Ciò il traceflag opzione Abilita o disabilita i flag di traccia per l'avvio del servizio SQL Server.This traceflag option enables or disables traceflags for the startup of the SQL Server service. Per abilitare o disabilitare un flag di traccia utilizzare i comandi seguenti:To enable/disable a traceflag use the following commands:

  1. Abilitare un flag di traccia utilizzando il comando seguente.Enable a traceflag using the following command. Ad esempio, per il Traceflag 1234:For example, for Traceflag 1234:

    sudo /opt/mssql/bin/mssql-conf traceflag 1234 on
    
  2. È possibile abilitare i flag di traccia più specificandoli separatamente:You can enable multiple traceflags by specifying them separately:

    sudo /opt/mssql/bin/mssql-conf traceflag 2345 3456 on
    
  3. In modo analogo, è possibile disabilitare uno o più attivati i flag di traccia specificarli e aggiungendo il off parametro:In a similar way, you can disable one or more enabled traceflags by specifying them and adding the off parameter:

    sudo /opt/mssql/bin/mssql-conf traceflag 1234 2345 3456 off
    
  4. Riavviare il servizio SQL Server per rendere effettive le modifiche:Restart the SQL Server service to apply the changes:

    sudo systemctl restart mssql-server
    

Rimuovere un'impostazioneRemove a setting

Per annullare qualsiasi impostazione effettuata con mssql-conf set, chiamare mssql-conf con il unset opzione e il nome dell'impostazione.To unset any setting made with mssql-conf set, call mssql-conf with the unset option and the name of the setting. Ciò Cancella l'impostazione, in modo efficace restituirlo al relativo valore predefinito.This clears the setting, effectively returning it to its default value.

  1. Nell'esempio seguente cancella il network.tcpport opzione.The following example clears the network.tcpport option.

    sudo /opt/mssql/bin/mssql-conf unset network.tcpport
    
  2. Riavviare il servizio SQL Server.Restart the SQL Server service.

    sudo systemctl restart mssql-server
    

Visualizzare le impostazioni correntiView current settings

Per visualizzare qualsiasi configurato le impostazioni, eseguire il comando seguente per generare il contenuto del mssql.conf file:To view any configured settings, run the following command to output the contents of the mssql.conf file:

sudo cat /var/opt/mssql/mssql.conf

Si noti che eventuali impostazioni non visualizzate in questo file utilizza valori predefiniti.Note that any settings not shown in this file are using their default values. La sezione successiva include un campione mssql.conf file.The next section provides a sample mssql.conf file.

formato MSSQL.confmssql.conf format

I seguenti /var/opt/mssql/mssql.conf file viene fornito un esempio per ogni impostazione.The following /var/opt/mssql/mssql.conf file provides an example for each setting. È possibile utilizzare questo formato apportare manualmente modifiche per il mssql.conf file in base alle esigenze.You can use this format to manually make changes to the mssql.conf file as needed. Se si modifica manualmente il file, è necessario riavviare SQL Server prima che vengano applicate le modifiche.If you do manually change the file, you must restart SQL Server before the changes are applied. Usare la mssql.conf file con Docker, è necessario disporre di Docker rendere i dati persistenti.To use the mssql.conf file with Docker, you must have Docker persist your data. Innanzitutto aggiungere completa mssql.conf file nella directory di host e quindi eseguire il contenitore.First add a complete mssql.conf file to your host directory and then run the container. Un esempio di questo tipo in i suggerimenti dei clienti.There is an example of this in Customer Feedback.

[EULA]
accepteula = Y

[coredump]
captureminiandfull = true
coredumptype = full

[filelocation]
defaultbackupdir = /var/opt/mssql/data/
defaultdatadir = /var/opt/mssql/data/
defaultdumpdir = /var/opt/mssql/data/
defaultlogdir = /var/opt/mssql/data/

[hadr]
hadrenabled = 0

[language]
lcid = 1033

[memory]
memorylimitmb = 4096

[network]
forceencryption = 0
ipaddress = 10.192.0.0
kerberoskeytabfile = /var/opt/mssql/secrets/mssql.keytab
tcpport = 1401
tlscert = /etc/ssl/certs/mssql.pem
tlsciphers = ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
tlskey = /etc/ssl/private/mssql.key
tlsprotocols = 1.2,1.1,1.0

[sqlagent]
databasemailprofile = default
errorlogfile = /var/opt/mssql/log/sqlagentlog.log
errorlogginglevel = 7

[telemetry]
customerfeedback = true
userrequestedlocalauditdirectory = /tmp/audit

[traceflag]
traceflag0 = 1204
traceflag1 = 2345
traceflag = 3456

Passaggi successiviNext steps

Per utilizzare le variabili di ambiente per apportare queste modifiche alla configurazione, vedere le impostazioni di configurazione SQL Server con le variabili di ambiente.To instead use environment variables to make some of these configuration changes, see Configure SQL Server settings with environment variables.

Per altri scenari e strumenti di gestione, vedere gestire SQL Server in Linux.For other management tools and scenarios, see Manage SQL Server on Linux.