Клиент mssql для linux

Installing and Using mssql-cli on Linux for SQL Server

Problem

Microsoft recently released an interactive, cross-platform command line query tool called mssql-cli. My previous tip new interactive command line tool mssqlcli for SQL Server, shows the mssql-cli installation and features on the Windows OS. In this tip, we will see how to install mssql-cli on Linux Ubuntu.

Solution

Microsoft released mssql-cli tool under the OSF (Open Source Foundation) BSD 3 license. The tool is officially available on the below platforms:

  • Windows (x64)
  • Windows (x86)
  • macOS 10.12+
  • Ubuntu 17.04
  • Ubuntu 16.04
  • Ubuntu 14.04
  • Debian 8.7+
  • Debian 9
  • CentOS 7
  • Red Hat Enterprise Linux 7
  • OpenSUSE 42.2+
  • SUSE Enterprise Linux (SLES) 12
  • Fedora 25
  • Fedora 26

Mssql-cli improves the interactive CLI experience for T-SQL and includes support for SQL Server, MySQL, and PostgreSQL. This tool provides great enhancements over SQLCMD due to its features and use. This works great for developers, administrators, and DevOps specialists.

Some of the important features are:

  • Auto-completion
  • T-SQL IntelliSense
  • Syntax highlighting
  • Query history
  • Multi-line queries
  • Formatting for query results, including Vertical Format

Mssql-cli installation on Ubuntu Linux

Mssql-cli installation on Ubuntu depends upon the OS version. In this demo, my operating system version is Ubuntu 16.04.

You can check and verify the OS version using the below methods

Method:1

  • Open the terminal.
  • Enter the lsb_release —a command

Method:2

  • Open «System Settings» from the desktop main menu in Unity.
  • Click on the «Details» icon under «System».

Steps to install mssql-cli on Ubuntu 16.04

Mssql-cli for Linux, is published to package repositories for easy installation (and updates). This is the preferred method. Follow the below steps for the mssql-cli installation.

Step 1: Open terminal and import the public repository GPG keys.

The wget command allows downloading files from the Internet using a Linux operating system such as Ubuntu. It can be used to retrieve files using HTTP, HTTPS and FTP. Wget is non-interactive which gives great flexibility in using it. It can be easily called from scripts, cron jobs, terminals, etc. In this case, we have used it to import the public repository keys.

You can get more information about wget using wget —help.

Step 2: Register the Microsoft Ubuntu repository

We will use curl for this step.

curl is a tool to download or transfer files/data from or to a server using FTP, HTTP, HTTPS, SCP, SFTP, SMB and other supported protocols on Linux or Unix-like system.

Step 3: Update the list of products

apt-get update downloads the package lists from the repositories and updates them to get information on the newest versions of packages and their dependencies. It will do this for all repositories and PPAs.

Читайте также:  Аналог диспетчера задач для линукс

Step 4: Install mssql-cli

Now use the below command to install mssql-cli tool using apt-get command.

apt-get (advance packaging tools) is the command-line tool for handling packages. It is a rapid, practical, and efficient way to install packages on your system. Dependencies are managed automatically, configuration files are maintained, and upgrades and downgrades are handled carefully to ensure system stability.

This installs the packages, dependencies on Ubuntu.

Steps to install mssql-cli on Ubuntu 17.04

Similarly, we can install mssql-cli on Ubuntu 17.04 with the below steps.

Step 1: Import the public repository GPG keys

Step 2: Register the Microsoft Ubuntu repository

Step 3: Update the list of products

Step 4: Install mssql-cli

Explore mssql-cli on Ubuntu

Once we have installed mssql-cli on Ubuntu, we can check the mssql-cli help documentation using below command:

Some of the important parameters for mssql-cli are:

-S SQL Server instance name or address
-U Username to connect to the database
-W Force password Prompt
-I Integrated Windows authentication
-d Database name to connect, if not specified it connect to master database.
-N Connect SQL Server if it uses SSL encryption
-V Version of the mssql-cli

