Avvio rapido: Installare SQL Server e creare un database in SUSE Linux Enterprise Server

Si applica a:SQL Server - Linux

In questa guida di avvio rapido si installerà SQL Server 2017 (14.x) in SUSE Linux Enterprise Server (SLES) v12. Sarà quindi possibile connettersi con sqlcmd per creare il primo database ed eseguire query.

Per altre informazioni sulle piattaforme supportate, vedere Note sulla versione per SQL Server 2017 in Linux.

In questa guida di avvio rapido si installerà SQL Server 2019 (15.x) in SUSE Linux Enterprise Server (SLES) v15 (SP3). Sarà quindi possibile connettersi con sqlcmd per creare il primo database ed eseguire query.

Per altre informazioni sulle piattaforme supportate, vedere Note sulla versione per SQL Server 2019 in Linux.

In questa guida di avvio rapido si installerà SQL Server 2022 (16.x) in SUSE Linux Enterprise Server (SLES) v15 (SP3). Sarà quindi possibile connettersi con sqlcmd per creare il primo database ed eseguire query.

Per altre informazioni sulle piattaforme supportate, vedere Note sulla versione per SQL Server 2022 in Linux.

Suggerimento

Questa esercitazione richiede l'input dell'utente e una connessione Internet. Se ti interessano le procedure di installazione automatica o offline, vedi Linee guida per l'installazione di SQL Server in Linux.

Prerequisiti

È necessario un computer SLES v12 SP5 con almeno 2 GB di memoria. Il file system deve essere XFS o EXT4. Altri file system, come BTRFS, non sono supportati.

È necessario un computer SLES v15 (SP1 - SP4) con almeno 2 GB di memoria. Il file system deve essere XFS o EXT4. Altri file system, come BTRFS, non sono supportati.

È necessario un computer SLES v15 (SP1 - SP4) con almeno 2 GB di memoria. Il file system deve essere XFS o EXT4. Altri file system, come BTRFS, non sono supportati.

Per installare SUSE Linux Enterprise Server nel computer in uso, accedere a https://www.suse.com/products/server. È anche possibile creare macchine virtuali SLES in Azure. Vedere Creare e gestire VM Linux con l'interfaccia della riga di comando di Azure e usare --image SLES nella chiamata a az vm create.

Se in precedenza è stata installata una versione CTP (Community Technology Preview) o una versione finale candidata (RC, Release Candidate) di SQL Server, è necessario rimuovere il repository precedente prima di seguire questa procedura. Per altre informazioni, vedere Configurare i repository per l'installazione e l'aggiornamento di SQL Server in Linux.

Nota

Attualmente il sottosistema Windows per Linux per Windows 10 o Windows 11 non è supportato come destinazione dell'installazione.

Per altri requisiti di sistema, vedere Requisiti di sistema per SQL Server su Linux.

Installare SQL Server

Per configurare SQL Server in SLES, eseguire i comandi seguenti in un terminale per installare il pacchetto mssql-server:

  1. Scaricare il file di configurazione del repository SQL Server 2017 (14.x) per SLES:

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/mssql-server-2017.repo
    

    Suggerimento

    Per installare una versione diversa di SQL Server, vedi le versioni di questo articolo relative a SQL Server 2019 (15.x) o SQL Server 2022 (16.x).

  2. Aggiornare i repository.

    sudo zypper --gpg-auto-import-keys refresh
    

    Per assicurarsi che la chiave di firma del pacchetto Microsoft sia installata sul sistema, è possibile importarla usando il comando seguente:

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. Prima di installare SQL Server e dopo aver registrato e attivato SUSE Linux Enterprise Server su SUSE Customer Center, è necessario attivare il modulo Applicazioni desktop e il modulo Strumenti di sviluppo. Questi moduli sono necessari per alcune delle dipendenze dei pacchetti di SQL Server.

  4. A questo punto puoi installare SQL Server. Eseguire i comandi seguenti per installare SQL Server:

    sudo zypper install -y mssql-server
    
  5. Al termine dell'installazione del pacchetto, esegui mssql-conf setup e segui le istruzioni per impostare la password dell'amministratore di sistema e scegli l'edizione. Occorre ricordare che le edizioni di SQL Server seguenti sono concesse in licenza gratuitamente: Evaluation, Developer ed Express.

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

    Ricordarsi di specificare una password complessa per l'account SA. È necessaria una lunghezza minima di 8 caratteri, tra cui lettere maiuscole e minuscole, cifre in base 10 e/o simboli non alfanumerici.

  6. Al termine della configurazione, verificare che il servizio sia in esecuzione:

    systemctl status mssql-server
    
  7. Se si prevede di connettersi in modalità remota, potrebbe essere necessario aprire anche la porta TCP di SQL Server (per impostazione predefinita, la 1433) sul firewall. Se usi il firewall SUSE, è necessario modificare il file di configurazione /etc/sysconfig/SuSEfirewall2. Modifica la voce FW_SERVICES_EXT_TCP in modo che includa il numero di porta di SQL Server.

    FW_SERVICES_EXT_TCP="1433"
    

