Linee guida per l'installazione di SQL Server in LinuxInstallation guidance for SQL Server on Linux

SI APPLICA A: sìSQL Server (solo Linux) noDatabase SQL di Azure noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse APPLIES TO: yesSQL Server (Linux only) noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

Questo articolo offre linee guida per l'installazione, l'aggiornamento e la disinstallazione di SQL Server 2017 e SQL Server 2019 in Linux.This article provides guidance for installing, updating, and uninstalling SQL Server 2017 and SQL Server 2019 on Linux.

Per altri scenari di distribuzione, vedere:For other deployment scenarios, see:

Suggerimento

Questa guida tratta diversi scenari di distribuzione.This guide covers several deployment scenarios. Se sono necessarie solo le istruzioni dettagliate per l'installazione, passare a uno degli argomenti di avvio rapido:If you are only looking for step-by-step installation instructions, jump to one of the quickstarts:

Per le risposte alle domande frequenti, vedere Domande frequenti su SQL Server in Linux.For answers to frequently asked questions, see the SQL Server on Linux FAQ.

Piattaforme supportateSupported platforms

SQL Server è supportato in Red Hat Enterprise Linux (RHEL), SUSE Linux Enterprise Server (SLES) e Ubuntu.SQL Server is supported on Red Hat Enterprise Linux (RHEL), SUSE Linux Enterprise Server (SLES), and Ubuntu. È anche supportato come immagine Docker, che può essere eseguita in Docker Engine in Linux o in Docker per Windows/Mac.It is also supported as a Docker image, which can run on Docker Engine on Linux or Docker for Windows/Mac.

PiattaformaPlatform Versioni supportateSupported version(s) RecuperoGet
Red Hat Enterprise LinuxRed Hat Enterprise Linux 7.3, 7.4, 7.5, 7.67.3, 7.4, 7.5, 7.6 Scaricare RHEL 7.6Get RHEL 7.6
SUSE Linux Enterprise ServerSUSE Linux Enterprise Server v12 SP2v12 SP2 Scaricare SLES v12 SP2Get SLES v12 SP2
UbuntuUbuntu 16.0416.04 Scaricare Ubuntu 16.04Get Ubuntu 16.04
Docker EngineDocker Engine 1.8+1.8+ Scaricare DockerGet Docker
PiattaformaPlatform Versioni supportateSupported version(s) RecuperoGet
Red Hat Enterprise LinuxRed Hat Enterprise Linux 7.3, 7.4, 7.5, 7.67.3, 7.4, 7.5, 7.6 Scaricare RHEL 7.6Get RHEL 7.6
SUSE Linux Enterprise ServerSUSE Linux Enterprise Server v12 SP2, SP3, SP4v12 SP2, SP3, SP4 Scaricare SLES v12Get SLES v12
UbuntuUbuntu 16.0416.04 Scaricare Ubuntu 16.04Get Ubuntu 16.04
Docker EngineDocker Engine 1.8+1.8+ Scaricare DockerGet Docker

Microsoft supporta anche la distribuzione e la gestione di contenitori di SQL Server tramite OpenShift e Kubernetes.Microsoft also supports deploying and managing SQL Server containers by using OpenShift and Kubernetes.

Nota

SQL Server è testato e supportato in Linux per le distribuzioni elencate in precedenza.SQL Server is tested and supported on Linux for the previously listed distributions. Se si sceglie di installare SQL Server in un sistema operativo non supportato, vedere la sezione Criteri di supporto di Criteri di supporto tecnico per Microsoft SQL Server per comprendere le implicazioni per il supporto.If you choose to install SQL Server on an unsupported operating system, please review the Support policy section of the Technical support policy for Microsoft SQL Server to understand the support implications.

Requisiti di sistemaSystem requirements

SQL Server ha i requisiti di sistema seguenti per Linux:SQL Server has the following system requirements for Linux:

MemoriaMemory 2 GB2 GB
File SystemFile System XFS o EXT4 (sono supportati altri file system, ad esempio BTRFS)XFS or EXT4 (other file systems, such as BTRFS, are unsupported)
Spazio su discoDisk space 6 GB6 GB
Velocità del processoreProcessor speed 2 GHz2 GHz
Core del processoreProcessor cores 2 core2 cores
Tipo di processoreProcessor type Solo compatibile con x64x64-compatible only