Now let us connect to the SQL Server instance running on Ubuntu. The syntax for connecting SQL instance is as shown below:

Once connected, it gives a prompt to enter database queries. By default, it connects to the SQL Server master database, so it prompts as master>.

Now we can start writing queries with the help of T-SQL intellisense. As soon as we start typing, we get a suggestion to write the query.

Mssql-cli also identifies the schema, table, views, and functions. For example, in the below screenshot, we can see that it gives a suggestion for schema, table, views, and functions after select * from query.

Mssql-cli also gives output in a nice way as compared to existing tools like sqlcmd. We can easily read the information in a tabular format.

In mssql-cli, we can also write a long query which might take few lines instead of one line. By default, multiline support is off as shown below

In order to use multiline support, we can press F3. It turns on the multiline mode.

In multiline mode, also T-SQL intelligence works fine and gives suggestions as we type in.

In multiline mode, in order to execute the query it should end with a semicolon (;). It makes it easy to navigate up and down for making changes to the query. For example, in the below screenshot, we have made a typo in the column name, so we get an error as an invalid column name.

Now, we can just use the up arrow key to get to the last query.

With the help of the arrow key, go to the first line and make the changes.

Make the correction and execute the query.

As stated above, multiline mode requires a semicolon to execute the query. If we do not type a semicolon, it will continue to use multiple lines to write queries.

Читайте также:  Windows update support centre

Mssq-cli is intelligent enough to help in writing join queries.

We can just select the required join columns using the arrow key and press Enter.

This writes the desired columns in the query and we can simply execute it.

Mssql-cli is a nice interactive tool which makes it easy to write and execute queries in SQL Server using a command line.

Источник

Установка программ командной строки SQL Server sqlcmd и bcp в Linux

Применимо к: SQL Server (все поддерживаемые версии) — Linux

Ниже приведены инструкции по установке программ командной строки, драйверов ODBC Майкрософт и их зависимостей. Пакет mssql-tools содержит следующие компоненты:

  • sqlcmd — программа командной строки для выполнения запросов;
  • bcp — служебная программа для массового импорта и экспорта.

Установите программы для своей платформы:

В этой статье описывается установка программ командной строки. Примеры использования sqlcmd или bcp можно найти по ссылкам в конце этой статьи.

Установка средств в RHEL 8

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

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

Скачайте файл конфигурации репозитория Microsoft Red Hat.

Выйдите из режима суперпользователя.

Если установлена предыдущая версия mssql-tools, удалите все старые пакеты unixODBC.

Чтобы установить mssql-tools с помощью пакета разработчика unixODBC, выполните приведенные ниже команды.

Чтобы произвести обновление до последней версии mssql-tools, выполните следующие команды:

Необязательно: Добавьте путь /opt/mssql-tools/bin/ в переменную среды PATH в оболочке bash.

Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках сеансов входа в систему, измените переменную среды PATH в файле

/.bash_profile с помощью следующей команды:

Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках интерактивных сеансов и сеансов без входа в систему, измените переменную среды PATH в файле

/.bashrc с помощью следующей команды:

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

Чтобы установить mssql-tools в Ubuntu, выполните указанные ниже действия.

  • Ubuntu 18.04 поддерживается, начиная с SQL Server 2019 с накопительным пакетом обновления 3 (CU3).
  • Ubuntu 20.04 поддерживается, начиная с SQL Server 2019 с накопительным пакетом обновления 20 (CU10).
  • Если вы используете Ubuntu 18.04 или Ubuntu 20.04, измените путь к репозиторию (см. шаг 2 ниже) с /ubuntu/16.04 на /ubuntu/18.04 или /ubuntu/20.04 .

Импортируйте открытые ключи GPG из репозитория.

Зарегистрируйте репозиторий Ubuntu для Майкрософт.

Обновите список источников и выполните команду установки с помощью пакета разработчика unixODBC.

Чтобы произвести обновление до последней версии mssql-tools, выполните следующие команды:

Необязательно: Добавьте путь /opt/mssql-tools/bin/ в переменную среды PATH в оболочке bash.

Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках сеансов входа в систему, измените переменную среды PATH в файле

