Установите 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