Avvio rapido: Installare SQL Server e creare un database in Red Hat

Si applica a:yes SQL Server (tutte le versioni supportate) - Linux

In questa guida introduttiva si installa SQL Server 2017 (14.x) in Red Hat Enterprise Linux (RHEL) 8.x. È 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 introduttiva si installa SQL Server 2019 (15.x) in Red Hat Enterprise Linux (RHEL) 8.x. È 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 introduttiva si installa SQL Server 2022 (16.x) Preview in Red Hat Enterprise Linux (RHEL) 8.x. È 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 (16.x) Preview in Linux.

Suggerimento

Questa esercitazione richiede l'input dell'utente e una connessione Internet. Se si è interessati alle procedure di installazione automatica o offline, vedere Linee guida per l'installazione di SQL Server in Linux.

Prerequisiti

È necessario disporre di un computer RHEL 8.0 - 8.5 con almeno 2 GB di memoria.

Per installare Red Hat Enterprise Linux nel computer in uso, passare a https://access.redhat.com/products/red-hat-enterprise-linux/evaluation. È anche possibile creare macchine virtuali RHEL in Azure. Vedere Creare e gestire VM Linux con l'interfaccia della riga di comando di Azure e usare --image RHEL nella chiamata a az vm create.

Se in precedenza è stato installato un Community Technology Preview (CTP) o Release Candidate (RC) di SQL Server, è prima necessario rimuovere il repository precedente prima di seguire questa procedura. Per altre informazioni, vedere Configurare i repository Linux per SQL Server.

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

Installare SQL Server

I comandi seguenti per l'installazione di SQL Server puntano al repository RHEL 8. RHEL 8 non viene preinstallato con python2, che è richiesto da SQL Server. Prima di iniziare i passaggi di installazione SQL Server, eseguire il comando e verificare che python2 sia selezionato come interprete:

sudo alternatives --config python
# If not configured, install python2 and openssl10 using the following commands: 
sudo yum install python2
sudo yum install compat-openssl10
# Configure python2 as the default interpreter using this command: 
sudo alternatives --config python

Per altre informazioni, vedere il blog seguente sull'installazione python2 e la configurazione come interprete predefinito: https://www.redhat.com/en/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.

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

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

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2017.repo
    

    Suggerimento

    Per installare una versione diversa di SQL Server, vedere le versioni di anteprima SQL Server 2019 (15.x) o SQL Server 2022 (16.x)Preview di questo articolo.

  2. Eseguire il comando seguente per installare SQL Server:

    sudo yum install -y mssql-server
    
  3. Al termine dell'installazione del pacchetto, eseguire mssql-conf setup usando il percorso completo e seguire le istruzioni per impostare la password SA e scegliere l'edizione. Come promemoria, le seguenti SQL Server edizioni sono liberamente concesse in licenza: Valutazione, Sviluppatore e 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 base-10 e/o simboli non alfanumerici.

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

    systemctl status mssql-server
    
  5. Per consentire connessioni remote, aprire la porta SQL Server nel firewall RHEL. La porta di SQL Server predefinita è TCP 1433. Se si usa FirewallD per il firewall, è possibile usare i comandi seguenti:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

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

I comandi seguenti per l'installazione di SQL Server puntano al repository RHEL 8. RHEL 8 non viene preinstallato con python2, che è richiesto da SQL Server. Prima di iniziare i passaggi di installazione SQL Server, eseguire il comando e verificare che python2 sia selezionato come interprete:

sudo alternatives --config python
# If not configured, install python2 and openssl10 using the following commands: 
sudo yum install python2
sudo yum install compat-openssl10
# Configure python2 as the default interpreter using this command: 
sudo alternatives --config python

Per altre informazioni, vedere il blog seguente sull'installazione python2 e la configurazione come interprete predefinito: https://www.redhat.com/en/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.

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

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

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
    

    Suggerimento

    Se si vuole installare una versione diversa di SQL Server, vedere le versioni di anteprima SQL Server 2017 (14.x) o SQL Server 2022 (16.x)Preview di questo articolo.

  2. Eseguire il comando seguente per installare SQL Server:

    sudo yum install -y mssql-server
    
  3. Al termine dell'installazione del pacchetto, eseguire mssql-conf setup usando il percorso completo e seguire le istruzioni per impostare la password SA e scegliere l'edizione. Come promemoria, le seguenti SQL Server edizioni sono liberamente concesse in licenza: Valutazione, Sviluppatore e 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 base-10 e/o simboli non alfanumerici.

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

    systemctl status mssql-server
    
  5. Per consentire connessioni remote, aprire la porta SQL Server nel firewall RHEL. La porta di SQL Server predefinita è TCP 1433. Se si usa FirewallD per il firewall, è possibile usare i comandi seguenti:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

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

I comandi seguenti per l'installazione di SQL Server puntano al repository RHEL 8.

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

  1. Scaricare il file di configurazione del repository Red Hat preview SQL Server 2022 (16.x):

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-preview.repo
    

    Suggerimento

    Se si vuole installare una versione diversa di SQL Server, vedere le versioni SQL Server 2017 (14.x) o SQL Server 2019 (15.x) di questo articolo.

  2. Eseguire il comando seguente per installare SQL Server:

    sudo yum install -y mssql-server
    
  3. Al termine dell'installazione del pacchetto, eseguire mssql-conf setup usando il percorso completo e seguire le istruzioni per impostare la password SA e scegliere l'edizione. Come promemoria, le seguenti SQL Server edizioni sono liberamente concesse in licenza: Valutazione, Sviluppatore e 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 base-10 e/o simboli non alfanumerici.

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

    systemctl status mssql-server
    
  5. Per consentire connessioni remote, aprire la porta SQL Server nel firewall RHEL. La porta di SQL Server predefinita è TCP 1433. Se si usa FirewallD per il firewall, è possibile usare i comandi seguenti:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

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

Installare gli strumenti da riga di comando di SQL Server

Per creare un database, è necessario connettersi a uno strumento che può eseguire istruzioni Transact-SQL in SQL Server. La procedura seguente installa gli strumenti da riga di comando di SQL Server sqlcmd e bcp.

  1. Scaricare il file di configurazione del repository Red Hat.

    sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/8/prod.repo
    
  2. Se era già stata installata una versione precedente di mssql-tools, rimuovere tutti i pacchetti unixODBC meno recenti.

    sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
    
  3. Eseguire i comandi seguenti per installare mssql-tools con il pacchetto per sviluppatori unixODBC. Per altre informazioni, vedere Installare Microsoft ODBC Driver for SQL Server (Linux).

    sudo yum install -y mssql-tools unixODBC-devel
    
  4. Per praticità, aggiungere /opt/mssql-tools/bin/ alla PATH variabile di ambiente per rendere sqlcmd o bcp accessibile dalla shell bash .

    Per le sessioni interattive, modificare la PATH variabile di ambiente nel ~/.bash_profile file con il comando seguente:

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

    Per sessioni non interattive, modificare la PATH variabile di ambiente nel ~/.bashrc file con il comando seguente:

    echo 'export PATH="$PATH:/opt/mssql-tools/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 parametri per il nome SQL Server (), il nome utente (-S) e la password (-U-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>'
    

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

    Se successivamente si decide di connettersi in remoto, specificare il nome del computer o l'indirizzo IP per il parametro e assicurarsi che la -S 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
    );
    
  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.

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 del computer Linux di destinazione o l'indirizzo IP anziché localhoste assicurarsi che la porta TCP 1433 sia aperta nel computer 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.

Passaggi successivi