/.bash_profile с помощью следующей команды:

Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках интерактивных сеансов и сеансов без входа в систему, измените переменную среды PATH в файле

/.bashrc с помощью следующей команды:

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

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

Добавьте репозиторий Microsoft SQL Server в Zypper.

Установите mssql-tools с помощью пакета разработчика unixODBC.

Чтобы произвести обновление до последней версии mssql-tools, выполните следующие команды:

Читайте также:  Comct232 ocx windows 10

Необязательно: Добавьте путь /opt/mssql-tools/bin/ в переменную среды PATH в оболочке bash.

Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках сеансов входа в систему, измените переменную среды PATH в файле

/.bash_profile с помощью следующей команды:

Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках интерактивных сеансов и сеансов без входа в систему, измените переменную среды PATH в файле

/.bashrc с помощью следующей команды:

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

В macOS доступна предварительная версия программ sqlcmd и bcp. Дополнительные сведения см. в объявлении о выпуске.

Установите программу Homebrew, если ее еще нет:

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

Чтобы установить средства для Mac El Capitan и Sierra, используйте следующие команды:

Docker

Если SQL Server выполняется в контейнере Docker, программы командной строки SQL Server уже включены в образ контейнера SQL Server в Linux. Если подключиться к запущенному контейнеру с помощью интерактивной оболочки bash, можно запускать программы локально.

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

Если компьютер Linux не имеет доступа к онлайн-хранилищам, которые используются в предыдущих разделах, вы можете загрузить файлы пакетов напрямую. Эти пакеты находятся в репозитории Майкрософт по адресу https://packages.microsoft.com.

После успешного выполнения действий по установке, указанных в предыдущих разделах, загружать или вручную устанавливать указанные ниже пакеты не требуется. Это нужно только для автономных сценариев.

Сначала найдите и скопируйте пакет mssql-tools для своего дистрибутива Linux:

Дистрибутив Linux Расположение пакета mssql-tools
Red Hat https://packages.microsoft.com/rhel/7.3/prod
SLES https://packages.microsoft.com/sles/12/prod
Ubuntu 16.04 https://packages.microsoft.com/ubuntu/16.04/prod/pool/main/m/mssql-tools

Кроме того, найдите и скопируйте пакет msodbcsql, который является зависимостью. Пакет msodbcsql также имеет зависимость от unixODBC-devel (Red Hat и 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 16.04 msodbcsql
unixodbc-dev

Переместите скачанные пакеты на компьютер Linux. Если для скачивания пакетов вы использовали другой компьютер, переместить пакеты на компьютер Linux можно с помощью команды scp.

Установите пакеты. Установите пакеты mssql-tools и msodbc. Если возникают ошибки зависимостей, игнорируйте их до следующего шага.

Платформа Команды для установки пакетов
Red Hat sudo yum localinstall msodbcsql- .rpm
sudo yum localinstall mssql-tools- .rpm
SLES sudo zypper install msodbcsql- .rpm
sudo zypper install mssql-tools- .rpm
Ubuntu sudo dpkg -i msodbcsql_ .deb
sudo dpkg -i mssql-tools_ .deb

Разрешите отсутствующие зависимости. На этом этапе зависимости могут отсутствовать. Если это не так, пропустите этот шаг. В некоторых случаях необходимо найти и установить зависимости вручную.

Для пакетов RPM проверить требуемые зависимости можно с помощью следующих команд:

Для пакетов Debian, если у вас есть доступ к утвержденным репозиториям, содержащим эти зависимости, самым простым решением является использование команды apt-get.

Эта команда также завершает установку пакетов SQL Server.

Если эта команда не работает для пакета Debian, проверить требуемые зависимости можно с помощью следующих команд:

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

Пример использования sqlcmd для подключения к SQL Server и создания базы данных см. в одном из следующих кратких руководств:

Пример использования bcp для массового импорта и экспорта данных см. в статье Массовое копирование данных в SQL Server на Linux.

Источник

Оцените статью