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

適用対象:SQL Server - Linux

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

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

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

この記事では、コマンドライン ツールをインストールする方法について説明します。 sqlcmd または bcp の使用方法の例をお探しの場合は、この記事の最後にある関連関連コンテンツを参照してください。

重要

sqlcmdbcp は、 x64arm64 アーキテクチャ用の mssql-tools18 で入手できます。 Linux、macOS、Windows の最新の代替手段については、「go-sqlcmd ユーティリティ」をご覧ください。

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

これらの手順は、Microsoft ODBC 18 パッケージをインストールするための手順です。 前のバージョンについては、「Microsoft ODBC Driver for SQL Server をインストールする (Linux)」をご覧ください。

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

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

    • Red Hat 9 の場合は、次のコマンドを使用します。

      curl https://packages.microsoft.com/config/rhel/9/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
    • Red Hat 8 の場合は、次のコマンドを使用します:

      curl https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
    • Red Hat 7 の場合は、次のコマンドを使用します:

      curl https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
  2. 旧版の mssql-tools がインストールされている場合、古い unixODBC パッケージはすべて削除してください。

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

    sudo yum install -y mssql-tools18 unixODBC-devel
    

    注意

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

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

    ログイン セッション用に bash シェルから sqlcmdbcp にアクセスできるようにするには、次のコマンドで ~/.bash_profilePATH を変更します:

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

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

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

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

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

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

macOS El Capitan 以降のバージョンのツールをインストールするには、次のコマンドを実行します:

# 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

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-tools18 unixodbc-dev

オフライン インストール

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

ヒント

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

  1. 最初に、ご使用の Linux ディストリビューション用の mssql-tools18 パッケージを見つけてコピーします。 Red Hat 8.0 の場合、これは https://packages.microsoft.com/rhel/8/prod にあります。

  2. また、msodbcsql18 パッケージも見つけてコピーします。これは依存関係です。 msodbcsql18 パッケージも、unixODBC-devel に依存しています。 Red Hat の場合、msodbcsql18 パッケージは https://packages.microsoft.com/rhel/8/prod にあります。

  3. ダウンロードしたパッケージを Linux マシンに移動します。 別のコンピューターを使用してパッケージをダウンロードした場合、パッケージをお使いの Linux コンピューターに移動する 1 つの方法は scp コマンドを使用することです。

  4. パッケージのインストール: mssql-tools18 および msodbc18 パッケージをインストールします。 依存関係のエラーが発生した場合は無視して次の手順に進みます。 <version> を正しいバージョンと置き換えます。

    sudo yum localinstall msodbcsql18-<version>.rpm
    sudo yum localinstall mssql-tools18-<version>.rpm
    
  5. 不足している依存関係を解決します。この時点で、依存関係が不足している場合があります。 そうでない場合は、この手順は省略できます。 場合によっては、それらの依存関係を手動で見つけてインストールする必要があります。

    次のコマンドを使用して必要な依存関係を調べることができます。 <version> を正しいバージョンと置き換えます。

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

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

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

SQL ドキュメントへの投稿

SQL コンテンツを自分で編集できることはご存じですか。 これにより、ドキュメントが改善されるだけでなく、ページの共同作成者としてもクレジットされます。

詳細については、「SQL Server のドキュメントに投稿する方法」を参照してください。