A questo punto, SQL Server è in esecuzione nel computer SLES ed è pronto per l'uso.

  1. Scaricare il file di configurazione del repository SQL Server 2019 (15.x) per SLES:

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/15/mssql-server-2019.repo
    

    Suggerimento

    Per installare una versione diversa di SQL Server, vedi le versioni di questo articolo relative a SQL Server 2017 (14.x) o SQL Server 2022 (16.x).

  2. Aggiornare i repository.

    sudo zypper --gpg-auto-import-keys refresh
    

    Per assicurarsi che la chiave di firma del pacchetto Microsoft sia installata sul sistema, è possibile importarla usando il comando seguente:

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. Prima di installare SQL Server e dopo aver registrato e attivato SUSE Linux Enterprise Server su SUSE Customer Center, è necessario attivare il modulo Applicazioni desktop e il modulo Strumenti di sviluppo. Questi moduli sono necessari per alcune delle dipendenze dei pacchetti di SQL Server.

  4. A questo punto puoi installare SQL Server. Eseguire i comandi seguenti per installare SQL Server:

    sudo zypper install -y mssql-server
    
  5. Al termine dell'installazione del pacchetto, esegui mssql-conf setup e segui le istruzioni per impostare la password dell'amministratore di sistema e scegli l'edizione. Occorre ricordare che le edizioni di SQL Server seguenti sono concesse in licenza gratuitamente: Evaluation, Developer ed Express.

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

    Ricordarsi di specificare una password complessa per l'account SA. È necessaria una lunghezza minima di 8 caratteri, tra cui lettere maiuscole e minuscole, cifre in base 10 e/o simboli non alfanumerici.

  6. Al termine della configurazione, verificare che il servizio sia in esecuzione:

    systemctl status mssql-server
    
  7. Se prevedi di connetterti in modalità remota, potrebbe essere necessario aprire la porta TCP di SQL Server (per impostazione predefinita, la 1433) sul firewall.

    Nota

    In SLES è possibile gestire il firewall usando firewalld ad esempio. Installalo usando sudo zypper install firewalld e quindi avvialo con sudo systemctl start firewalld. Aggiungi la regola del firewall con sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent e quindi ricarica il firewall con sudo firewall-cmd --reload per rendere effettive le impostazioni.

A questo punto, SQL Server è in esecuzione nel computer SLES ed è pronto per l'uso.

  1. Scarica il file di configurazione del repository SQL Server 2022 (16.x) per SLES:

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/15/mssql-server-2022.repo
    

    Suggerimento

    Per installare una versione diversa di SQL Server, vedi le versioni di questo articolo relative a SQL Server 2017 (14.x) o a SQL Server 2019 (15.x).

  2. Aggiornare i repository.

    sudo zypper --gpg-auto-import-keys refresh
    

    Per assicurarsi che la chiave di firma del pacchetto Microsoft sia installata sul sistema, è possibile importarla usando il comando seguente:

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. Prima di installare SQL Server e dopo aver registrato e attivato SUSE Linux Enterprise Server su SUSE Customer Center, è necessario attivare il modulo Applicazioni desktop e il modulo Strumenti di sviluppo. Questi moduli sono necessari per alcune delle dipendenze dei pacchetti di SQL Server.

  4. A questo punto puoi installare SQL Server. Eseguire i comandi seguenti per installare SQL Server:

    sudo zypper install -y mssql-server
    
  5. Al termine dell'installazione del pacchetto, esegui mssql-conf setup e segui le istruzioni per impostare la password dell'amministratore di sistema e scegli l'edizione. Occorre ricordare che le edizioni di SQL Server seguenti sono concesse in licenza gratuitamente: Evaluation, Developer ed Express.

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

    Ricordarsi di specificare una password complessa per l'account SA. È necessaria una lunghezza minima di 8 caratteri, tra cui lettere maiuscole e minuscole, cifre in base 10 e/o simboli non alfanumerici.

  6. Al termine della configurazione, verificare che il servizio sia in esecuzione:

    systemctl status mssql-server
    
  7. Se prevedi di connetterti in modalità remota, potrebbe essere necessario aprire la porta TCP di SQL Server (per impostazione predefinita, la 1433) sul firewall.

    Nota

    In SLES è possibile gestire il firewall usando firewalld ad esempio. Installalo usando sudo zypper install firewalld e quindi avvialo con sudo systemctl start firewalld. Aggiungi la regola del firewall con sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent e quindi ricarica il firewall con sudo firewall-cmd --reload per rendere effettive le impostazioni.

