June 8, 2021

Установка SQL Server и создание базы данных в Ubuntu


Чтобы настроить SQL Server в Ubuntu, выполните следующие команды в терминале для установки пакета mssql-server:

  1. Импортируйте открытые ключи GPG из репозитория:
sudo add-apt-repository "$(wget -qO-https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"

2.Выполните следующие команды для установки SQL Server:

sudo apt-get update
sudo apt-get install -y mssql-server

3.Когда установка пакета завершится, выполните команду mssql-conf setup и следуйте указаниям, чтобы задать пароль системного администратора и выбрать выпуск.

sudo /opt/mssql/bin/mssql-conf setup

4.По завершении настройки убедитесь в том, что служба работает.

systemctl status mssql-server --no-pager

5.Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках интерактивных сеансов и сеансов без входа в систему, измените переменную среды PATH в файле ~/.bashrc с помощью следующей команды:

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

6.Запустите sqlcmd с параметрами имени вашего SQL Server (-S), имени пользователя (-U) и пароля (-P). В этом руководстве вы подключаетесь локально, поэтому имя сервера — localhost. Имя пользователя — SA, а пароль тот, что вы выбрали для учетной записи SA во время установки.

sqlcmd -S localhost -U SA -P '<YourPassword>'
  1. В приглашении команды sqlcmd вставьте следующую команду Transact-SQL, чтобы создать тестовую базу данных:
CREATE DATABASE TestDB
  1. В следующей строке напишите запрос, который должен вернуть имена всех баз данных на сервере:
SELECT Name from sys.Databases
  1. Две предыдущие команды были выполнены не сразу. Необходимо ввести
GO

на новой строке, чтобы выполнить предыдущие команды

GO

Добавление данных

Теперь создайте таблицу Inventory и вставьте две новых строки.

  1. В приглашении команды sqlcmd переключите контекст на новую базу данных TestDB:
USE TestDB
  1. Создайте таблицу Inventory:
CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
  1. Вставьте данные в новую таблицу:
INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
  1. Введите GO, чтобы выполнить предыдущие команды:
GO

Выбор данных

Теперь выполните запрос, чтобы вернуть данные из таблицы Inventory.

  1. В приглашении команды sqlcmd введите запрос, который должен вернуть из таблицы Inventory строки, где количество превышает 152:
SELECT * FROM Inventory WHERE quantity > 152;
  1. Выполните команду:
GO

Выход из sqlcmd

Чтобы завершить сеанс sqlcmd, введите QUIT:

QUIT