Installare gli strumenti da riga di comando sqlcmd e bcp di SQL Server in Linux

Si applica a:SQL Server - Linux

I passaggi seguenti installano gli strumenti da riga di comando, i driver Microsoft ODBC e le relative dipendenze. Il pacchetto mssql-tools contiene:

  • sqlcmd: utilità di query dellpa riga di comando
  • bcp: utilità di importazione/esportazione in blocco

Installare gli strumenti per la piattaforma usata:

Questo articolo descrive come installare gli strumenti da riga di comando. Per esempi di come usare sqlcmd o bcp, vedere il Contenuto correlato alla fine di questo argomento.

Importante

sqlcmd e bcp sono disponibili in mssql-tools18 per le architetture x64 e arm64. Per un'alternativa moderna in Linux, macOS e Windows, vedere l'utilità go-sqlcmd.

Installare le utilità in Linux

Queste istruzioni sono relative all'installazione dei pacchetti Microsoft ODBC 18. Per le versioni precedenti, vedere Installare Microsoft ODBC Driver for SQL Server (Linux).

Seguire questa procedura per installare mssql-tools18 in Red Hat Enterprise Linux.

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

    • Per Red Hat 9, usare il comando seguente:

      curl https://packages.microsoft.com/config/rhel/9/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
    • Per Red Hat 8, usare il comando seguente:

      curl https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
    • Per Red Hat 7, usare il comando seguente:

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

    sudo yum remove mssql-tools unixODBC-utf16 unixODBC-utf16-devel
    
  3. Esegui i comandi seguenti per installare mssql-tools18 con il pacchetto per sviluppatori unixODBC.

    sudo yum install -y mssql-tools18 unixODBC-devel
    

    Nota

    Per effettuare l'aggiornamento all’ultima versione di mssql-tools, eseguire i comandi seguenti:

    sudo yum check-update
    sudo yum update mssql-tools18
    
  4. Facoltativo: aggiungere /opt/mssql-tools18/bin/ alla variabile di ambiente PATH in una shell Bash.

    Per rendere sqlcmd e bcp 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 e bcp accessibili 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
    

Installare le utilità in macOS

Installare Homebrew se non è già stato fatto:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Per installare gli strumenti per macOS El Capitan e versioni successive, usare i comandi seguenti:

# brew untap microsoft/mssql-preview if you installed the preview version
brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
brew install mssql-tools18

Installare le utilità in Docker

Se si esegue SQL Server in un contenitore Docker, gli strumenti da riga di comando di SQL Server sono già inclusi nell'immagine del contenitore Linux di SQL Server. Se ci si connette a un contenitore in esecuzione con una shell bash interattiva, è possibile eseguire gli strumenti in locale.

Se si sta creando un contenitore con le utilità da riga di comando di SQL Server, è consigliabile aggiungere ACCEPT_EULA=Y al comando di installazione per accettare in modo invisibile il contratto di licenza e non interrompere la creazione di immagini. Un comando finale di esempio nell'ambito dell'installazione in un'immagine basata su Ubuntu è:

sudo ACCEPT_EULA=Y apt-get install mssql-tools18 unixodbc-dev

Installazione offline

Se il computer Linux non dispone di accesso per i repository online usati nelle sezioni precedenti, è possibile scaricare direttamente i file del pacchetto. Questi pacchetti si trovano nel repository di Microsoft, https://packages.microsoft.com.

Suggerimento

Se l'installazione è stata eseguita correttamente con i passaggi indicati nelle sezioni precedenti, non è necessario scaricare o installare manualmente i seguenti pacchetti. Questa operazione riguarda solo lo scenario offline.

  1. Prima di tutto, individuare e copiare il pacchetto mssql-tools18 per la distribuzione di Linux: Per Red Hat 8.0, esso si trova in https://packages.microsoft.com/rhel/8/prod.

  2. Individuare e copiare anche il pacchetto msodbcsql18 che è una dipendenza. Il pacchetto msodbcsql18 ha anche una dipendenza da unixODBC-devel. Per Red Hat, il pacchetto msodbcsql18 si trova in https://packages.microsoft.com/rhel/8/prod.

  3. Spostare i pacchetti scaricati nel computer Linux. Se è stato usato un computer diverso per scaricare i pacchetti, per spostarli nel computer Linux, è possibile usare il comando scp.

  4. Installare le utilità e i pacchetti: installare i pacchetti mssql-tools18 e msodbc18. Se vengono visualizzati errori di dipendenza, ignorarli fino al passaggio successivo. Sostituire <version> con la versione corretta:

    sudo yum localinstall msodbcsql18-<version>.rpm
    sudo yum localinstall mssql-tools18-<version>.rpm
    
  5. Risolvere le dipendenze mancanti: a questo punto potrebbero esserci dipendenze mancanti. In caso contrario, è possibile ignorare questo passaggio. In alcuni casi, è necessario individuare e installare le dipendenze manualmente.

    È possibile esaminare le dipendenze necessarie con i comandi seguenti. Sostituire <version> con la versione corretta:

    rpm -qpR msodbcsql18-<version>.rpm
    rpm -qpR mssql-tools18-<version>.rpm
    

Per un esempio di come usare sqlcmd per connettersi a SQL Server e creare un database, vedere uno degli argomenti di avvio rapido seguenti:

Per un esempio di come usare bcp per importare ed esportare i dati in blocco, vedere Eseguire la copia bulk dei dati in 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