Ms sql linux ограничения
1.
SELECT @@VERSION
-----------
Microsoft SQL Server vNext (CTP1.1) - 14.0.100.187 (X64) Dec 10 2016 02:51:11 Copyright (C) 2016 Microsoft Corporation. All rights reserved. on Linux (Ubuntu 16.04 LTS)
2.
exec XP_MSVER
Index Name Internal_Value Character_Value
------ -------------------------------- -------------- -------------
1 ProductName NULL Microsoft SQL Server
2 ProductVersion 917504 14.0.100.187
3 Language 1033 English (United States)
4 Platform NULL NT x64
5 Comments NULL SQL
6 CompanyName NULL Microsoft Corporation
7 FileDescription NULL SQL Server Windows NT - 64 Bit
8 FileVersion NULL 2016.0140.0100.187 ((SQL_Main).161210-0114)
9 InternalName NULL SQLSERVR
10 LegalCopyright NULL Microsoft. All rights reserved.
11 LegalTrademarks NULL Microsoft SQL Server is a registered trademark of Microsoft Corporation.
12 OriginalFilename NULL SQLSERVR.EXE
13 PrivateBuild NULL NULL
14 SpecialBuild 6553787 NULL
15 WindowsVersion 6553787 6.2 (9200)
16 ProcessorCount 1 1
17 ProcessorActiveMask NULL 1
18 ProcessorType 8664 NULL
19 PhysicalMemory 3155 3155 (3308257280)
20 Product ID NULL NULL
3.
SELECT 'InstanceDefaultDataPath', SERVERPROPERTY('InstanceDefaultDataPath')
UNION ALL
SELECT 'InstanceDefaultLogPath', SERVERPROPERTY('InstanceDefaultLogPath')
1. Ну, ясно, как минимум, что если вместо Windows Server поставить Линукс, то уже дешевле, даже несмотря на предполагаемую стоимость лицензии самого SQL Server.
1. Ну, ясно, как минимум, что если вместо Windows Server поставить Линукс, то уже дешевле, даже несмотря на предполагаемую стоимость лицензии самого SQL Server.
1. Ну, ясно, как минимум, что если вместо Windows Server поставить Линукс, то уже дешевле, даже несмотря на предполагаемую стоимость лицензии самого SQL Server.
А на самом деле как линукс, та к и винды есть в разных вариантах "платности".
И здесь репозитории, из которых ставятся пакеты, можно глазами посмотреть
RPM package 14.0.100.187-1 mssql-server 14.0.100.187-1 Engine RPM package
mssql-server 14.0.100.187-1 High Availability RPM package
Подключился к базе клиентом, который использует практически все возможности сервера.
По скорости работы в сравнении с 2008 не скажу, но функции выполняет все.
В этой статье подробно описаны функции, поддерживаемые различными выпусками SQL Server 2019 на Linux. Описание выпусков и поддерживаемых функций SQL Server в Windows см. в статье SQL Server 2019 — Windows.
Требования для установки сильно зависят от потребностей приложения. Различные выпуски SQL Server удовлетворяют индивидуальным требованиям каждой организации или отдельного лица к производительности, среде выполнения и цене. Набор устанавливаемых компонентов SQL Server зависит от потребностей конкретного пользователя. В следующих разделах содержатся сведения, на основе которых из множества выпусков и компонентов, доступных в SQL Server, можно сделать наилучший выбор.
Актуальные заметки о выпуске и сведения о новых возможностях содержатся в следующих разделах:
Список функций SQL Server, которые недоступны в Linux, см. в статье Неподдерживаемые функции и службы.
Попробуйте SQL Server!
SQL Server , выпуски
Эти выпуски SQL Serverописаны в следующей таблице.
SQL Server edition | Определение |
---|---|
Enterprise | Выпуск SQL Server Enterprise Edition является предложением класса "Премиум", обеспечивающим полный набор возможностей ЦОД с исключительно высокой производительностью, что позволяет добиться высокого уровня обслуживания важнейших рабочих нагрузок. |
Standard | Выпуск SQL Server Standard обеспечивает основные функции управления данными для приложений, работающих в отделах и небольших организациях. Поддерживаются распространенные средства разработки в локальных системах и вычислительных облаках, что делает возможным эффективное управление базами данных с минимальными затратами ИТ-ресурсов. |
Интернет | ВыпускSQL Server Web Edition — это вариант с низкой совокупной стоимостью владения, предназначенный для размещения веб-сайтов и дополнительных веб-услуг, который по доступной цене обеспечивает масштабируемость и функции управления для небольших и крупномасштабных веб-проектов. |
Разработчик | ВыпускSQL Server Developer Edition позволяет разработчикам создавать приложения любого типа на базе SQL Server. Он включает все функциональные возможности выпуска Enterprise Edition, однако лицензируется как система для разработки и тестирования, а не для применения в качестве рабочего сервера. Выпуск SQL Server Developer Edition является идеальным выбором для тех, кто создает и тестирует приложения. |
Express | Выпуск Express является бесплатной базой данных начального уровня и идеально подходит для обучения, а также для создания управляемых данными приложений, работающих на рабочих станциях и небольших серверах. Этот выпуск — лучший выбор для независимых поставщиков программного обеспечения, непрофессиональных разработчиков и любителей, создающих клиентские приложения. Если необходимы дополнительные функции базы данных, выпуск SQL Server Express можно легко обновить до версий SQL Serverболее высокого класса. |
Использование SQL Server с клиентскими и серверными приложениями
На компьютер, где работают клиент-серверные приложения, которые подключаются непосредственно к экземпляру SQL Server , можно установить только клиентские компоненты SQL Server. Установка клиентских компонентов будет хорошим выбором также и в том случае, если администрируется экземпляр SQL Server на сервере базы данных или планируется разработка приложений SQL Server .
составные части компонента SQL Server.
SQL Server 2019 на Linux поддерживает ядро СУБД SQL Server. В приведенной ниже таблице описаны функции ядра СУБД.
Компоненты сервера | Описание |
---|---|
Компонент SQL Server Database Engine | Компонент SQL Server Database Engine включает компонент Компонент Database Engine, основную службу для хранения, обработки и обеспечения безопасности данных, репликации, полнотекстового поиска, а также средства управления реляционными и XML-данными и возможности интеграции с системами аналитики данных. |
Выпуски Developer, Enterprise Core и Evaluation
Поддерживаемые компоненты для выпусков Developer, Enterprise Core и Evaluation указаны в списке возможностей SQL Server Enterprise в приведенных ниже таблицах.
Выпуск Developer по-прежнему поддерживает только один клиент для распределенного воспроизведения SQL Server.
Ограничения масштабирования
Компонент | Enterprise | Standard | Интернет | Express |
---|---|---|---|---|
Максимальная вычислительная мощность, используемая одним экземпляром, — Компонент SQL Server Database Engine 1 | Максимальное значение, поддерживаемое операционной системой | Ограничение: меньшее из 4 процессоров и 24 ядер | Ограничение: меньшее из 4 процессоров и 16 ядер | Ограничение: меньшее из 1 процессора и 4 ядер |
Максимальная вычислительная мощность, используемая одним экземпляром, — Службы Analysis Services или Службы Reporting Services | Максимальное значение, поддерживаемое операционной системой | Ограничение: меньшее из 4 процессоров и 24 ядер | Ограничение: меньшее из 4 процессоров и 16 ядер | Ограничение: меньшее из 1 процессора и 4 ядер |
Максимальный объем памяти для буферного пула на экземпляр Компонент SQL Server Database Engine | Максимум, поддерживаемый операционной системой | 128 ГБ | 64 ГБ | 1410 МБ |
Максимальная емкость для расширения буферного пула на экземпляр Компонент SQL Server Database Engine | 32* (максимальная конфигурация памяти сервера) | 4* (минимальная конфигурация памяти сервера) | Недоступно | Недоступно |
Максимальный объем памяти для кэша сегмента Columnstore на экземпляр Компонент SQL Server Database Engine | Неограниченная память | 32 ГБ | 16 ГБ | 352 МБ |
Максимальный размер данных, оптимизированных для памяти, на базу данных в Компонент SQL Server Database Engine | Неограниченная память | 32 ГБ | 16 ГБ | 352 МБ |
Максимальный размер реляционной базы данных | 524 ПБ | 524 ПБ | 524 ПБ | 10 ГБ |
1 Использование выпуска Enterprise Edition с лицензированием по принципу "лицензия на сервер и клиентские лицензии (Server+CAL)" (недоступно для новых соглашений) ограничено максимум 20 ядрами в расчете на экземпляр SQL Server. В модели лицензирования по числу ядер никаких ограничений нет. Дополнительные сведения см. в статье Вычисление производительности выпуска SQL Server.
Высокий уровень доступности реляционной СУБД
Компонент | Enterprise | Standard | Интернет | Express |
---|---|---|---|---|
доставка журналов; | Да | Да | Да | нет |
Сжатие резервных копий | Да | Да | Нет | нет |
Моментальный снимок базы данных | Да | Да | Нет | нет |
Экземпляр отказоустойчивого кластера Always On 1 | Да | Да | Нет | нет |
Группы доступности Always On 2 | Да | Нет | Нет | нет |
Базовые группы доступности 3 | нет | Да | Нет | нет |
Группа доступности с минимальным числом реплик для фиксации | Да | Да | Нет | нет |
Группа доступности без кластеров | Да | Да | Нет | нет |
Восстановление страниц и файлов в режиме «в сети» | Да | Нет | Нет | нет |
Индексирование в сети | Да | Нет | Нет | нет |
Возобновляемая перестройка индексов в подключенном режиме | Да | Нет | Нет | нет |
Изменение схемы в режиме «в сети» | Да | Нет | Нет | нет |
Быстрое восстановление | Да | Нет | Нет | нет |
Зеркальные резервные копии | Да | Нет | Нет | нет |
Поддержка памяти и ЦП с "горячей" заменой | Да | Нет | Нет | нет |
Зашифрованная резервная копия | Да | Да | Нет | нет |
Гибридное резервное копирование в Azure (резервное копирование по URL-адресу) | Да | Да | Нет | нет |
1 В выпуске Enterprise количество узлов равно максимуму, поддерживаемому операционной системой. В выпуске Standard поддерживается два узла.
2 В выпуске Enterprise поддерживается до 8 вторичных реплик, включая 2 синхронные вторичные реплики.
3 В выпуске Standard поддерживаются базовые группы доступности. Базовая группа доступности поддерживает две реплики с одной базой данных. Дополнительные сведения о базовых группах доступности см. в разделе Базовые группы доступности.
Масштабируемость и производительность реляционных СУБД
Компонент | Enterprise | Standard | Интернет | Express |
---|---|---|---|---|
Columnstore 1 | Да | Да | Да | Да |
Большие двоичные объекты в кластеризованных индексах columnstore | Да | Да | Да | Да |
Перестройка некластеризованных индексов columnstore в подключенном режиме | Да | Нет | Нет | нет |
Выполняющаяся в памяти OLTP 1 | Да | Да | Да | Да |
Постоянная основная память | Да | Да | Да | Да |
Секционирование таблиц и индексов | Да | Да | Да | Да |
Сжатие данных | Да | Да | Да | Да |
Resource Governor | Да | Нет | Нет | нет |
Параллелизм секционированных таблиц | Да | Нет | Нет | нет |
Поддержка NUMA, выделение памяти больших страниц и массива буфера | Да | Нет | Нет | нет |
Управление ресурсами ввода-вывода | Да | Нет | Нет | нет |
Отложенная устойчивость | Да | Да | Да | Да |
Автоматическая настройка | Да | Нет | Нет | нет |
Адаптивные соединения в пакетном режиме | Да | Нет | Нет | нет |
Обратная связь по временно предоставляемому буферу памяти в пакетном режиме | Да | Нет | Нет | нет |
Выполнение с чередованием для функций с табличным значением с несколькими инструкциями | Да | Да | Да | Да |
Улучшения массовой вставки | Да | Да | Да | Да |
1 Размер данных выполняющейся в памяти OLTP и кэша сегмента Columnstore ограничены объемом памяти, указанным в выпуске в разделе "Ограничения масштабирования". Максимальная степень параллелизма ограничена. Степень параллелизма процесса (DOP) для построения индекса ограничена значением 2 для выпуска Standard и 1 для выпусков Express и Web. Это относится к индексам columnstore, созданным на основе таблиц на диске и оптимизированных для памяти таблиц.
Безопасность реляционных СУБД
Компонент | Enterprise | Standard | Интернет | Express |
---|---|---|---|---|
Безопасность на уровне строк | Да | Да | Да | Да |
Always Encrypted | Да | Да | Да | Да |
Динамическое маскирование данных | Да | Да | Да | Да |
Основные возможности аудита | Да | Да | Да | Да |
Аудит мелких фрагментов данных | Да | Да | Да | Да |
Прозрачное шифрование в базе данных (TDE) | Да | Да | Нет | нет |
Определяемые пользователем роли | Да | Да | Да | Да |
Автономные базы данных | Да | Да | Да | Да |
Шифрование для резервного копирования | Да | Да | Нет | нет |
Использование реляционных СУБД
Компонент | Enterprise | Standard | Интернет | Express |
---|---|---|---|---|
Выделенное административное соединение | Да | Да | Да | Да, с помощью флага трассировки |
Поддержка скриптов PowerShell | Да | Да | Да | Да |
Поддержка операций с компонентами приложения уровня данных — извлечение, развертывание, обновление, удаление | Да | Да | Да | Да |
Автоматизация политики (проверка по расписанию и изменение) | Да | Да | Да | нет |
Сборщик данных производительности | Да | Да | Да | нет |
Стандартный производительности отчет | Да | Да | Да | нет |
Структуры планов и закрепление плана для структур планов | Да | Да | Да | нет |
Прямой запрос индексированных представлений (с использованием указания NOEXPAND) | Да | Да | Да | Да |
Автоматическое сопровождение индексированного представления | Да | Да | Да | нет |
Распределенные секционированные представления | Да | Нет | Нет | нет |
Параллельные операции с индексами | Да | Нет | Нет | нет |
Автоматическое использование индексированного представления оптимизатором запросов | Да | Нет | Нет | нет |
Проверка согласованности параллелизма | Да | Нет | Нет | нет |
Точка управления служебной программой SQL Server | Да | Нет | Нет | нет |
Programmability
1 Для горизонтального увеличения масштаба с несколькими вычислительными узлами требуется головной узел.
Службы Integration Services
Сведения о функциях служб Integration Services (SSIS), поддерживаемых различными выпусками SQL Server, см. в статье о функциях служб Integration Services, поддерживаемых разными выпусками SQL Server.
Пространственные службы и службы расположения
Имя функции | Enterprise | Standard | Интернет | Express |
---|---|---|---|---|
Пространственные индексы | Да | Да | Да | Да |
Плоский и геодезический типы данных | Да | Да | Да | Да |
Дополнительные пространственные библиотеки | Да | Да | Да | Да |
Импорт-экспорт стандартных форматов пространственных данных | Да | Да | Да | Да |
Неподдерживаемые функции и службы
Следующие функции и службы недоступны для SQL Server 2019 на Linux. Поддержка этих функций будет постепенно реализовываться с течением времени.
Область | Неподдерживаемая функция или служба |
---|---|
Ядро СУБД | Репликация слиянием |
База данных Stretch | |
Распределенный запрос с сторонними подключениями | |
Связанные серверы для источников данных, отличных от SQL Server | |
Системные расширенные хранимые процедуры (XP_CMDSHELL и т. п.) | |
Filetable, FILESTREAM | |
Сборки CLR с набором разрешений EXTERNAL_ACCESS или UNSAFE | |
Buffer Pool Extension | |
Резервное копирование по URL-адресу: страничный BLOB-объект 2 | |
Агент SQL Server | Подсистемы: CmdExec, PowerShell, средство чтения очереди, SSIS, SSAS, SSRS |
видны узлы | |
Управляемое резервное копирование | |
Обеспечение высокого уровня доступности | Зеркальное отображение базы данных |
Безопасность | Расширенное управление ключами (Extensible Key Management) |
Проверка подлинности AD для связанных серверов | |
Аутентификация AD для конечных точек групп доступности | |
Службы | Обозреватель SQL Server |
Службы R 1 SQL Server | |
StreamInsight | |
Службы Analysis Services | |
Службы Reporting Services | |
Data Quality Services | |
Службы Master Data Services |
1 R SQL Server поддерживается в SQL Server, однако службы R SQL Server в виде отдельного пакета нет.
2 Резервное копирование по URL-адресу поддерживается для блочных BLOB-объектов с использованием подписанного URL-адреса.
Система управления реляционными базами данных Microsoft SQL Server имеет давнюю историю – идея продукта зародилась еще в середине 80-ых, а первая версия появилась в 1988 году. Его основой стал язык запросов Transact-SQL, созданный совместно Microsoft и Sybase. Стратегия дальнейшего развития Microsoft SQL Server приобрела цельный и завершенный вид в 2010 году. Тогда было объявлено, что SQL Server будет представлять собой единый продукт, реализуемый в настольных системах, в центрах обработки данных и в облаке (в 32- и 64- разрядном вариантах).
В числе приоритетных направлений — бизнес-аналитика (BI) и разработка соответствующих инструментов, развитие экосистемы облачных вычислений с переносом средств бизнес-аналитики в облако, расширение возможностей работы SQL Server Management Studio со средой SQL Azure. Значительное внимание было уделено вопросам масштабирования СУБД, виртуализации приложений в среде баз данных, а также пространственному представлению данных.
Эволюция Microsoft SQL Server. В последних версиях разработчики акцентировали внимание на обработке данных в оперативной памяти (in-memory) и работе с большими данными.
В качестве достоинства СУБД от Microsoft заказчики отмечают простоту внедрения, управления, программирования и обновления.
Microsoft SQL Server 2016
2016 год стал годом очередной смены версий – перехода с Microsoft SQL Server 2005 на Microsoft SQL Server 2016. Ее новые функции и усовершенствования обеспечивают более высокую производительность, усиленную безопасность и полноценные интегрированные возможности в области отчетности и аналитики. Это не радикальная «смена вех», но эксперты называют Microsoft SQL Server 2016 самым значительным обновлением за всю историю продукта. Он включает инструменты расширенной аналитики, машинного обучения, а также новые возможности для анализа и визуализации информации на любых устройствах.
Новая версия Microsoft SQL Server позволяет создавать критически важные приложения для оперативной обработки транзакций (OLTP) с улучшенной масштабируемостью, производительностью при выполнении в памяти и высокой доступностью. При этом обеспечивается согласованность локальной и облачной среды: SQL Server позволяет клиентам получать доступ к данным на локальных серверах и в облаке.
Перечислим некоторые ключевые особенности Microsoft SQL Server 2016:
-
Новая технология постоянного шифрования (Always Encrypted) защищает данные при хранении и перемещении без снижения производительности БД. Безопасность особенно важна при переносе данных в облако, и постоянное шифрование призвано решить эту проблему.
С помощью SQL Server 2016 можно получать ценные сведения из транзакционных и аналитических данных в режиме реального времени. Продукт позиционируется как безопасная и масштабируемая платформа баз данных, которая предоставляет все необходимое — от расширенной аналитики до высокой производительности обработки любых нагрузок в оперативной памяти.
Оперативная аналитика в реальном времени позволяет быстрее принимать решения.
SQL Server 2016 работает значительно быстрее прежних версий: на том же оборудовании запросы выполняются примерно на 25% быстрее, а при использовании некоторых новых средств SQL Server 2016 с обработкой в памяти выигрыш достигает 30 раз для OLTP-транзакций и 100 раз для запросов (данные Microsoft). Однако и требования к аппаратному обеспечению в новой версии выросли.
Функциональные отличия разных редакций SQL Server 2016.
Функциональные возможности SQL Server 2016
Производительность | Выполнение OLTP в памяти |
Хранение столбцов в памяти | |
Операционная аналитика в реальном времени | |
Регулятор ресурсов | |
Хранение запросов | |
Доступность | AlwaysOn |
Расширенная поддержка визуализации и динамическая миграция | |
Безопасность | Постоянное шифрование |
Прозрачное шифрование данных | |
Безопасность на уровне строк | |
Динамическая маскировка данных | |
Поддержка шифрования резервного копирования | |
Детальный аудит | |
Разделение обязанностей | |
Программируемость | Поддержка JSON |
Запросы PolyBase для данных Hadoop | |
Temporal | |
Готовность к использованию в облаке | Stretch Database |
Архивирование в Azure | |
Аварийное восстановление в Azure | |
Оптимизированные образы виртуальных машин в коллекции Azure | |
Управление | Распределенное воспроизведение |
Управление на основе политик | |
Бизнес-аналитика | Усовершенствованные отчеты |
Мобильная бизнес-аналитика | |
Сервисы интеграции, управляемые в качестве сервера | |
Закрепление отчетов в Power BI | |
Многомерные семантические модели | |
Усовершенствованные табличные семантические модели бизнес-аналитики | |
Сервисы основных данных | |
Сервисы качества данных | |
Расширенная аналитика | Расширенная аналитика в базе данных с помощью служб R Services |
Многопоточная обработка запросов R и потоковая обработка в памяти |
В последние годы Microsoft расширила спектр своих предложений. Наряду с SQL Server в ее арсенале есть также Azure SQL Database («СУБД как сервис») и два облачных noSQL-решения — Azure DocumentDB и Azure Tables. В 2016 году корпорация Microsoft сделала еще один важный анонс — представила SQL Server для Linux. Ее платформа для управления данными и бизнес-аналитики стала еще более универсальной, расширив возможности для работы с данными и приложениями с применением разных инструментов, языков и систем в облачной, гибридной или локальной среде. Это еще один шаг в сторону упрощения SQL Server и повышения его доступности. Релиз этой версии ожидается в середине 2017 года.
Встречайте SQL Server для Linux
SQL Server для Linux, созданный на основе SQL Server 2016, предоставляет возможность разработки и развертывания интеллектуальных приложений на единой платформе для управления данными и бизнес-аналитики. Объявленная Microsoft поддержка операционных систем семейства Linux в новой версии SQL Server — очередной шаг корпорации по выходу на рынок Linux-систем после заключения партнерского соглашения с RedHat и Canonical.
C выпуском SQL Server для Linux разработчики получат широкие возможности выбора платформы для приложений, а пользователи виртуальных серверов (VPS) смогут развертывать SQL Server не только под Windows. Приложения SQL Server можно будет запускать в контейнерах Docker.
В частности, некоторые заказчики уже используют сервисы Azure Data Lake на Ubuntu. Теперь разработчики смогут создавать новые приложения со всеми возможностями SQL Server. А сотрудничество с Red Hat означает перенос SQL Server на платформу Red Hat Enterprise: заказчики получат еже более широкие возможности выбора ОС. На сайте SQL Server также уже появилась информация относительно новых возможностей СУБД.
Поэтому и поддержка ядра Linux не стала для отрасли неожиданностью. Microsoft не только еще раз продемонстрировала, что играет важную роль в движении Open Source. Выпуск SQL Server для Linux имеет целью расширение рынка: корпорация не желает упускать те 15% мирового рынка СУБД, которые занимают Linux-продукты Oracle и IBM. По данным IDC, Microsoft принадлежит более половины мирового рынка СУБД для Windows. Однако на других платформах лидирует Oracle, доля которой приближается к 50%.
По мнению аналитиков, решение Microsoft может быть выбрано не только в силу привлекательной стоимости, но и потому, что оно содержит ряд встроенных функций, которые отсутствуют в конкурирующих продуктах или предлагаются за дополнительную плату, и совместимо с Microsoft Excel .
Microsoft объявила, что заказчики бесплатно смогут приобрести лицензии на SQL Server при условии, что они решат отказаться от СУБД Oracle. «Перестаньте зависеть от Oracle. Перенесите свои базы данных Oracle на SQL Server и получите соответствующие временные лицензии SQL Server совершенно бесплатно вместе с Software Assurance», — призывает Microsoft на своем сайте. Корпорация даже разработала онлайн-тренинг: «Преобразование бизнеса путем перехода с Oracle на SQL Server».
Компания Canonical уже сделала SQL Server для Linux доступным в образах ОС Ubuntu, которую пользователи устанавливают в Microsoft Azure. Это позволяет им гибко использовать вычислительные ресурсы и недорогое дисковое хранилище. Такой вариант резко снижает общую стоимость платформы. Кроме того, в облачных средах ресурсы оптимизированы под рост рабочих нагрузок. Используя Docker и инструменты оркестрации Canonical, можно гибко наращивать производительность в соответствии с нагрузкой. Azure и контейнерные технологии в среде Linux позволяют реализовать сложные и высоконагруженные проекты без покупки дополнительного оборудования.
По данным опроса администраторов баз данных, Microsoft SQL Server уже используется в большинстве организаций.
Выпуск SQL Server для Linux означает, что Microsoft становится поставщиком кроссплатформенных решений. Ранее Microsoft уже перенесла свой Office и Office 365 на платформы iOS и Android. Такие продукты как Microsoft Intune и Azure AD также поддерживают разные устройства.
Проект Microsoft под кодовым наименованием Helsinki предполагает перенос SQL Server на несколько дистрибутивов Linux, включая Ubuntu, Red Hat Enterprise Linux и SUSE Linux Enterprise Server. Это логично дополняет и облачную стратегию корпорации — поддержку IaaS VM в Microsoft Azure для разных дистрибутивов Linux (CentOS, openSUSE, Oracle Linux, SUSE Linux Enterprise Server, Red Hat Enterprise Linux и Ubuntu). При покупке лицензий SQL Server (в расчете на сервер или на ядро процессора) заказчик сможет использовать одну и ту же лицензию в Windows Server и Linux. По программе Software Assurance можно бесплатно получать будущие версии продукта.
Конкурентный анализ рынка РСУБД за последние 30 лет показывает уверенный рост Microsoft SQL Server, особенно после выпуска SQL Server 2000. С поддержкой Linux этот рост мог бы быть еще значительнее. В настоящее время Linux, ПО виртуализации, контейнеризации, оркестрации, прикладные и связующие среды с открытым кодом играют важную роль в публичном облаке. Кроме того, по данным IDC, почти 40% серверов x86 продаются с ОС Linux и треть из них используются как серверы баз данных. Конечно, Microsoft SQL Server не станет продуктом с открытым исходным кодом, но, предлагая его как компонент стека Open Source, Microsoft существенно увеличит число инсталляций. Это серьезный вызов Oracle и IBM DB2 – также проприетарных СУБД для сред Open Source.
Каким он будет?
Следующая версия SQL Server под условным названием SQL Server v.Next предоставит экосистеме Linux возможности СУБД Microsoft, включая SQL Server Agent, аутентификацию в Active Directory, средства обеспечения высокой доступности и аварийного восстановления, безопасности и защиты данных. Предварительная версия SQL Server для Linux уже доступна для Red Hat Enterprise Linux (RHEL), SUSE Linux Enterprise Server (SLES), Ubuntu, а также облачных и контейнерных платформ, таких как OpenStack, Docker Swarm, Kubernetes и Mesosphere D/C OS.
Знакомьтесь: SQL Server для Linux. В него будут включены все основные средства SQL Server 2016.
SQL Server для Linux включает также такие средства SQL Server 2016 как хранение столбцов в памяти, что повышает производительность при выполнении запросов до 10 раз, In-Memory OLTP, благодаря чему скорость по сравнению с хранением таблиц на диске увеличивается до 2,5 раз. А Row-Level Security и Dynamic Data Masking защищают данные на сервере от несанкционированного доступа без внесения изменений в клиентские приложения.
При инсталляции SQL Server 2016 применяются стандартные для Linux методы: yum для дистрибутивов Fedora и apt-get для Debian. Поддерживается запуск по systemd, пути файлов Linux в операторах T-SQL и скриптах. Кластерами высокой доступности можно управлять с помощью таких популярных Linux-инструментов как Pacemaker и Corosync.
Microsoft предлагает также кросс-платформенные инструменты для SQL Server в Linux или Windows, такие как SQL Server Management Studio (SSMS), SQL Server Data Tools (SSDT), PowerShell (sqlps) и недавно анонсированное Visual Studio Code Extension для SQL Server. Поддерживаются также средства Microsoft Migration Assistant для переноса нагрузок. С помощью кросс-платформенных инструментов организации могут уже сейчас начать миграцию на SQL Server для Linux, а в 2017 году перейти на коммерческую версию v.Next.
Непрерывная интеграция и доставка (Continuous integration and continuous delivery, CI/CD) – практика DevOps, которая ускоряет внесение исправлений и изменений, позволяет выпускать продукты на рынок, повышать их качество и надежность.
Благодаря поддержке контейнеров в Windows и Linux ПО SQL Server будет работать под управлением оркестраторов Docker Swarm, Red Hat Open Shift, Mesosphere DC/OS и Kubernetes. С помощью Management Pack for SQL Server для Linux организации смогут использовать System Center Operations Manager для комплексного мониторинга – от аппаратных средств до экземпляров баз данных.
Поскольку SQL Server теперь доступен и для контейнеров, в разработке приложений можно применять некоторые практики DevOps, например, создать образ контейнера для использования в разных ОС. С помощью оркестраторов типа Docker Swarm или Red Hat Open Shift можно быстро обновлять контейнеры в тестовой и рабочей среде.
С выпуском SQL Server для Linux можно использовать базы данных в гетерогенной среде – как на собственных серверах, так и в виртуальных машинах в частных/публичных облаках и у провайдеров услуг VPS/VDS.
В этой статье содержатся сведения об ограничениях и известных проблемах, связанных со службами SQL Server Integration Services (SSIS) на Linux.
Общие ограничения и известные проблемы
Следующие функции не поддерживаются в этом выпуске SSIS на Linux:
- Каталог базы данных SSIS
- Выполнение пакета агентом SQL по расписанию
- Проверка подлинности Windows
- Сторонние компоненты
- Система отслеживания измененных данных (CDC)
- SSIS Scale Out
- Пакет дополнительных компонентов Azure для SSIS
- Поддержка Hadoop и HDFS
- Соединитель Microsoft Connector для SAP BW
Сведения о других ограничениях и известных проблемах, связанных со службами SSIS на Linux, см. в заметках о выпуске.
Поддерживаемые и неподдерживаемые компоненты
В Linux поддерживаются следующие встроенные компоненты Integration Services. Некоторые из них работают на платформе Linux с ограничениями. Встроенные компоненты, которые отсутствуют в этом списке, не поддерживаются в Linux.
Поддерживаемые задачи потока управления
- задача «Массовая вставка»
- Задача потока данных
- Задача «Профилирование данных»
- Задача "Выполнение SQL"
- Задача «Выполнение инструкции T-SQL»
- Задания выражения
- Задача «FTP»
- Задача «Веб-служба»
- Задача «XML»
Задачи потока управления, поддерживаемые с ограничениями
Поддерживаемые и неподдерживаемые задачи плана обслуживания
В плане обслуживания SQL Server, как правило, можно использовать разные задачи SSIS.
В Linux не поддерживаются следующие задачи плана обслуживания:
- Оповещение оператора
- Выполнение задания агента SQL Server
В Linux поддерживаются следующие задачи плана обслуживания:
- Проверка целостности базы данных
- Сжатие базы данных
- Реорганизация индекса
- Перестройка индекса
- Обновить статистику
- Очистка журнала
- Резервное копирование базы данных
- Инструкция Т-SQL
Поддерживаемые контейнеры потока управления
- контейнер последовательности
- Контейнер «цикл по элементам»
- Контейнер «цикл по каждому элементу»
Поддерживаемые источники и назначения потока данных
- Источник и назначение необработанного файла
- XML-источник
Источники и назначения потока данных, поддерживаемые с ограничениями
Поддерживаемые преобразования потока данных
- Статистическое
- Аудит
- Распространитель сбалансированных данных
- Таблица символов
- Условное разбиение
- Скопировать столбец
- Преобразование данных
- Производный столбец
- Экспорт столбца
- Нечеткое группирование
- Нечеткий уточняющий запрос
- Импорт столбцов
- Поиск
- Объединить
- Merge Join
- Многоадресная рассылка
- Сведение
- Число строк
- Медленно изменяющееся измерение
- Сортировка
- Уточняющий запрос термина
- Объединить все
- Отмена свертывания
Преобразования потока данных, поддерживаемые с ограничениями
Поддерживаемые и неподдерживаемые регистраторы
В Linux поддерживаются все встроенные регистраторы SSIS, за исключением регистратора событий Windows.
Регистратор SQL Server поддерживает только проверку подлинности SQL и не поддерживает проверку подлинности Windows.
Регистраторы SSIS для текстовых файлов, XML-файлов и SQL Server Profiler записывают выходные данные в указываемый вами файл. Следующие аспекты относятся к пути к файлу:
Всем привет! Microsoft SQL Server, начиная с 2017 версии, поддерживает работу на операционной системе Linux, в этой статье я расскажу о том, как установить Microsoft SQL Server 2017 в редакции Express на Linux Ubuntu Server 18.04.
Работа Microsoft SQL Server в Linux
Обязательно стоит отметить то, что SQL Server, установленный на Linux, поддерживает не все возможности, так, например, на текущий момент не поддерживается:
- Репликация транзакций;
- Репликация слиянием;
- Базы данных Stretch;
- PolyBase;
- Связанные серверы к источникам данных, отличных от SQL Server;
- Отсутствуют системные расширенные хранимые процедуры (XP_CMDSHELL, и т. д.);
- Отсутствует возможность использования зеркального отображения базы данных;
- Не поддерживаются службы Analysis Services, Reporting Services, SQL Server R Services;
- И некоторые другие ограничения.
Но компания Microsoft обещает постепенно включать поддержку этих возможностей в новых версиях SQL Server.
Системные требования для установки Microsoft SQL Server 2017 на Linux
На момент написания этой статьи Microsoft SQL Server поддерживает только несколько дистрибутивов Linux, и то не все версии, так SQL Server можно установить на:
- Linux Ubuntu Server 16.04 LTS;
- Red Hat Enterprise Linux 7.3 и 7.4;
- SUSE Enterprise Linux Server v12 SP2.
Как видите, пока в этом списке нет версии Ubuntu 18.04, однако с выходом накопительного обновления CU10 14.0.3037.1 стало возможно установить Microsoft SQL Server 2017 на Linux Ubuntu Server 18.04 LTS с новой установкой, т.е. Вы не обновлялись до 18.04, например, с 16.04, а выполнили новую установку Ubuntu Server 18.04. О том, как установить Linux Ubuntu Server 18.04 можете посмотреть в материале – Как установить Linux Ubuntu Server 18.04 LTS? Пошаговая инструкция для новичков.
Кроме того, есть и другие требования, которые необходимо выполнить, чтобы установить Microsoft SQL Server на Linux, такие как:
- На компьютере должно быть не менее 2 гигабайт оперативной памяти, если будет меньше, то SQL Server просто не установится;
- Файловая система в Linux должна быть XFS или EXT4. Другие файловые системы, например, BTRFS не поддерживаются;
- Свободного места на диске должно быть не менее 6 гигабайт;
- x64 процессор с частотой 2 ГГц.
Описание установки Microsoft SQL Server 2017 на Ubuntu Server 18.04
Итак, давайте перейдем к установке, устанавливать SQL Server 2017 я буду в редакции Express, кстати, если Вас интересует установка Microsoft SQL Server 2017 Express на Windows 10, то можете посмотреть мою видео-инструкцию, в которой я очень подробно рассказываю и показываю процесс установки SQL сервера на операционную систему Windows 10.
Также есть возможность установить предварительную версию SQL Server 2019 на Linux Ubuntu, однако на момент написания статьи она еще официально не вышла, именно поэтому я пока устанавливаю 2017 версию SQL Server.
Шаг 1 – Подключаемся к Ubuntu Server 18.04
Установку я буду производить удаленно, для этого запускаю программу PuTTY, с помощью которой я буду подключаться к Linux Ubuntu Server18.04 по SSH.
Если кто не знает, как это делается, то скачайте программу PuTTY, запустите ее, укажите IP адрес сервера и порт для подключения, обычно 22, и жмите ввод. При этом стоит помнить о том, что на сервере должен быть развернуть SSH сервер, обычно на Linux серверах для удобства управления этими серверами, конечно же, развертывают SSH сервер.
Все, что будет описано ниже, безусловно можно выполнить и локально непосредственно в консоли.
Шаг 2 – Импорт ключей GPG общедоступного репозитория
Сначала импортируем ключ для репозитория, это делается следующей командой
Шаг 3 – Добавление репозитория Microsoft SQL Server
Затем добавляем нужный репозиторий следующей командой.
Как Вы можете заметить, в адресе репозитория фигурирует 16.04, но как я уже отмечал, установка на Ubuntu 18.04 проходит также успешно.
Шаг 4 – Обновление списка пакетов в системе и установка пакета mssql-server
Теперь можно обновить список пакетов и запустить установку Microsoft SQL Server, для этого выполняем следующие команды
Настройка Microsoft SQL Server 2017 в Ubuntu Server 18.04
Microsoft SQL Server 2017 установлен, теперь нам необходимо его настроить. Для этого запускаем вот такую команду
Выбор редакции Microsoft SQL Server 2017
Сначала выбираем редакцию, которую мы хотим установить, для этого необходимо ввести цифру, соответствующую редакции, описание есть на экране, я буду устанавливать редакцию Express, поэтому ввожу цифру 3.
Принятие условий лицензионного соглашения
Теперь нам нужно принять условия лицензионного соглашения, для этого вводим y, т.е. отвечаем «Да».
Выбор языка Microsoft SQL Server 2017
Далее выбираем язык SQL Server, доступные языки будут отображены на экране, вводим цифру, соответствующую нужному нам языку.
Настройка пароля администратора SQL Server
Затем придумываем, вводим и подтверждаем пароль для пользователя SA, т.е. администратора Microsoft SQL Server. Этот пароль, конечно же, должен быть сложным.
Завершение установки и настройки Microsoft SQL Server
После всех вышеперечисленных действий Microsoft SQL Server 2017 Express будет установлен и настроен в Linux Ubuntu Server 18.04.
Проверяем работу Microsoft SQL Server в Linux
После того как установка Microsoft SQL Server в Linux Ubuntu Server завершена, мы можем проверить, запущен ли сервер, например, следующей командой.
Как видите, сервер запущен и работает, и мы можем подключаться к Microsoft SQL Server.
Подключение к SQL Server с помощью SQL Server Management Studio
Для этого, как обычно, запускаете среду SSMS и в обозревателе объектов нажимаете «Соединить –> Ядро СУБД».
Потом вводите адрес сервера, выбираете проверку подлинности, а именно «Проверка подлинности SQL Server», и указываете учетные данные администратора, у нас это пока только пользователь SA, нажимайте «Соединить».
Для примера давайте запустим простую SQL инструкцию, которая покажет нам версию нашего только что установленного Microsoft SQL Server.
Заметка! Для комплексного изучения языка T-SQL рекомендую посмотреть мои видеокурсы по T-SQL, в которых используется последовательная методика обучения и рассматриваются все конструкции языка SQL и T-SQL.
Как видите, сервер работает.
Видео-инструкция по установке Microsoft SQL Server 2017 на Linux Ubuntu Server 18.04
Установку и настройку Microsoft SQL Server 2017 на Linux Ubuntu Server 18.04 мы рассмотрели, у меня на этом все, надеюсь, материал был Вам полезен, пока!
Читайте также: