Поиск по сайту:

Установите Microsoft SQL Server 2019 на CentOS 7/Fedora.


SQL Server работает в Linux, начиная с SQL Server 2017. Этот SQL Server представляет собой тот же механизм базы данных SQL Server, работающий в операционных системах Microsoft, со многими похожими функциями и службами.

В этом руководстве вы узнаете, как установить Microsoft SQL Server 2019 на CentOS 7 | Система Fedora Linux. На момент написания этой статьи SQL Server 2019 доступен для производственного использования в Ubuntu/CentOS и RHEL Linux.

Шаг 1. Установите Microsoft SQL Server 2019.

Microsoft SQL Server 2019 доступен для общего использования. Добавьте репозиторий в свой CentOS 7/Fedora, выполнив следующие команды на своем терминале.

sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo

Репозиторий SQL Server 2019 будет загружен в /etc/yum.repos.d/mssql-server.repo.

Обновите системный кэш:

### CentOS 7 ###
sudo yum makecache

### Fedora ###
sudo dnf makecache

Затем установите SQL Server 2019 на CentOS 7:

sudo yum install -y mssql-server

Для Fedora вы также можете использовать команду dnf;

sudo dnf install -y mssql-server

Чтобы получить информацию об установленном пакете, запустите:

$ rpm -qi mssql-server
Name        : mssql-server
Version     : 15.0.4335.1
Release     : 6
Architecture: x86_64
Install Date: Wed 15 Nov 2023 03:21:33 AM UTC
Group       : Unspecified
Size        : 1178854823
License     : Commercial
Signature   : RSA/SHA256, Tue 26 Sep 2023 05:07:19 AM UTC, Key ID eb3e94adbe1229cf
Source RPM  : mssql-server-15.0.4335.1-6.src.rpm
Build Date  : Tue 26 Sep 2023 04:45:39 AM UTC
Build Host  : fbeb82b6c000000.wmnfyjkxcpjenncm3o2wmpgvnd.phxx.internal.cloudapp.net
Summary     : Microsoft SQL Server Relational Database Engine
...

Шаг 2. Инициализация ядра базы данных MS SQL

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

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

1. Выберите версию, которую вы хотите использовать.

Choose an edition of SQL Server:
  1) Evaluation (free, no production use rights, 180-day limit)
  2) Developer (free, no production use rights)
  3) Express (free)
  4) Web (PAID)
  5) Standard (PAID)
  6) Enterprise (PAID)
  7) Enterprise Core (PAID)
  8) I bought a license through a retail sales channel and have a product key to enter.

Для меня. Я выберу 2 – Разработчик (бесплатно, без прав на использование в производстве).

Details about editions can be found at
https://go.microsoft.com/fwlink/?LinkId=2109348

Use of PAID editions of this software requires separate licensing through a
Microsoft Volume Licensing program.
By choosing a PAID edition, you are verifying that you have the appropriate
number of licenses in place to install and run this software.

Enter your edition(1-8): 2

2. Примите условия лицензии.

The license terms for this product can be found in
/usr/share/doc/mssql-server or downloaded from:
https://go.microsoft.com/fwlink/?LinkId=855862&clcid=0x409

The privacy statement can be viewed at:
https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409

Do you accept the license terms? [Yes/No]: Yes

3. Установите пароль системного администратора SQL Server.

Enter the SQL Server system administrator password: <ENTER-STRONG-PASSWORD>
Confirm the SQL Server system administrator password: <Confirm Password>
Configuring SQL Server...

ForceFlush is enabled for this instance.
ForceFlush feature is enabled for log durability.
Created symlink from /etc/systemd/system/multi-user.target.wants/mssql-server.service to /usr/lib/systemd/system/mssql-server.service.
Setup has completed successfully. SQL Server is now starting.

Шаг 3. Установите инструменты командной строки SQL Server.

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

sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo

После добавления репозитория мы можем приступить к установке инструментов.

sudo yum -y install mssql-tools unixODBC-devel

Примите условия лицензии, как указано во время установки:

The license terms for this product can be downloaded from
https://aka.ms/odbc17eula and found in
/usr/share/doc/msodbcsql17/LICENSE.txt . By entering 'YES',
you indicate that you accept the license terms.

Do you accept the license terms? (Enter YES or NO)
YES
  Installing : msodbcsql17-17.9.1.1-1.x86_64                                                                                                                                                      2/4
The license terms for this product can be downloaded from
http://go.microsoft.com/fwlink/?LinkId=746949 and found in
/usr/share/doc/mssql-tools/LICENSE.txt . By entering 'YES',
you indicate that you accept the license terms.

Do you accept the license terms? (Enter YES or NO)
YES

Шаг 4. Запустите и включите службу mssql-server.

Запустите службу mssql-сервера.

sudo systemctl start mssql-server

Включите его для запуска при загрузке системы:

sudo systemctl enable mssql-server

Добавьте /opt/mssql/bin/ в переменную ` PATH:

echo 'export PATH=$PATH:/opt/mssql/bin:/opt/mssql-tools/bin' | sudo tee /etc/profile.d/mssql.sh

Создайте исходный файл, чтобы начать использовать исполняемые двоичные файлы MS SQL в текущем сеансе оболочки:

source /etc/profile.d/mssql.sh

Если у вас есть активная служба Firewalld, разрешите порты SQL Server для подключения удаленных хостов:

sudo  firewall-cmd --add-port=1433/tcp --permanent
sudo  firewall-cmd --reload

Шаг 4. Тестирование SQL-сервера

Подключитесь к SQL-серверу и убедитесь, что он работает.

$ sqlcmd -S localhost -U SA
Password: <INPUT-PASSWORD-SET-IN-STEP-2>

Выполните аутентификацию с помощью пароля, установленного на шаге 2.

Показать пользователей базы данных:

1> select name from sysusers;
2> go
name
--------------------------------------------------------------------------------------------------------------------------------
##MS_AgentSigningCertificate##
##MS_PolicyEventProcessingLogin##
db_accessadmin
db_backupoperator
db_datareader
db_datawriter
db_ddladmin
db_denydatareader
db_denydatawriter
db_owner
db_securityadmin
dbo
guest
INFORMATION_SCHEMA
public
sys

(16 rows affected)

Создайте тестовую базу данных:

# Create new
CREATE DATABASE mytestDB
SELECT Name from sys.Databases
GO
USE mytestDB
CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
GO
SELECT * FROM Inventory LIMIT 1;

Показать базы данных на SQL Server.

1> select name,database_id from sys.databases;
2> go

Удаление базы данных:

1> drop database mytestDB;
2> go

Для других дистрибутивов Linux ознакомьтесь с руководствами ниже:

  • Как установить MS SQL на Ubuntu
  • Как установить Microsoft SQL Server на RHEL/CentOS 8