Установка программ командной строки SQL Server sqlcmd и bcp в LinuxInstall sqlcmd and bcp the SQL Server command-line tools on Linux

Область применения:  ДаSQL Server (только в Linux) НетБаза данных SQL Azure НетХранилище данных SQL AzureНетParallel Data Warehouse APPLIES TO: yesSQL Server (Linux only) noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Ниже приведены инструкции по установке программ командной строки, драйверов ODBC Майкрософт и их зависимостей.The following steps install the command-line tools, Microsoft ODBC drivers, and their dependencies. Пакет mssql-tools содержит следующие компоненты:The mssql-tools package contains:

  • sqlcmd — программа командной строки для выполнения запросов;sqlcmd: Command-line query utility.
  • bcp — служебная программа для массового импорта и экспорта.bcp: Bulk import-export utility.

Установите программы для своей платформы:Install the tools for your platform:

В этой статье описывается установка программ командной строки.This article describes how to install the command-line tools. Примеры использования sqlcmd или bcp можно найти по ссылкам в конце этой статьи.If you are looking for examples of how to use sqlcmd or bcp, see the links at the end of this topic.

Установка средств в RHEL 7Install tools on RHEL 7

Чтобы установить mssql-tools в Red Hat Enterprise Linux, выполните указанные ниже действия.Use the following steps to install the mssql-tools on Red Hat Enterprise Linux.

  1. Перейдите в режим суперпользователя.Enter superuser mode.

    sudo su
    
  2. Скачайте файл конфигурации репозитория Microsoft Red Hat.Download the Microsoft Red Hat repository configuration file.

    curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo
    
  3. Выйдите из режима суперпользователя.Exit superuser mode.

    exit
    
  4. Если установлена предыдущая версия mssql-tools, удалите все старые пакеты unixODBC.If you had a previous version of mssql-tools installed, remove any older unixODBC packages.

    sudo yum remove mssql-tools unixODBC-utf16-devel
    
  5. Чтобы установить mssql-tools с помощью пакета разработчика unixODBC, выполните приведенные ниже команды.Run the following commands to install mssql-tools with the unixODBC developer package.

    sudo yum install mssql-tools unixODBC-devel
    

    Примечание

    Чтобы произвести обновление до последней версии mssql-tools, выполните следующие команды:To update to the latest version of mssql-tools run the following commands:

    sudo yum check-update
    sudo yum update mssql-tools
    
  6. Необязательно: Добавьте путь /opt/mssql-tools/bin/ в переменную среды PATH в оболочке bash.Optional: Add /opt/mssql-tools/bin/ to your PATH environment variable in a bash shell.

    Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках сеансов входа в систему, измените переменную среды PATH в файле ~/.bash_profile с помощью следующей команды:To make sqlcmd/bcp accessible from the bash shell for login sessions, modify your PATH in the ~/.bash_profile file with the following command:

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

    Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках интерактивных сеансов и сеансов без входа в систему, измените переменную среды PATH в файле ~/.bashrc с помощью следующей команды:To make sqlcmd/bcp accessible from the bash shell for interactive/non-login sessions, modify the PATH in the ~/.bashrc file with the following command:

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

Установка средств в Ubuntu 16.04Install tools on Ubuntu 16.04

Чтобы установить mssql-tools в Ubuntu, выполните указанные ниже действия.Use the following steps to install the mssql-tools on Ubuntu.

  1. Импортируйте открытые ключи GPG из репозитория.Import the public repository GPG keys.

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
    
  2. Зарегистрируйте репозиторий Ubuntu для Майкрософт.Register the Microsoft Ubuntu repository.

    curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
    
  3. Обновите список источников и выполните команду установки с помощью пакета разработчика unixODBC.Update the sources list and run the installation command with the unixODBC developer package.

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

    Примечание

    Чтобы произвести обновление до последней версии mssql-tools, выполните следующие команды:To update to the latest version of mssql-tools run the following commands:

    sudo apt-get update 
    sudo apt-get install mssql-tools 
    
  4. Необязательно: Добавьте путь /opt/mssql-tools/bin/ в переменную среды PATH в оболочке bash.Optional: Add /opt/mssql-tools/bin/ to your PATH environment variable in a bash shell.

    Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках сеансов входа в систему, измените переменную среды PATH в файле ~/.bash_profile с помощью следующей команды:To make sqlcmd/bcp accessible from the bash shell for login sessions, modify your PATH in the ~/.bash_profile file with the following command:

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

    Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках интерактивных сеансов и сеансов без входа в систему, измените переменную среды PATH в файле ~/.bashrc с помощью следующей команды:To make sqlcmd/bcp accessible from the bash shell for interactive/non-login sessions, modify the PATH in the ~/.bashrc file with the following command:

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