Se si usano condivisioni di rete NFS (Network File System, file system di rete) nell'ambiente di produzione, tenere presenti i requisiti di supporto seguenti:If you use Network File System (NFS) remote shares in production, note the following support requirements:

  • Usare NFS versione 4.2 o successiva.Use NFS version 4.2 or higher. Le versioni precedenti di NFS non supportano le funzionalità necessarie, ad esempio fallocate e la creazione di file sparse, comuni ai file system moderni.Older versions of NFS do not support required features, such as fallocate and sparse file creation, common to modern file systems.
  • Individuare solo le directory /var/opt/mssql nel montaggio NFS.Locate only the /var/opt/mssql directories on the NFS mount. Gli altri file, ad esempio i file binari di sistema di SQL Server, non sono supportati.Other files, such as the SQL Server system binaries, are not supported.
  • Assicurarsi che i client NFS usino l'opzione "nolock" per il montaggio della condivisione remota.Ensure that NFS clients use the 'nolock' option when mounting the remote share.

Configurare i repository di origineConfigure source repositories

Quando si installa o si aggiorna SQL Server, si ottiene la versione più recente di SQL Server dal repository Microsoft configurato.When you install or upgrade SQL Server, you get the latest version of SQL Server from your configured Microsoft repository. Le guide di avvio rapido usano il repository CU degli aggiornamenti cumulativi per SQL Server,The quickstarts use the Cumulative Update CU repository for SQL Server. ma è anche possibile configurare un repository GDR.But you can instead configure a GDR repository. Per altre informazioni sui repository e su come configurarli, vedere Configurare i repository per SQL Server in Linux.For more information on repositories and how to configure them, see Configure repositories for SQL Server on Linux.

Installare SQL ServerInstall SQL Server

È possibile installare SQL Server 2017 o SQL Server 2019 in Linux dalla riga di comando.You can install SQL Server 2017 or SQL Server 2019 on Linux from the command line. Per istruzioni dettagliate, vedere gli argomenti di avvio rapido seguenti:For step-by-step instructions, see one of the following quickstarts:

PiattaformaPlatform Argomenti di avvio rapido per l'installazioneInstallation quickstarts
Red Hat Enterprise Linux (RHEL)Red Hat Enterprise Linux (RHEL) 2017 | 20192017 | 2019
SUSE Linux Enterprise Server (SLES)SUSE Linux Enterprise Server (SLES) 2017 | 20192017 | 2019
UbuntuUbuntu 2017 | 20192017 | 2019
DockerDocker 2017 | 20192017 | 2019

È anche possibile eseguire SQL Server in Linux in una macchina virtuale di Azure.You can also run SQL Server on Linux in an Azure virtual machine. Per altre informazioni, vedere Provisioning di una macchina virtuale SQL in Azure.For more information, see Provision a SQL VM in Azure.

Dopo l'installazione, provare ad apportare ulteriori modifiche di configurazione per ottenere prestazioni ottimali.After installing, consider making additional configuration changes for optimal performance. Per altre informazioni, vedere Procedure consigliate per le prestazioni e linee guida per la configurazione per SQL Server in Linux.For more information, see Performance best practices and configuration guidelines for SQL Server on Linux.

Aggiornamento o upgrade di SQL ServerUpdate or Upgrade SQL Server

Per aggiornare il pacchetto mssql-server alla versione più recente, usare uno dei comandi seguenti in base alla piattaforma:To update the mssql-server package to the latest release, use one of the following commands based on your platform:

PiattaformaPlatform Comandi di aggiornamento del pacchettoPackage update command(s)
RHELRHEL sudo yum update mssql-server
SLESSLES sudo zypper update mssql-server
UbuntuUbuntu sudo apt-get update
sudo apt-get install mssql-server

Questi comandi scaricano il pacchetto più recente e sostituiscono i file binari presenti in /opt/mssql/.These commands download the newest package and replace the binaries located under /opt/mssql/. I database e i database di sistema generati dall'utente non sono interessati da questa operazione.The user generated databases and system databases are not affected by this operation.

Per eseguire l'upgrade di SQL Server, è prima necessario passare il repository configurato alla versione di SQL Server desiderata.To upgrade SQL Server, first change your configured repository to the desired version of SQL Server. Usare quindi lo stesso comando update per eseguire l'upgrade della versione di SQL Server.Then use the same update command to upgrade your version of SQL Server. Questa operazione è possibile solo se il percorso di upgrade tra i due repository è supportato.This is only possible if the upgrade path is supported between the two repositories.

Eseguire il rollback di SQL ServerRollback SQL Server

