Linux に SQL Server コマンドライン ツール sqlcmd および bcp をインストールする

適用対象:yesSQL Server (サポートされているすべてのバージョン) - Linux

次の手順で、コマンドライン ツール、Microsoft ODBC ドライバー、およびそれらの依存関係をインストールします。 mssql-tools パッケージには次のものが含まれます。

  • sqlcmd:コマンド ライン ユーティリティ
  • bcp:一括インポート エクスポート ユーティリティ

ご使用のプラットフォームに対応するツールをインストールします。

この記事では、コマンドライン ツールをインストールする方法について説明します。 sqlcmd または bcp の使用方法の例を参照するには、トピックの最後にあるリンクをご覧ください。

警告

sqlcmd と bcp は、x64 アーキテクチャ用の mssql-tools で入手できます。 arm64 と x64 の両方の環境に代わるものは、Linux、macOS、Windows、GitHub の go-sqlcmd でプレビュー段階です。

RHEL 8 にツールをインストールする

次の手順を使用して、Red Hat Enterprise Linux に mssql-tools をインストールします。

  1. スーパーユーザー モードにします。

    sudo su
    
  2. Microsoft Red Hat リポジトリ構成ファイルをダウンロードします。

    curl https://packages.microsoft.com/config/rhel/8/prod.repo > /etc/yum.repos.d/msprod.repo
    
  3. スーパーユーザー モードを終了します。

    exit
    
  4. 旧版の mssql-tools がインストールされている場合、古い unixODBC パッケージはすべて削除してください。

    sudo yum remove mssql-tools unixODBC-utf16-devel
    
  5. 次のコマンドを実行し、unixODBC 開発者パッケージと共に mssql-tools をインストールします。

    sudo yum install mssql-tools unixODBC-devel
    

    注意

    最新バージョンの mssql-tools に更新するには、次のコマンドを実行します。

    sudo yum check-update
    sudo yum update mssql-tools
    
  6. 省略可能:bash シェルで PATH 環境変数に /opt/mssql-tools/bin/ を追加します。

    ログイン セッション用に bash シェルから sqlcmd/bcp にアクセスできるようにするには、次のコマンドで ~/.bash_profile ファイルの PATH を変更します。

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

    対話型/非ログイン セッション用に bash シェルから sqlcmd/bcp にアクセスできるようにするには、次のコマンドで ~/.bashrc ファイルの PATH を変更します。

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

Ubuntu 20.04 にツールをインストールする

次の手順を使用して、Ubuntu に mssql-tools をインストールします。

注意

  • Ubuntu 18.04 は SQL Server 2019 CU3 以降でサポートされています。
  • Ubuntu 20.04 は SQL Server 2019 CU10 以降でサポートされています。
  • Ubuntu 16.04 または Ubuntu 18.04 を使用している場合は、以下の手順 2 のリポジトリ パスを /ubuntu/20.04 から /ubuntu/16.04 または /ubuntu/18.04 に変更します。
  1. パブリック リポジトリの GPG キーをインポートします。

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
    
  2. Microsoft Ubuntu リポジトリを登録します。

    curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
    
  3. ソース一覧を更新し、unixODBC 開発者パッケージを使用してインストール コマンドを実行します。

    sudo apt-get update 
    sudo apt-get install mssql-tools unixodbc-dev
    

    注意

    最新バージョンの mssql-tools に更新するには、次のコマンドを実行します。

    sudo apt-get update 
    sudo apt-get install mssql-tools 
    
  4. 省略可能:bash シェルで PATH 環境変数に /opt/mssql-tools/bin/ を追加します。

    ログイン セッション用に bash シェルから sqlcmd/bcp にアクセスできるようにするには、次のコマンドで ~/.bash_profile ファイルの PATH を変更します。

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

    対話型/非ログイン セッション用に bash シェルから sqlcmd/bcp にアクセスできるようにするには、次のコマンドで ~/.bashrc ファイルの PATH を変更します。

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

SLES 12 にツールをインストールする

次の手順を使用して、SUSE Linux Enterprise Server に mssql-tools をインストールします。

  1. Zypper に Microsoft SQL Server リポジトリを追加します。

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/prod.repo 
    sudo zypper --gpg-auto-import-keys refresh
    
  2. unixODBC 開発者パッケージと共に mssql-tools をインストールします。

    sudo zypper install mssql-tools unixODBC-devel
    

    注意

    最新バージョンの mssql-tools に更新するには、次のコマンドを実行します。

    sudo zypper refresh
    sudo zypper update mssql-tools
    
  3. 省略可能:bash シェルで PATH 環境変数に /opt/mssql-tools/bin/ を追加します。

    ログイン セッション用に bash シェルから sqlcmd/bcp にアクセスできるようにするには、次のコマンドで ~/.bash_profile ファイルの PATH を変更します。

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

    対話型/非ログイン セッション用に bash シェルから sqlcmd/bcp にアクセスできるようにするには、次のコマンドで ~/.bashrc ファイルの PATH を変更します。

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