Установка средств в SLES 12Install tools on SLES 12

Чтобы установить mssql-tools в SUSE Linux Enterprise Server, выполните указанные ниже действия.Use the following steps to install the mssql-tools on SUSE Linux Enterprise Server.

  1. Добавьте репозиторий Microsoft SQL Server в Zypper.Add the Microsoft SQL Server repository to Zypper.

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/prod.repo 
    sudo zypper --gpg-auto-import-keys refresh
    
  2. Установите mssql-tools с помощью пакета разработчика unixODBC.Install mssql-tools with the unixODBC developer package.

    sudo zypper install mssql-tools unixODBC-devel
    

    Примечание

    Чтобы произвести обновление до последней версии mssql-tools, выполните следующие команды:To update to the latest version of mssql-tools run the following commands:

    sudo zypper refresh
    sudo zypper update mssql-tools
    
  3. Необязательно: Добавьте путь /opt/mssql-tools/bin/ в переменную среды PATH в оболочке bash.Optional: Add /opt/mssql-tools/bin/ to your PATH environment variable in a bash shell.

    Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках сеансов входа в систему, измените переменную среды PATH в файле ~/.bash_profile с помощью следующей команды:To make sqlcmd/bcp accessible from the bash shell for login sessions, modify your PATH in the ~/.bash_profile file with the following command:

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

    Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках интерактивных сеансов и сеансов без входа в систему, измените переменную среды PATH в файле ~/.bashrc с помощью следующей команды:To make sqlcmd/bcp accessible from the bash shell for interactive/non-login sessions, modify the PATH in the ~/.bashrc file with the following command:

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

Установка средств в macOSInstall tools on macOS

В macOS доступна предварительная версия программ sqlcmd и bcp.A preview of sqlcmd and bcp is now available on macOS. Дополнительные сведения см. в объявлении о выпуске.For more information, see the announcement.

Установите программу Homebrew, если ее еще нет:Install Homebrew if you don't have it already:

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

Чтобы установить средства для Mac El Capitan и Sierra, используйте следующие команды:To install the tools for Mac El Capitan and Sierra, use the following commands:

# 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

DockerDocker

Если SQL Server выполняется в контейнере Docker, программы командной строки SQL Server уже включены в образ контейнера SQL Server в Linux.If you run SQL Server in a Docker container, the SQL Server command-line tools are already included in the SQL Server Linux container image. Если подключиться к запущенному контейнеру с помощью интерактивной оболочки bash, можно запускать программы локально.If you attach to a running container with an interactive bash shell, you can run the tools locally.

Автономная установкаOffline installation

Если компьютер Linux не имеет доступа к онлайн-хранилищам, которые используются в предыдущих разделах, вы можете загрузить файлы пакетов напрямую.If your Linux machine does not have access to the online repositories used in the previous sections, you can download the package files directly. Эти пакеты находятся в репозитории Майкрософт по адресу https://packages.microsoft.com.These packages are located in the Microsoft repository, https://packages.microsoft.com.

Совет

