Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов в России Pytilistnik.org. В прошлый раз мы с вами научились использовать утилиту robocopy для синхронизации файловых шар, это было интересно. В сегодняшней публикации я бы хотел подробно остановиться на установке и базовой настройке Microsoft SQL Server 2019 в Windows Server 2019. Уверен, что многие уже потихоньку начинают на нее переходить.
Что такое SQL Server 2019
SQL Server — это система управления реляционными базами данных, или RDBMS, разработанная и продаваемая Microsoft.
Подобно другому программному обеспечению СУБД, SQL Server построен на основе SQL, стандартного языка программирования для взаимодействия с реляционными базами данных. Сервер SQL связан с Transact-SQL или T-SQL, реализацией SQL от Microsoft, которая добавляет набор проприетарных программных конструкций.
SQL Server работает исключительно в среде Windows более 20 лет. В 2016 году Microsoft сделала его доступным для Linux. SQL Server 2017 стал общедоступным в октябре 2016 года и работал как в Windows, так и в Linux. 2019 версия также поддерживает Linux и Docker.
Архитектура SQL Server
SQL Server состоит из двух основных компонентов:
Database Engine
SQLOS
Database Engine
Основным компонентом SQL Server является компонент Database Engine. Компонент Database Engine состоит из реляционного механизма, который обрабатывает запросы, и механизма хранения, который управляет файлами базы данных, страницами, индексами и т. д. Объекты базы данных, такие как хранимые процедуры, представления и триггеры, также создаются и выполняются компонентом Database Engine.
Реляционный движок (Relational Engine)
Реляционный движок содержит компоненты, определяющие наилучший способ выполнения запроса. Relational Engine также известен как обработчик запросов. Реляционный механизм запрашивает данные из механизма хранения на основе входного запроса и обрабатывает результаты. Некоторые задачи реляционного механизма включают обработку запросов, управление памятью, управление потоками и задачами, управление буфером и распределенную обработку запросов.
Движок хранения (Storage Engine)
Механизм хранения отвечает за хранение и извлечение данных из систем хранения, таких как диски и SAN.
SQLOS
Под реляционным механизмом и хранилищем понимается операционная система SQL Server или SQLOS. SQLOS предоставляет множество сервисов операционной системы, таких как управление памятью и вводом-выводом. Другие услуги включают в себя обработку исключений и услуги синхронизации.
Саму архитектуру работы SQL сервера можно проиллюстрировать в виде такой диаграммы.
Редакции MS SQL Server 2019
В отличии от 2016 версии в MS SQL 2019 уже пять редакций
Enterprise — Премиум-версия SQL Server Enterprise Edition предлагает комплексные возможности центра обработки данных высокого класса с невероятно быстрой производительностью, неограниченной виртуализацией и сквозной бизнес-аналитикой, обеспечивая высокий уровень обслуживания для критически важных рабочих нагрузок и доступ конечных пользователей к данным. Если сказать простым языком, то MS SQL 2019 Enterprise — это самый полный и навороченный выпуск, где есть все возможные функции на текущий момент, в нем нет ограничений по ресурсам, но нужно понимать, что он самый дорогой. На практике его используют в основном крупный бизнес, типа Сбербанка и ему подобных.
Standard — SQL Server Standard Edition предоставляет базовые БД для управления данными и бизнес-аналитикой департаментов и небольших организаций для запуска своих приложений и поддерживает общие инструменты разработки для локальных и облачных сред, обеспечивая эффективное управление базами данных с минимальными ИТ-ресурсами. Тут вы максимум сможете использовать 128 ГБ ОЗУ на экземпляр SQL Server Database Engine. Вы не сможете использовать функционал группы доступности AlwaysOn. Нужно понимать, что редакция SQL Server 2019 Standard Edition подойдет для малого и среднего бизнеса.
Web — Web-выпуск SQL Server — это вариант с низкой стоимостью для веб-хостеров и веб-VAP, который обеспечивает возможности масштабируемости, доступности и управления для небольших и крупных веб-ресурсов. По факту это подрезанный по ресурсам Standard
Developer — Редакция SQL Server 2019 Developer позволяет разработчикам создавать любые приложения поверх SQL Server. Он включает в себя все функциональные возможности редакции Enterprise, но лицензирован для использования в качестве системы разработки и тестирования, а не в качестве рабочего сервера. SQL Server Developer — идеальный выбор для людей, которые создают и тестируют приложения. Короче если вы разработчик, то это БЕСПЛАТНО.
Express — Express Edition — это бесплатная база данных начального уровня, которая идеально подходит для изучения и создания настольных и небольших серверных приложений. Это лучший выбор для независимых поставщиков программного обеспечения, разработчиков и любителей, создающих клиентские приложения. Если вам нужны более продвинутые функции базы данных, SQL Server Express можно легко обновить до других более поздних версий SQL Server. SQL Server Express LocalDB — это облегченная версия Express, которая обладает всеми функциями программирования, работает в пользовательском режиме и имеет быструю установку с нулевой конфигурацией и кратким списком предварительных условий. Максимальный размер базы 10 ГБ
Лицензирование SQL Server 2019
Давайте теперь разберемся с лицензированием SQL Server 2019. SQL Server 2019 предлагает клиентам различные лицензии, варианты соответствуют предполагаемой нагрузке БД в проектах клиентов. Есть две основные модели лицензирования которые применяются к SQL Server:
Модель PER CORE: лицензирует MSSQL по ядрам сервера, дает клиентам более упрощенное лицензирование, не заставляя их вычислять количество пользователей (CAL), на каком оборудовании работает БД, все сводится к количеству ядер. Для лицензирования физического сервера — при запуске SQL Server все физические ядра на сервере должны быть лицензированы. В соответствии с моделью лицензирования Per Core каждый сервер работающий под управлением программного обеспечения SQL Server 2019 или любого из его компонентов (например, службы Reporting Services или Integration Services) должен быть лицензирован. В отличие от модели лицензирования Server + CAL, модель Per Core обеспечивает доступ для неограниченного числа пользователей или устройств для подключения изнутри или снаружи брандмауэра организации. С моделью Per Core не нужно приобретать дополнительные клиентские лицензии (CAL) для доступа к программному обеспечению SQL Server.
Для каждого физического процессора на сервере требуется минимум четыре основных лицензии. Чтобы определить и приобрести необходимое количество основных лицензий, клиенты должны:
Подсчитайте общее количество физических ядер на сервере.
Приобретите соответствующее количество основных лицензий, необходимых для сервера. Основные лицензии продаются в пакетах по две, это нужно учитывать чтобы определить фактическое количество позиции (лицензионные SKU) на заказ.
Модель лицензирования на ядро подходит, когда:
Развернут SQL Server 2019 Enterprise Edition (включая использование хранилища параллельных данных SQL Server) или SQL Server 2019 Web Edition.
Внедрение централизованных развертываний, охватывающих большое количество прямых и/или косвенных пользователей/устройств.
Общие затраты на лицензирование программного обеспечения SQL Server 2019 Standard Edition ниже, чем при использовании режима лицензирования Server + CAL
Модель Server+CAL licensing —сервере лицензирования RDSПри лицензировании программного обеспечения SQL Server 2019 Standard Edition по модели Server + CAL, вам необходимо приобрести серверную лицензию для каждого сервера и клиентскую лицензию (CAL) для каждого устройства (Device CAL) и/или пользователя (User CAL), обращающихся к SQL Server или любому из его компонентов. CAL не является программным обеспечением; это выдача лицензии пользователю и устройству, аналогично, как на .
Стоимость SQL Server 2019
Вот сводная таблица с ценами, можете посмотреть, что SQL Server 2019 Enterprise стоит как машина, аж почти 14 000 долларов.
Для покупки и продления подписок на лицензии SQL
Требования к установке SQL Server 2019
Операционная система Windows 10 TH1 1507 или более поздней версии или Windows Server 2016 или более поздней версии
Минимальный объем оперативной памяти, необходимый для установки компонента Сервер DQS в Data Quality Services (DQS), составляет 2 ГБ
Заполняем поля помеченные звездочками, после чего загружаем клиента для выкачки основного дистрибутива.
Запустите тонкого клиента SQL2019-SSEI-Eval.exe. У вас появится форма загрузки SQL Server 2019 Evaluation Edition. В меню выберите пункт «Скачать носитель«.
Укажите папку для хранения установочных файлов, которые будет загружен установщиком, затем нажмите кнопку «Скачать». На выбор будет два варианта, это EXE файл или ISO.
Начнется процесс загрузки дистрибутива по указанному расположению.
Как видим, все успешно загрузилось.
Установка MS SQL Server 2019
Теперь давайте распакуем наш дистрибутив, для этого просто запустите скачанный EXE файл. Вас попросят указать место куда нужно все выгрузить.
В результате вы получите вот такую структуру файлов, запускаем SETUP.EXE.
Переходим в раздел «Установка (installation)» и выбираем пункт «Новая установка изолированного экземпляра SQL Server или добавление компонентов к существующей установке (New SQL Server stand-alone installation or add features to an existing installation)».
Следующим шагом вам необходимо указать, какую редакцию SQL 2019 вы будите устанавливать, я выбрал «Developer«. Если у вас «Standard» или «Enterprise», то необходимо будет указать ключ лицензии.
Читаем и принимаем лицензионное соглашение, после чего нажимаем далее.
Следующий шаг предложит вам проверить и установить обновления для вашей системы, я пропущу данный пункт, так как у меня все свежее.
Если у центра обновления есть проблемы с обращением на сервера Microsoft, то вы легко можете получать ошибки 0x8024402c или 0x80244022.
Установка проверяет наличие предварительных условий перед установкой. Если ошибки не найдены, нажмите кнопку «Далее».
Выберите функции, которые вы хотите установить. На данный момент вам просто нужны службы ядра СУБД (Database Engine) и соединение с клиентскими средствами, просто установите флажок и нажмите кнопку «Далее», чтобы продолжить. Ниже я опишу все компоненты MS SQL 2019.
Компоненты SQL Server 2019 и их назначение
При установке вам предлагают установить различные компоненты SQL Server. Пройдемся по ним подробнее, посмотрим какие нужно ставить в различных ситуациях:
Службы Ядра СУБД (Database Engine Services) — как и писал выше, это основное ядро без него ничего работать не будет
Репликация SQL Server (SQL Server Replication) — Служба репликации, чтобы делать копии БД в режиме реального времени, используется в AlwaysOn
Службы машинного обучения и расширения языка (Machine Learning Services and Language Extensions) — Данный компонент позволяет выполнять на SQL Server R/Python/Java
Полнотекстовый и симантический поиск (Full-Text and Semantic Extractions for Search) — Очень полезный функционал по файлам хранящимся в БД, например формата docx. В случае семантического поиска по документам, вам также понадобиться FILESTREAM
Data Quality Services — это решение на основе знаний, которое обеспечивает автоматизированные и интерактивные способы управления целостностью и качеством источников данных. DQS позволяет обнаруживать знания о данных, строить наборы знаний и управлять ими. Затем эти знания вы можете использовать для выполнения очистки, сопоставления и профилирования данных. Также вы можете использовать облачные службы поставщиков эталонных данных в проекте качества данных DQS.
Служба запросов PolyBase для внешних данных (PolyBase Query Service For External Data) — компонент позволяет получать данные с других вешних источников, например база Oracle или HDFS технологией
Analysis Services – Создание бизнес-отчетов (BI) и работы с OLAP
Общие функции SQL Server 2019
Нужно помнить, что функции распространяются на весь сервер, а не на отдельный инстанс
Machine Learning Server (Изолированный) — SQL Server поддерживает установку изолированного сервера R Server или Machine Learning Server, который работает независимо от SQL Server.
Data Quality Client – Это изолированный DQS
Соединение клиентскими средствами (Client Tools Connectivity) — Набор библиотек ODBC, OLE DB
Integration Services — Это SSIS (Службы интеграции). Данная технология полезна при автоматизации импорта данных. Мастер Scale Out и «Рабочая роль Scale Out (Worker)» позволяют масштабировать ваш SSIS.
Обратная совместимость клиентских средств (Client Tools Backwards Compatibility) — Для совместимости со старыми продуктами.
Пакет SDK клиентских средств — это пакет для разработчиков
Контроллер распределенного воспроизведения (Distributed Replay Controller/Client) — нужны для моделирования нагрузки и для различного рода тестирования производительности.
Пакет SDK средств связи клиента SQL(SQL Client Connectivity SDK) — так же для разработчиков ODBC/OLE DB
Master Data Services — Используется для анализа, валидации, интеграции и коррекции данных.
Настройка именования экземпляра SQL Server
На данном шаге у вас есть возможность изменить стандартное имя экземпляра MSSQLSERVER на нужное вам. Для этого выберите соответствующую строку и введите нужное вам имя, в моем примере, это будет RDCB. Я рекомендую делать у идентификатора экземпляра такое же имя, чтобы не было путаницы.
Настройка параметров запуска служб SQL Server 2019
После того, как вы выбрали нужные компоненты, вам необходимо настроить от имени каких учетных записей будет происходить их работа. Я настоятельно рекомендую, как минимум создать отдельную учетную запись в домене для запуска агента SQL и ядра. Напоминаю, что в Windows есть технология управляемых служебных записей (Managed Service Accounts – MSA), с ее помощью можно еще более безопасно все настроить. Выставите тип запуска агента и ядра на автоматический.
Еще активируйте галку «Предоставить право на выполнении обслуживания тома службе ядра СУБД SQL Server — эта привилегия предоставляет возможность инициализации файлов без обнуления страниц данных. Это может привести к раскрытию информации за счет доступа к удаленному ранее содержимому.» Если по простому, то галка Grand Perform Volume Maintenance Task privilege to SQL Server Database Engine Service, это полезная штука для оптимизации производительности. Настройка влияет на файл данных. Когда файл автоматически вырастает, то новый кусок заполняется нулями, в этот момент SQL может тормозить. Instant File Initialization (IFI) позволяет отключить это зануление. Какие данные не будут перезаписываться ghb:
Создании базы данных;
Добавлении данных в файлы данных или лог файлы;
Увеличении размера существующих файлов (включая операции авто увеличения);
Восстановлении базы данных/файловой группы.
Очень важно на этапе установки выбрать правильную кодировку. Хочу отметить, что это необходимо сделать отталкиваясь от того ПО для которого требуется SQL Server. Кодировка будет установлена для страниц, char/varchar и т.д. Хочу отметить, что если вы ошиблись на этапе установки с выбором Collation, то потом поменять можно.
Если у вас данные будут исключительно на английском, то выберите SQL_Latin1_General_CP1_CI_AS, в моем случае сервер локализован под русский язык, так что я оставлю все как по умолчанию Cyrillic_General_CI_AS.
Настройка ядра СУБД в SQL Server
Укажите режим безопасности ядра базы данных. Сначала выберите «Смешанный режим». Затем введите пароль для учетной записи системного администратора (sa) на SQL Server. Затем повторно введите тот же пароль, чтобы подтвердить его. После этого нажмите кнопку «Добавить текущего пользователя», чтобы и у него были права администратора.
Напомню разницу между двумя режимами доступа:
Режим аутентификации Windows — подразумевает, что доступ будут иметь только пользователи и компьютеры домена
Смешанный режим (Mixed mode) — позволяет подключаться к SQL со встроенных учетных записей.
Далее вы можете изменить стандартное расположение каталогов данных. Например транзакционные логи и расположение базы изменить на отдельные диски. Тут все завит от того как у вас построена дисковая архитектура сервера, это могут быть отдельные LUN или же просто локальные диски в RAID массиве.
Хорошей практикой считается разнесение всех директорий (системных баз данных, пользовательских баз данных, логов пользовательских баз данных, резервных копий) на разные хранилища.
Произвести заранее настройку TempDB, задав начальный размер, авторасширение, расположение, немного подробнее про каждый:
Число файлов (Number of files) — тут задается количество файлов для tempdb. Обычно берут формулу, что берут общее число ядер процессора, делят его пополам и уже на основании данной цифры создают столько же файлов tempdb. Если ядер 16, то файлов будет 8. Вот тут более подробно описано https://support.microsoft.com/en-us/help/2154845/recommendations-to-reduce-allocation-contention-in-sql-server-tempdb-d)
Начальный размер (Initial size) — тут думаю все понятно, сколько изначально будут весить файлы tempdb. Напоминаю, что когда вы перезагружаете сервер, то ваши файлы tempdb будут сбрасываться до текущего значения. При установке по умолчанию любой версии SQL Server создается база данных tempdb с файлом данных 8 МБ и файлом журнала транзакций 1 МБ. Для многих установок SQL Server этих размеров файлов будет недостаточно, но они настроены на автоматическое увеличение на 10% по мере необходимости. Очевидно, что на этот вопрос, о том какой должен быть размер сложно ответить без подробностей о рабочей нагрузке, но есть некоторые рекомендации, которые вы можете использовать. Прежде всего, если вы не используете SQL Server Express, установите tempdb больше, чем по умолчанию; это легко. Далее, если вы можете дать tempdb свой собственный диск, то сконфигурируйте его так, чтобы он почти полностью заполнял диск. Если на диске больше ничего не будет, лучше установить его больше, чем нужно. Там нет снижения производительности, и вам никогда не придется беспокоиться о росте (Autogrowth).
Более тонко выставить настройки параллелизма.
Что такое MAXDOP и почему это важно?
Когда SQL Server работает на компьютере с более чем одним процессором или процессором, он обнаруживает наилучшую степень параллелизма, то есть число процессоров, используемых для выполнения одного оператора, для каждого запроса, который имеет план параллельного выполнения. Вы можете использовать параметр максимальной степени параллелизма, чтобы ограничить число процессоров, используемых для выполнения параллельного плана, и не допустить, чтобы побочные запросы влияли на производительность SQL Server, используя все доступные ЦП.
Какие значения я должен использовать для MAXDOP?
Это зависит от аппаратного обеспечения, среды (OLTP или OLAP), нагрузки и так далее. Значение по умолчанию для MAXDOP — 0 (ноль), и его можно установить или просмотреть с помощью (sp_configure). Значение 0 означает, что SQL Server будет использовать все процессоры, если запрос выполняется параллельно.
Microsoft Premier Filed Engineer дал нам некоторые рекомендации, которым нужно следовать и учитывать при настройке функции MAXDOP.
Сервер с одним узлом NUMA — Не более 8 логических процессоров — Значение параметра MAXDOP не должно превышать количество логических процессоров
Сервер с одним узлом NUMA — Больше 8 логических процессоров — Значение параметра MAXDOP должно быть равно 8
Сервер с несколькими узлами NUMA — Не более 16 логических процессоров на узел NUMA — Значение параметра MAXDOP не должно превышать количество логических процессоров на каждый узел NUMA
Сервер с несколькими узлами NUMA — Больше 16 логических процессоров на каждый узел NUMA — Значение MAXDOP должно быть равно половине количества логических процессоров на узел NUMA со значением MAX, равным 16
При необходимости выставить настройки по потребляемой памяти.
Тут же можно настроить обращение к внешним источникам
остается нажать только кнопку «Установить»
Сам процесс установки SQL Server 2019 сильно зависит от вашей дисковой подсистемы. Дожидаемся успешного завершения.
Далее, чтобы произвести подключение к вашей базе данных вы должны установить SQL Server Management Studio.
Editions and supported features of SQL Server 2017
This article provides details of features supported by the various editions of SQL Server 2017.
For information about other versions, see:
Installation requirements vary based on your application needs. The different editions of [!INCLUDEssNoVersion] accommodate the unique performance, runtime, and price requirements of organizations and individuals. The [!INCLUDEssNoVersion] components that you install also depend on your specific requirements. The following sections help you understand how to make the best choice among the editions and components available in [!INCLUDEssNoVersion].
The SQL Server Evaluation edition is available for a 180-day trial period.
For the latest release notes and what’s new information, see the following:
. image type=»icon» source=»../includes/media/download.svg» border=»false». Download SQL Server 2017 from the Evaluation Center
SQL Server editions
Use SQL Server with an Internet Server
On an Internet server, such as a server that is running Internet Information Services (IIS), you will typically install the [!INCLUDEssNoVersion] client tools. Client tools include the client connectivity components used by an application connecting to an instance of [!INCLUDEssNoVersion].
[!NOTE] Although you can install an instance of [!INCLUDEssNoVersion] on a computer that is running IIS, this is typically done only for small Web sites that have a single server computer. Most Web sites have their middle-tier IIS systems on one server or a cluster of servers, and their databases on a separate server or federation of servers.
Use SQL Server with client/server applications
You can install just the [!INCLUDEssNoVersion] client components on a computer that is running client/server applications that connect directly to an instance of [!INCLUDEssNoVersion]. A client components installation is also a good option if you administer an instance of [!INCLUDEssNoVersion] on a database server, or if you plan to develop [!INCLUDEssNoVersion] applications.
The client tools option installs the following [!INCLUDEssNoVersion] features: backward compatibility components, [!INCLUDEssBIDevStudio], connectivity components, management tools, software development kit, and [!INCLUDEssNoVersion] Books Online components. For more information, see Install SQL Server.
Decide among SQL Server components
Use the Feature Selection page of the [!INCLUDEssNoVersion] Installation Wizard to select the components to include in an installation of [!INCLUDEssNoVersion]. By default, none of the features in the tree are selected.
Use the information in the following tables to determine the set of features that best fits your needs.
Server components
Description
[!INCLUDEssDEnoversion]
[!INCLUDEssDEnoversion] includes the [!INCLUDEssDE], the core service for storing, processing, and securing data, replication, full-text search, tools for managing relational and XML data, in database analytics integration, and PolyBase integration for access to Hadoop and other heterogeneous data sources, and the [!INCLUDEssDQSnoversion] (DQS) server.
[!INCLUDEssASnoversion]
[!INCLUDEssASnoversion] includes the tools for creating and managing online analytical processing (OLAP) and data mining applications.
[!INCLUDEssRSnoversion]
[!INCLUDEssRSnoversion] includes server and client components for creating, managing, and deploying tabular, matrix, graphical, and free-form reports. [!INCLUDEssRSnoversion] is also an extensible platform that you can use to develop report applications.
[!INCLUDEssISnoversion]
[!INCLUDEssISnoversion] is a set of graphical tools and programmable objects for moving, copying, and transforming data. It also includes the [!INCLUDEssDQSnoversion] (DQS) component for [!INCLUDEssISnoversion].
[!INCLUDEssMDSshort]
[!INCLUDEssMDSshort] (MDS) is the [!INCLUDEssNoVersion] solution for master data management. MDS can be configured to manage any domain (products, customers, accounts) and includes hierarchies, granular security, transactions, data versioning, and business rules, as well as an [!INCLUDEssMDSXLS] that can be used to manage data.
Machine Learning Services (In-Database)
Machine Learning Services (In-Database) supports distributed, scalable machine learning solutions using enterprise data sources. In SQL Server 2016, the R language was supported. SQL Server 2017 supports R and Python.
Machine Learning Server (Standalone)
Machine Learning Server (Standalone) supports deployment of distributed, scalable machine learning solutions on multiple platforms and using multiple enterprise data sources, including Linux and Hadoop. In SQL Server 2016, the R language was supported. SQL Server 2017 supports R and Python.
Management tools
Description
[!INCLUDEssManStudioFull]
[!INCLUDEssManStudioFull] is an integrated environment to access, configure, manage, administer, and develop components of [!INCLUDEssNoVersion]. [!INCLUDEssManStudio] lets developers and administrators of all skill levels use [!INCLUDEssNoVersion].
(Formerly called Business Intelligence Development Studio).
Developer and Evaluation Editions For features supported by Developer and Evaluation editions, see features listed for the SQL Server Enterprise Edition in the tables below.
The Developer edition continues to support only 1 client for SQL Server Distributed Replay.
Feature
Enterprise
Standard
Web
Express with Advanced Services
Express
Maximum compute capacity used by a single instance — [!INCLUDEssDEnoversion] 1
Operating system maximum
Limited to lesser of 4 sockets or 24 cores
Limited to lesser of 4 sockets or 16 cores
Limited to lesser of 1 socket or 4 cores
Limited to lesser of 1 socket or 4 cores
Maximum compute capacity used by a single instance — [!INCLUDEssASnoversion] or [!INCLUDEssRSnoversion]
Operating system maximum
Limited to lesser of 4 sockets or 24 cores
Limited to lesser of 4 sockets or 16 cores
Limited to lesser of 1 socket or 4 cores
Limited to lesser of 1 socket or 4 cores
Maximum memory for buffer pool per instance of [!INCLUDEssDEnoversion]
Operating System Maximum
128 GB
64 GB
1410 MB
1410 MB
Maximum capacity for buffer pool extension per instance of [!INCLUDEssDEnoversion]
32 * (max server memory configuration)
4 * (max server memory configuration)
N/A
N/A
N/A
Maximum memory for Columnstore segment cache per instance of [!INCLUDEssDEnoversion]
Unlimited memory
32 GB
16 GB
352 MB
352 MB
Maximum memory-optimized data size per database in [!INCLUDEssDEnoversion]
Unlimited memory
32 GB
16 GB
352 MB
352 MB
Maximum memory utilized per instance of [!INCLUDEssASnoversion]
Operating System Maximum
Tabular: 16 GB
1 Enterprise Edition with Server + Client Access License (CAL) based licensing (not available for new agreements) is limited to a maximum of 20 cores per SQL Server instance. There are no limits under the Core-based Server Licensing model. For more information, see Compute Capacity Limits by Edition of SQL Server.
1 For more information on installing SQL Server on Server Core, see Install SQL Server on Server Core.
2 On Enterprise Edition, the number of nodes is the operating system maximum. On Standard edition there is support for two nodes.
3 On Enterprise Edition, provides support for up to 8 secondary replicas — including 2 synchronous secondary replicas.
4 Standard Edition supports basic availability groups. A basic availability group supports two replicas, with one database. For more information about basic availability groups, see Basic Availability Groups.
1 In-Memory OLTP data size and Columnstore segment cache are limited to the amount of memory specified by edition in the Scale Limits section. The degree of parallelism (DOP) for batch mode operations is limited to 2 for [!INCLUDEssNoVersion] Standard Edition and 1 for [!INCLUDEssNoVersion] Web and Express Editions. This refers to columnstore indexes created over disk-based tables and memory-optimized tables.
2 Aggregate Pushdown, String Predicate Pushdown, and SIMD Optimizations are [!INCLUDEssNoVersion] Enterprise Edition scalability enhancements. For more detail, see Columnstore indexes — what’s new.
3 This feature isn’t included in the LocalDB installation option.
1 SQL Server Web, SQL Server Express, SQL Server Express with Tools, and SQL Server Express with Advanced Services can be profiled using SQL Server Standard and SQL Server Enterprise editions.
2 Tuning enabled only on Standard edition features
1 Basic integration is limited to 2 cores and in-memory data sets.
2 Advanced integration can use all available cores for parallel processing of data sets at any size subject to hardware limits.
3 Scale out with multiple compute nodes requires a head node.
For info about SQL Server Integration Services (SSIS) features supported by the editions of [!INCLUDEssNoVersion_md], see Integration Services Features Supported by the Editions of SQL Server.
Master Data Services
For information about the [!INCLUDEssMDSshort_md] and Data Quality Services features supported by the editions of [!INCLUDEssNoVersion_md], see Master Data Services and Data Quality Services Features Supported by the Editions of SQL Server.
For information about the Analysis Services features supported by the editions of [!INCLUDEssNoVersion_md], see Analysis Services Features Supported by the Editions of SQL Server.
BI semantic model (multidimensional)
For information about the Analysis Services features supported by the editions of [!INCLUDEssNoVersion_md], see Analysis Services Features Supported by the Editions of SQL Server.
BI semantic model (tabular)
For information about the Analysis Services features supported by the editions of [!INCLUDEssNoVersion_md], see Analysis Services Features Supported by the Editions of SQL Server.
Power Pivot for SharePoint
For information about the Power Pivot for SharePoint features supported by the editions of [!INCLUDEssNoVersion_md], see Analysis Services Features Supported by the Editions of SQL Server.
For information about the data mining features supported by the editions of [!INCLUDEssNoVersion_md], see Analysis Services Features Supported by the Editions of SQL Server.
For information about the Reporting Services features supported by the editions of [!INCLUDEssNoVersion_md], see Reporting Services Features Supported by the Editions of SQL Server.
MS SQL Server — Editions
SQL Server is available in various editions. This chapter lists the multiple editions with its features.
Enterprise − This is the top-end edition with a full feature set.
Standard − This has less features than Enterprise, when there is no requirement of advanced features.
Workgroup − This is suitable for remote offices of a larger company.
Web − This is designed for web applications.
Developer − This is similar to Enterprise, but licensed to only one user for development, testing and demo. It can be easily upgraded to Enterprise without reinstallation.
Express − This is free entry level database. It can utilize only 1 CPU and 1 GB memory, the maximum size of the database is 10 GB.
Compact − This is free embedded database for mobile application development. The maximum size of the database is 4 GB.
Datacenter − The major change in new SQL Server 2008 R2 is Datacenter Edition. The Datacenter edition has no memory limitation and offers support for more than 25 instances.
Business Intelligence − Business Intelligence Edition is a new introduction in SQL Server 2012. This edition includes all the features in the Standard edition and support for advanced BI features such as Power View and PowerPivot, but it lacks support for advanced availability features like AlwaysOn Availability Groups and other online operations.
Enterprise Evaluation − The SQL Server Evaluation Edition is a great way to get a fully functional and free instance of SQL Server for learning and developing solutions. This edition has a built-in expiry of 6 months from the time that you install it.
6 редакций MS SQL Server – чем отличаются и какую из них выбрать?
Существует 6 актуальных редакций MS SQL Server – и все они предоставляют разные возможности, так как предназначены для решения разных задач. Если ошибиться с выбором, можно переплатить или закрыть не весь функционал, который Вам необходим.
В общем, хороший специалист должен точно знать, на какой редакции остановиться – не гадать и не искать ответ методом тыка.
Поскольку в Мастер-группу курса Ускорение и оптимизация систем на 1С. Базовый курс, 2022 очень часто поступают вопросы по поводу выбора редакции MS SQL Server, мы решили опубликовать развернутый ответ в виде статьи.
Да, описание всех этих редакций можно найти в интернете. Но в статьях, которые выдает поиск, либо слишком много лишней информации, через которую нужно продираться, либо нет нужных ответов.
Считаем – если вопросы есть, значит, нужно помочь коллегам разобраться 🙂
Мы постарались написать объяснение максимально простым и понятным языком и нарисовали схему для удобства.
Итак, разберем актуальные редакции, их возможности и ограничения.
На данный момент существует 6 редакций MS SQL Server:
Express – бесплатный вариант для небольших баз до 10 Гб.
Web – версия для хостеров, провайдеров и поставщиков облачных услуг по модели SaaS. В статье эту редакцию рассматривать не будем ввиду узкой специализации.
Standard – платная версия с некоторыми ограничениями.
Developer – полнофункциональная бесплатная версия для разработки и тестирования.
Evaluation – полнофункциональная бесплатная версия на 180 дней/
Enterprise – полнофункциональная платная версия.
Рассмотрим каждую из них отдельно.
Enterprise
Премиальный продукт с соответствующей ценой и возможностями. Поддерживает все, что можно себе представить, включая перестроение индексов, добавление процессоров и памяти, при этом все вышеперечисленное можно делать, не прекращая работу пользователей.
Максимальные возможности по отказоустойчивости и производительности.
Кому подойдет:
Большим компаниям с большими базами, круглосуточной нагрузкой и высокой ценой простоя.
Standard
Самая популярная и распространенная редакция. Стоит значительно дешевле, чем Enterprise, но имеет чуть меньше возможностей и некоторые ограничения.
Например, буферный пул использует только 128 Гб данных. Также есть ограничения по процессору, используется меньшее из 4 сокетов или 24 ядер (подробно о том, по какому принципу MS SQL выбирает количество ядер и сокетов, мы рассказывали в этой статье).
Здесь уже нет таких вещей, как добавление процессора и памяти на «горячую», но большинству компаний это и не нужно.
Данная редакция используется в подавляющем большинстве случаев.
Кому подойдет:
Большинству малых и средних компаний, которые не работают 24/7 и которые имеют возможность выделить технологическое окно для обслуживания баз.
На этом платные редакции заканчиваются и начинаются бесплатные.
Developer
Данная редакция обладает всеми возможностями Enterprise, но имеет ограничения по использованию. Условия лицензирования допускают применение этой редакции только для разработки, тестирования или демонстрации, но ее нельзя использовать в производственной среде.
Лицензия дает возможность проходить обучение, и при этом редакция не имеет ограничений по времени использования, главное условие – не использовать в производственной среде.
Кому подойдет:
Тем, кто хочет попробовать или протестировать MS SQL, либо проходить обучение.
Этот вариант отлично подходит для разработки, в том числе из дома.
Evaluation
Редакция также обладает всеми возможностями Enterprise, при этом ее можно использовать в качестве рабочего сервера в производственной среде, но не более 180 дней.
Кому подойдет:
Компаниям, которые задумываются о переводе системы на MS SQL с другой СУБД и хотят посмотреть, как поведет себя рабочая, а не тестовая система. Также может подойти, если хотите в рабочих условиях посмотреть на возможности Enterprise.
Express
Бесплатная версия, которую можно использовать в рабочей среде, но при этом есть весьма существенные ограничения по функционалу.
Одна база не может быть больше 10 Гб, а размер буферного пула ограничен 1,4 Гб. Процессорные мощности ограничены меньшим из 1 сокета или 4 ядер.
В данной редакции нет Агента SQL Server, а это означает, что невозможно будет создавать регламентные задания, выполняемые по расписанию. Есть, конечно, варианты обхода этой проблемы, но это требует дополнительных усилий и настройки.
Кому подойдет:
Небольшим компаниям с минимальными требованиями к объему баз. Зачастую пишут, что эта версия подойдет и для обучения, но здесь следует учитывать вышеописанные ограничения. Например, для курса по оптимизации эта версия не подойдет, т.к. объем учебной базы в несколько десятков гигабайт.
Схема редакций MS SQL
Это упрощенная схема различных редакций – ее удобно использовать, чтобы не запутаться в редакциях и их отличиях 🙂
Если вы хотите подробно разобраться в особенностях и отличиях разных редакций, тогда можно ознакомиться с документацией.