Per eseguire il rollback o effettuare il downgrade di SQL Server a una versione precedente, seguire questa procedura:To rollback or downgrade SQL Server to a previous release, use the following steps:

  1. Identificare il numero di versione per il pacchetto di SQL Server a cui si vuole effettuare il downgrade.Identify the version number for the SQL Server package you want to downgrade to. Per un elenco di numeri di pacchetto, vedere le Note sulla versione.For a list of package numbers, see the Release notes.

  2. Effettuare il downgrade a una versione precedente di SQL Server.Downgrade to a previous version of SQL Server. Nei comandi seguenti sostituire <version_number> con il numero di versione di SQL Server identificato nel primo passaggio.In the following commands, replace <version_number> with the SQL Server version number you identified in step one.

    PiattaformaPlatform Comandi di aggiornamento del pacchettoPackage update command(s)
    RHELRHEL sudo yum downgrade mssql-server-<version_number>.x86_64
    SLESSLES sudo zypper install --oldpackage mssql-server=<version_number>
    UbuntuUbuntu sudo apt-get install mssql-server=<version_number>
    sudo systemctl start mssql-server

Nota

È supportato solo il downgrade a una versione all'interno della stessa versione principale, ad esempio SQL Server 2019.It is only supported to downgrade to a release within the same major version, such as SQL Server 2019.

Controllare la versione di SQL Server installataCheck installed SQL Server version

Per verificare la versione corrente e l'edizione di SQL Server in Linux, seguire questa procedura:To verify your current version and edition of SQL Server on Linux, use the following procedure:

  1. Installare gli strumenti da riga di comando di SQL Server, se non sono già installati.If not already installed, install the SQL Server command-line tools.

  2. Usare sqlcmd per eseguire un comando Transact-SQL che visualizza la versione e l'edizione di SQL Server.Use sqlcmd to run a Transact-SQL command that displays your SQL Server version and edition.

    sqlcmd -S localhost -U SA -Q 'select @@VERSION'
    

Disinstallare SQL ServerUninstall SQL Server

Per rimuovere il pacchetto mssql-server in Linux, usare uno dei comandi seguenti in base alla piattaforma:To remove the mssql-server package on Linux, use one of the following commands based on your platform:

PiattaformaPlatform Comandi di rimozione dei pacchettiPackage removal command(s)
RHELRHEL sudo yum remove mssql-server
SLESSLES sudo zypper remove mssql-server
UbuntuUbuntu sudo apt-get remove mssql-server

La rimozione del pacchetto non comporta l'eliminazione dei file di database generati.Removing the package does not delete the generated database files. Per eliminare i file di database, usare il comando seguente:If you want to delete the database files, use the following command:

sudo rm -rf /var/opt/mssql/

Installazione automaticaUnattended install

È possibile eseguire un'installazione automatica nel modo seguente:You can perform an unattended installation in the following way:

  • Seguire i passaggi iniziali negli argomenti di avvio rapido per registrare i repositori e installare SQL Server.Follow the initial steps in the quickstarts to register the repositories and install SQL Server.
  • Quando si esegue mssql-conf setup, impostare le variabili di ambiente e usare l'opzione -n (nessun prompt).When you run mssql-conf setup, set environment variables and use the -n (no prompt) option.

L'esempio seguente configura l'edizione Developer di SQL Server con la variabile di ambiente MSSQL_PID.The following example configures the Developer edition of SQL Server with the MSSQL_PID environment variable. Accetta anche l'EULA (ACCEPT_EULA) e imposta la password dell'utente amministratore di sistema (MSSQL_SA_PASSWORD).It also accepts the EULA (ACCEPT_EULA) and sets the SA user password (MSSQL_SA_PASSWORD). Il parametro -n esegue un'installazione non richiesta in cui viene eseguito il pull dei valori di configurazione dalle variabili di ambiente.The -n parameter performs an unprompted installation where the configuration values are pulled from the environment variables.

sudo MSSQL_PID=Developer ACCEPT_EULA=Y MSSQL_SA_PASSWORD='<YourStrong!Passw0rd>' /opt/mssql/bin/mssql-conf -n setup

È anche possibile creare uno script per eseguire altre azioni.You can also create a script that performs other actions. È ad esempio possibile installare altri pacchetti di SQL Server.For example, you could install other SQL Server packages.

Per uno script di esempio più dettagliato, vedere gli esempi seguenti:For a more detailed sample script, see the following examples:

Installazione offlineOffline install