A questo punto, SQL Server è in esecuzione nel computer SLES ed è pronto per l'uso.

Disabilitare l'account sa come procedura consigliata

Quando ci si connette all'istanza di SQL Server usando l'account sa per la prima volta dopo l'installazione, è importante seguire questi passaggi e quindi disabilitare immediatamente l'account di accesso sa come procedura consigliata per la sicurezza.

  1. Crea un nuovo account di accesso e impostalo come membro del ruolo del server sysadmin.

  2. Connettiti all'istanza di SQL Server usando il nuovo account di accesso creato.

  3. Disabilita l'account sa, come consigliato per la procedura consigliata per la sicurezza.

Installare gli strumenti da riga di comando di SQL Server

Per creare un database, è necessario connettersi con uno strumento in grado di eseguire istruzioni Transact-SQL in SQL Server. La procedura seguente installa gli strumenti da riga di comando di SQL Server: utilità sqlcmd e utilità bcp.

Segui questa procedura per installare mssql-tools18 in SUSE Linux Enterprise Server.

  1. Importa la chiave di firma del pacchetto Microsoft.

    curl -O https://packages.microsoft.com/keys/microsoft.asc
    sudo rpm --import microsoft.asc
    
  2. Aggiungere il repository SQL Server a Zypper.

    • Per SLES 15, usa il comando seguente:

      sudo zypper ar https://packages.microsoft.com/config/sles/15/prod.repo
      
    • Per SLES 12, usa il comando seguente:

      sudo zypper ar https://packages.microsoft.com/config/sles/12/prod.repo
      
  3. Installa mssql-tools18 con il pacchetto per sviluppatori unixODBC.

    • Per SLES 15, usa il comando seguente:
    sudo zypper install -y mssql-tools18 unixODBC-devel glibc-locale-base
    
    • Per SLES 12, usa il comando seguente:
    sudo zypper install -y mssql-tools18 unixODBC-devel
    

    Nota

    Per effettuare l'aggiornamento alla versione più recente di mssql-tools18, esegui i comandi seguenti:

    sudo zypper refresh
    sudo zypper update mssql-tools18
    
  4. Facoltativo: aggiungi /opt/mssql-tools18/bin/ alla variabile di ambiente PATH in una shell Bash.

    Per rendere sqlcmdbcp accessibili dalla shell Bash per le sessioni di accesso, modificare PATH nel file ~/.bash_profile con il comando seguente:

    echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bash_profile
    

    Per rendere sqlcmd o bcp accessibile dalla shell Bash per le sessioni interattive/non di accesso, modificare PATH nel file ~/.bashrc con il comando seguente:

    echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc
    source ~/.bashrc
    

Eseguire la connessione in locale

Nella procedura seguente viene usato sqlcmd per connettersi in locale alla nuova istanza di SQL Server.

  1. Eseguire sqlcmd con i parametri per il nome di Server SQL (-S), il nome utente (-U) e la password (-P). In questa esercitazione la connessione viene eseguita in locale, pertanto il nome del server è localhost. Il nome utente è sa e la password è quella specificata per l'account SA durante la configurazione.

    sqlcmd -S localhost -U sa -P '<YourPassword>'
    

    Nota

    Le versioni più recenti di sqlcmd sono protette per impostazione predefinita. Per altre informazioni sulla crittografia della connessione, vedi utilità sqlcmd per Windows e Connessione con sqlcmd per Linux e macOS. Se la connessione non riesce, è possibile aggiungere l'opzione -No a sqlcmd per specificare che la crittografia è facoltativa, non obbligatoria.

    È possibile omettere la password nella riga di comando perché venga richiesto di immetterla.

    Se successivamente si decide di connettersi da remoto, specifica il nome del computer o l'indirizzo IP per il parametro -S e assicurati che la porta 1433 sia aperta nel firewall.

  2. Se la connessione viene eseguita correttamente, il prompt dei comandi sqlcmd sarà: 1>.

  3. Se si verifica un errore di connessione, provare a diagnosticare il problema dal messaggio di errore. Rivedere poi i consigli per la risoluzione dei problemi di connessione.