После успешного выполнения действий по установке, указанных в предыдущих разделах, загружать или вручную устанавливать указанные ниже пакеты не требуется.If you successfully installed with the steps in the previous sections, you do not need to download or manually install the package(s) below. Это нужно только для автономных сценариев.This is only for the offline scenario.

  1. Сначала найдите и скопируйте пакет mssql-tools для своего дистрибутива Linux:First, locate and copy the mssql-tools package for your Linux distribution:

    Дистрибутив LinuxLinux distribution Расположение пакета mssql-toolsmssql-tools package location
    Red HatRed Hat https://packages.microsoft.com/rhel/7.3/prod
    SLESSLES https://packages.microsoft.com/sles/12/prod
    Ubuntu 16.04Ubuntu 16.04 https://packages.microsoft.com/ubuntu/16.04/prod/pool/main/m/mssql-tools
  2. Кроме того, найдите и скопируйте пакет msodbcsql, который является зависимостью.Also locate and copy the msodbcsql package, which is a dependency. Пакет msodbcsql также имеет зависимость от unixODBC-devel (Red Hat и SLES) или от unixodbc-dev (Ubuntu).The msodbcsql package also has a dependency on either unixODBC-devel (Red Hat and SLES) or unixodbc-dev (Ubuntu). Расположение пакетов msodbcsql приведено в следующей таблице:The location of the msodbcsql packages are listed in the following table:

    Дистрибутив LinuxLinux distribution Расположение пакетов ODBCODBC packages location
    Red HatRed Hat https://packages.microsoft.com/rhel/7.3/prod
    SLESSLES https://packages.microsoft.com/sles/12/prod
    Ubuntu 16.04Ubuntu 16.04 msodbcsqlmsodbcsql
    unixodbc-devunixodbc-dev
  3. Переместите скачанные пакеты на компьютер Linux.Move the downloaded packages to your Linux machine. Если для скачивания пакетов вы использовали другой компьютер, переместить пакеты на компьютер Linux можно с помощью команды scp.If you used a different machine to download the packages, one way to move the packages to your Linux machine is with the scp command.

  4. Установите пакеты. Установите пакеты mssql-tools и msodbc.Install the and packages: Install the mssql-tools and msodbc packages. Если возникают ошибки зависимостей, игнорируйте их до следующего шага.If you get any dependency errors, ignore them until the next step.

    ПлатформаPlatform Команды для установки пакетовPackage install commands
    Red HatRed Hat sudo yum localinstall msodbcsql-<version>.rpm
    sudo yum localinstall mssql-tools-<version>.rpm
    SLESSLES sudo zypper install msodbcsql-<version>.rpm
    sudo zypper install mssql-tools-<version>.rpm
    UbuntuUbuntu sudo dpkg -i msodbcsql_<version>.deb
    sudo dpkg -i mssql-tools_<version>.deb
  5. Разрешите отсутствующие зависимости. На этом этапе зависимости могут отсутствовать.Resolve missing dependencies: You might have missing dependencies at this point. Если это не так, пропустите этот шаг.If not, you can skip this step. В некоторых случаях необходимо найти и установить зависимости вручную.In some cases, you must manually locate and install these dependencies.

    Для пакетов RPM проверить требуемые зависимости можно с помощью следующих команд:For RPM packages, you can inspect the required dependencies with the following commands:

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

    Для пакетов Debian, если у вас есть доступ к утвержденным репозиториям, содержащим эти зависимости, самым простым решением является использование команды apt-get.For Debian packages, if you have access to approved repositories containing those dependencies, the easiest solution is to use the apt-get command:

    sudo apt-get -f install
    

    Примечание

    Эта команда также завершает установку пакетов SQL Server.This command completes the installation of the SQL Server packages as well.

    Если эта команда не работает для пакета Debian, проверить требуемые зависимости можно с помощью следующих команд:If this does not work for your Debian package, you can inspect the required dependencies with the following commands:

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

Дальнейшие действияNext steps

Пример использования sqlcmd для подключения к SQL Server и создания базы данных см. в одном из следующих кратких руководств:For an example of how to use sqlcmd to connect to SQL Server and create a database, see one of the following quickstarts:

Пример использования bcp для массового импорта и экспорта данных см. в статье Массовое копирование данных в SQL Server на Linux.For an example of how to use bcp to bulk import and export data, see Bulk copy data to SQL Server on Linux.