Se il computer Linux non ha accesso ai repository online usati negli argomenti di avvio rapido, è possibile scaricare direttamente i file del pacchetto.If your Linux machine does not have access to the online repositories used in the quick starts, you can download the package files directly. Questi pacchetti si trovano nel repository di Microsoft, https://packages.microsoft.com.These packages are located in the Microsoft repository, https://packages.microsoft.com.

Suggerimento

Se l'installazione è stata eseguita correttamente con i passaggi indicati negli argomenti di avvio rapido, non è necessario scaricare o installare manualmente i pacchetti di SQL Server.If you successfully installed with the steps in the quick starts, you do not need to download or manually install the SQL Server package(s). Questa sezione riguarda solo lo scenario offline.This section is only for the offline scenario.

  1. Scaricare il pacchetto del motore di database per la propria piattaforma.Download the database engine package for your platform. I collegamenti ai download dei pacchetti sono disponibili nella sezione dei dettagli del pacchetto delle Note sulla versione.Find package download links in the package details section of the Release Notes.

  2. Spostare il pacchetto scaricato nel computer Linux.Move the downloaded package to your Linux machine. Se è stato usato un computer diverso per scaricare i pacchetti, per spostarli nel computer Linux, è possibile usare il comando scp.If you used a different machine to download the packages, one way to move the packages to your Linux machine is with the scp command.

  3. Installare il pacchetto del motore di database.Install the database engine package. Usare uno dei comandi seguenti in base alla piattaforma.Use one of the following commands based on your platform. Sostituire il nome del file del pacchetto in questo esempio con il nome esatto di quello scaricato.Replace the package file name in this example with the exact name you downloaded.

    PiattaformaPlatform Comando di installazione del pacchettoPackage install command
    RHELRHEL sudo yum localinstall mssql-server_versionnumber.x86_64.rpm
    SLESSLES sudo zypper install mssql-server_versionnumber.x86_64.rpm
    UbuntuUbuntu sudo dpkg -i mssql-server_versionnumber_amd64.deb

    Nota

    È anche possibile installare i pacchetti RPM (RHEL e SLES) con il comando rpm -ivh, ma i comandi della tabella precedente installano automaticamente le dipendenze, se disponibili, dai repository approvati.You can also install the RPM packages (RHEL and SLES) with the rpm -ivh command, but the commands in the previous table automatically install dependencies if available from approved repositories.

  4. Risolvere le dipendenze mancanti: a questo punto potrebbero mancare alcune dipendenze.Resolve missing dependencies: You might have missing dependencies at this point. In caso contrario, è possibile ignorare questo passaggio.If not, you can skip this step. In Ubuntu, se si ha accesso a repository approvati contenenti tali dipendenze, la soluzione più semplice è usare il comando apt-get -f install.On Ubuntu, if you have access to approved repositories containing those dependencies, the easiest solution is to use the apt-get -f install command. Questo comando completa anche l'installazione di SQL Server.This command also completes the installation of SQL Server. Per controllare manualmente le dipendenze, usare i comandi seguenti:To manually inspect dependencies, use the following commands:

    PiattaformaPlatform Comando per elencare le dipendenzeList dependencies command
    RHELRHEL rpm -qpR mssql-server_versionnumber.x86_64.rpm
    SLESSLES rpm -qpR mssql-server_versionnumber.x86_64.rpm
    UbuntuUbuntu dpkg -I mssql-server_versionnumber_amd64.deb

    Dopo aver risolto le dipendenze mancanti, provare a installare di nuovo il pacchetto mssql-server.After resolving the missing dependencies, attempt to install the mssql-server package again.

  5. Completare l'installazione di SQL Server.Complete the SQL Server setup. Usare mssql-conf per completare l'installazione di SQL Server:Use mssql-conf to complete the SQL Server setup:

    sudo /opt/mssql/bin/mssql-conf setup
    

Licenze e prezziLicensing and pricing

SQL Server ha una licenza identica per Linux e Windows.SQL Server is licensed the same for Linux and Windows. Per altre informazioni sulle licenze e sui prezzi di SQL Server, vedere Come ottenere una licenza per SQL Server.For more information about SQL Server licensing and pricing, see How to license SQL Server.

Funzionalità facoltative di SQL ServerOptional SQL Server features

Dopo l'installazione, è anche possibile installare o abilitare le funzionalità facoltative di SQL Server.After installation, you can also install or enable optional SQL Server features.

info_tip SupportoGet help

Suggerimento

Per le risposte alle domande frequenti, vedere Domande frequenti su SQL Server in Linux.For answers to frequently asked questions, see the SQL Server on Linux FAQ.