Creare i dati e recuperarli tramite query

Nelle sezioni seguenti viene descritto l'uso di sqlcmd per creare un nuovo database, aggiungere dati ed eseguire una query semplice.

Per altre informazioni sulla scrittura di istruzioni e query Transact-SQL, vedere Esercitazione: Scrittura di istruzioni Transact-SQL.

Creare un nuovo database

La seguente procedura consente di creare un nuovo database denominato TestDB.

  1. Dal prompt dei comandi sqlcmd incollare il comando seguente di Transact-SQL per creare un database di test:

    CREATE DATABASE TestDB;
    
  2. Nella riga successiva scrivere una query perché vengano restituiti i nomi di tutti database nel server:

    SELECT Name from sys.databases;
    
  3. I due comandi precedenti non sono stati eseguiti immediatamente. È necessario digitare GO in una nuova riga per eseguire i comandi precedenti:

    GO
    

Inserire i dati

Creare poi una nuova tabella dbo.Inventory e inserire due nuove righe.

  1. Dal prompt dei comandi sqlcmd spostare il contesto nel nuovo database TestDB:

    USE TestDB;
    
  2. Creare una nuova tabella denominata dbo.Inventory:

    CREATE TABLE dbo.Inventory (
        id INT,
        name NVARCHAR(50),
        quantity INT,
        PRIMARY KEY (id)
    );
    
  3. Inserire i dati nella nuova tabella:

    INSERT INTO dbo.Inventory VALUES (1, 'banana', 150);
    INSERT INTO dbo.Inventory VALUES (2, 'orange', 154);
    
  4. Digitare GO per eseguire i comandi precedenti:

    GO
    

Selezionare i dati

A questo punto, eseguire una query per restituire i dati dalla tabella dbo.Inventory.

  1. Dal prompt dei comandi sqlcmd immettere una query che restituisca le righe dalla tabella dbo.Inventory che ne contiene oltre 152:

    SELECT * FROM dbo.Inventory
    WHERE quantity > 152;
    
  2. Eseguire il comando seguente:

    GO
    

Uscire dal prompt dei comandi sqlcmd

Per terminare la sessione sqlcmd, digitare QUIT:

QUIT

Procedure consigliate per le prestazioni

Dopo l'installazione di SQL Server in Linux, esaminare le procedure consigliate per configurare Linux e SQL Server in modo da ottimizzare le prestazioni per gli scenari di produzione. Per altre informazioni, vedere Procedure consigliate per le prestazioni e linee guida per la configurazione per SQL Server in Linux.

Strumenti dati multipiattaforma

Oltre a sqlcmd, è possibile usare gli strumenti multipiattaforma seguenti per gestire SQL Server:

Strumento Descrizione
Azure Data Studio Utilità multipiattaforma di gestione di database basata su interfaccia utente grafica.
Visual Studio Code Editor di codice multipiattaforma basato su interfaccia utente grafica che esegue istruzioni Transact-SQL con l'estensione MSSQL.
PowerShell Core Strumento multipiattaforma di automazione e configurazione basato sui cmdlet.
mssql-cli Interfaccia della riga di comando multipiattaforma per l'esecuzione di comandi Transact-SQL.

Eseguire la connessione da Windows

Gli strumenti di SQL Server in Windows consentono di connettersi alle istanze di SQL Server in Linux nello stesso modo in cui si connettono a qualsiasi istanza remota di SQL Server.

Se si usa un computer Windows con possibilità di connessione al computer Linux, seguire la stessa procedura descritta in questo argomento da un prompt dei comandi di Windows che esegue sqlcmd. È necessario usare il nome o l'indirizzo IP del computer Linux di destinazione invece di localhost e assicurarsi che la porta TCP 1433 sia aperta nel computer di SQL Server. Nel caso di problemi di connessione da Windows, vedere i consigli per la risoluzione dei problemi di connessione.

Per altri strumenti che vengono eseguiti in Windows, ma si connettono a SQL Server in Linux, vedere:

Altri scenari di distribuzione

Per altri scenari di installazione, vedere le risorse seguenti:

Per le risposte alle domande frequenti, vedere Domande frequenti su SQL Server in Linux.

Contribuire alla documentazione di SQL

Il contenuto SQL può essere modificato. L'autore delle modifiche contribuirà a migliorare la documentazione e verrà accreditato come collaboratore alla realizzazione della pagina.

Per altre informazioni, vedere Come contribuire alla documentazione di SQL Server