macOS にツールをインストールする

sqlcmdbcp のプレビューが macOS で使用できるようになりました。 詳しくは、お知らせをご覧ください。

" Homebrew をインストールします (まだインストールしていない場合)。 "

  • /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Mac El Capitan および Sierra のツールをインストールするには、次のコマンドを使用します。

# 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-tools
#for silent install: 
#HOMEBREW_NO_ENV_FILTERING=1 ACCEPT_EULA=y brew install mssql-tools

Docker

Docker コンテナー内で SQL Server を実行する場合、SQL Server のコマンドライン ツールは SQL Server Linux コンテナー イメージに既に含まれています。 対話型の Bash シェルで実行中のコンテナーにアタッチする場合は、ツールをローカルで実行できます。

SQL Server コマンド ライン ツールを使用してコンテナーを作成する場合は、インストール コマンドに ACCEPT_EULA=Y を追加して、イメージの作成を中断せず、EULA をサイレント モードで受け入れることをお勧めします。 Ubuntu ベースのイメージへのインストールの一部としての最終的なコマンドの例を次に示します。

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

オフライン インストール

Linux マシンが前のセクションで使われたオンライン リポジトリにアクセスできない場合は、パッケージ ファイルを直接ダウンロードできます。 これらのパッケージは、Microsoft リポジトリ (https://packages.microsoft.com) にあります。

ヒント

前のセクションの手順で正常にインストールした場合は、次のパッケージをダウンロードしたり手動でインストールする必要はありません。 これは、オフライン シナリオのみです。

  1. 最初に、ご使用の Linux ディストリビューション用の mssql-tools パッケージを見つけてコピーします。

    Linux ディストリビューション mssql-tools パッケージの場所
    Red Hat https://packages.microsoft.com/rhel/7.3/prod
    SLES https://packages.microsoft.com/sles/12/prod
    Ubuntu 20.04 https://packages.microsoft.com/ubuntu/20.04/prod/pool/main/m/mssql-tools
  2. また、msodbcsql.h パッケージも見つけてコピーします。これは依存関係です。 msodbcsql パッケージは、unixODBC-devel (Red Hat and SLES) または unixodbc-dev (Ubuntu) にも依存しています。 msodbcsql パッケージの場所を次の表に示します。

    Linux ディストリビューション ODBC パッケージの場所
    Red Hat https://packages.microsoft.com/rhel/8/prod
    SLES https://packages.microsoft.com/sles/12/prod
    Ubuntu 20.04 msodbcsql
    unixodbc-dev
  3. ダウンロードしたパッケージを Linux マシンに移動します。 別のコンピューターを使用してパッケージをダウンロードした場合、パッケージをお使いの Linux コンピューターに移動する 1 つの方法は scp コマンドを使用することです。

  4. パッケージをインストールしますmssql-tools および msodbc パッケージをインストールします。 依存関係のエラーが発生した場合は無視して次の手順に進みます。

    プラットフォーム パッケージのインストール コマンド
    Red Hat sudo yum localinstall msodbcsql-<version>.rpm
    sudo yum localinstall mssql-tools-<version>.rpm
    SLES sudo zypper install msodbcsql-<version>.rpm
    sudo zypper install mssql-tools-<version>.rpm
    Ubuntu sudo dpkg -i msodbcsql_<version>.deb
    sudo dpkg -i mssql-tools_<version>.deb
  5. 不足している依存関係を解決します。この時点で、依存関係が不足している場合があります。 そうでない場合は、この手順は省略できます。 場合によっては、それらの依存関係を手動で見つけてインストールする必要があります。

    RPM パッケージでは、次のコマンドを使用して必要な依存関係を調べることができます。

    rpm -qpR msodbcsql-<version>.rpm
    rpm -qpR mssql-tools-<version>.rpm
    

    Debian パッケージでは、それらの依存関係を含む承認されたリポジトリにアクセスできる場合は、apt-get コマンドを使用することが最も簡単な解決方法です。

    sudo apt-get -f install
    

    注意

    このコマンドによって、SQL Server パッケージのインストールも完了します。

    ご使用の Debian パッケージでこの方法がうまく行かない場合は、次のコマンドを使用して必要な依存関係を調べることができます。

    dpkg -I msodbcsql_<version>_amd64.deb | grep "Depends:"
    dpkg -I mssql-tools_<version>_amd64.deb | grep "Depends:"
    

次のステップ

sqlcmd を使用して SQL Server に接続してデータベースを作成する方法の例については、次のクイックスタートのいずれかをご覧ください。

bcp を使用して、データの一括インポートやエクスポートを行う方法の例については、「SQL Server on Linux にデータを一括コピーする」をご覧ください。