sql server что это такое

Введение в MS SQL Server и T-SQL

Что такое SQL Server и T-SQL

SQL Server является одной из наиболее популярных систем управления базами данных (СУБД) в мире. Данная СУБД подходит для самых различных проектов: от небольших приложений до больших высоконагруженных проектов.

SQL Server был создан компанией Microsoft. Первая версия вышла в 1987 году. А текущей версией является версия 2019, которая вышла в 2019 году и которая будет использоваться в текущем руководстве.

SQL Server долгое время был исключительно системой управления базами данных для Windows, однако начиная с версии 16 эта система доступна и на Linux.

SQL Server характеризуется такими особенностями как:

Производительность. SQL Server работает очень быстро.

Надежность и безопасность. SQL Server предоставляет шифрование данных.

Простота. С данной СУБД относительно легко работать и вести администрирование.

Центральным аспектом в MS SQL Server, как и в любой СУБД, является база данных. База данных представляет хранилище данных, организованных определенным способом. Нередко физически база данных представляет файл на жестком диске, хотя такое соответствие необязательно. Для хранения и администрирования баз данных применяются системы управления базами данных (database management system) или СУБД (DBMS). И как раз MS SQL Server является одной из такой СУБД.

Для организации баз данных MS SQL Server использует реляционную модель. Эта модель баз данных была разработана еще в 1970 году Эдгаром Коддом. А на сегодняшний день она фактически является стандартом для организации баз данных.

Реляционная модель предполагает хранение данных в виде таблиц, каждая из которых состоит из строк и столбцов. Каждая строка хранит отдельный объект, а в столбцах размещаются атрибуты этого объекта.

Для идентификации каждой строки в рамках таблицы применяется первичный ключ (primary key). В качестве первичного ключа может выступать один или несколько столбцов. Используя первичный ключ, мы можем ссылаться на определенную строку в таблице. Соответственно две строки не могут иметь один и тот же первичный ключ.

Через ключи одна таблица может быть связана с другой, то есть между двумя таблицами могут быть организованы связи. А сама таблица может быть представлена в виде отношения («relation»).

Для взаимодействия с базой данных применяется язык SQL (Structured Query Language). Клиент (например, внешняя программа) отправляет запрос на языке SQL посредством специального API. СУБД должным образом интерпретирует и выполняет запрос, а затем посылает клиенту результат выполнения.

Изначально язык SQL был разработан в компании IBM для системы баз данных, которая называлась System/R. При этом сам язык назывался SEQUEL (Structured English Query Language). Хотя в итоге ни база данных, ни сам язык не были впоследствии официально опубликованы, по традиции сам термин SQL нередко произносят как «сиквел».

В 1979 году компания Relational Software Inc. разработала первую систему управления баз данных, которая называлась Oracle и которая использовала язык SQL. В связи с успехом данного продукта компания была переименована в Oracle.

Впоследствии стали появляться другие системы баз данных, которые использовали SQL. В итоге в 1989 году Американский Национальный Институт Стандартов (ANSI) кодифицировал язык и опубликовал его первый стандарт. После этого стандарт периодически обновлялся и дополнялся. Последнее его обновление состоялось в 2011 году. Но несмотря на наличие стандарта нередко производители СУБД используют свои собственные реализации языка SQL, которые немного отличаются друг от друга.

Выделяются две разновидности языка SQL: PL-SQL и T-SQL. PL-SQL используется в таких СУБД как Oracle и MySQL. T-SQL (Transact-SQL) применяется в SQL Server. Собственно поэтому в рамках текущего руководства будет рассматриваться именно T-SQL.

В зависимости от задачи, которую выполняет команда T-SQL, он может принадлежать к одному из следующих типов:

DDL (Data Definition Language / Язык определения данных). К этому типу относятся различные команды, которые создают базу данных, таблицы, индексы, хранимые процедуры и т.д. В общем определяют данные.

В частности, к этому типу мы можем отнести следующие команды:

CREATE : создает объекты базы данных (саму базу даных, таблицы, индексы и т.д.)

ALTER : изменяет объекты базы данных

DROP : удаляет объекты базы данных

TRUNCATE : удаляет все данные из таблиц

К этому типу относятся следующие команды:

SELECT : извлекает данные из БД

UPDATE : обновляет данные

INSERT : добавляет новые данные

DELETE : удаляет данные

DCL (Data Control Language / Язык управления доступа к данным). К этому типу относят команды, которые управляют правами по доступу к данным. В частности, это следующие команды:

GRANT : предоставляет права для доступа к данным

Источник

Национальная библиотека им. Н. Э. Баумана
Bauman National Library

Персональные инструменты

Microsoft SQL Server

Microsoft SQL Server — система управления реляционными базами данных, разработанная корпорацией Microsoft. Написана на C, С++, C#. Использует язык Transact-SQL, который является реализацией стандарта ANSI/ISO по структурированному языку запросов (SQL) с расширениями.

Содержание

История

Исходный код MS SQL Server (до версии 7.0) основывался на коде Sybase SQL Server, и это позволило Microsoft выйти на рынок баз данных для предприятий, где конкурировали Oracle, IBM, и, позже, сама Sybase. Microsoft, Sybase и Ashton-Tate первоначально объединились для создания и выпуска на рынок первой версии программы, получившей название SQL Server 1.0 для OS/2 (около 1989 года), которая фактически была эквивалентом Sybase SQL Server 3.0 для Unix, VMS и др. Microsoft SQL Server 4.2 был выпущен в 1992 году и входил в состав операционной системы Microsoft OS/2 версии 1.3. Официальный релиз Microsoft SQL Server версии 4.21 для ОС Windows NT состоялся одновременно с релизом самой Windows NT (версии 3.1). Microsoft SQL Server 6.0 был первой версией SQL Server, созданной исключительно для архитектуры NT и без участия в процессе разработки Sybase.

К тому времени, как вышла на рынок ОС Windows NT, Sybase и Microsoft разошлись и следовали собственным моделям программного продукта и маркетинговым схемам. Microsoft добивалась исключительных прав на все версии SQL Server для Windows. Позже Sybase изменила название своего продукта на Adaptive Server Enterprise во избежание путаницы с Microsoft SQL Server. До 1994 года Microsoft получила от Sybase три уведомления об авторских правах как намёк на происхождение Microsoft SQL Server.

После разделения компании сделали несколько самостоятельных релизов программ. SQL Server 7.0 был первым сервером баз данных с настоящим пользовательским графическим интерфейсом администрирования. Для устранения претензий со стороны Sybase в нарушении авторских прав, весь наследуемый код в седьмой версии был переписан.

Версия SQL Server 2005 — была представлена в ноябре 2005 года. Запуск версии происходил параллельно запуску Visual Studio 2005. Существует также «урезанная» версия Microsoft SQL Server — Microsoft SQL Server Express; она доступна для скачивания и может бесплатно распространяться вместе с использующим её программным обеспечением.

С момента выпуска предыдущей версии SQL Server (SQL Server 2000) было осуществлено развитие интегрированной среды разработки и ряда дополнительных подсистем, входящих в состав SQL Server 2005. Изменения коснулись реализации технологии ETL (извлечение, преобразование и загрузка данных), входящей в состав компонента SQL Server Integration Services (SSIS), сервера оповещения, средств аналитической обработки многомерных моделей данных (OLAP) и сбора релевантной информации (обе службы входят в состав Microsoft Analysis Services), а также нескольких служб сообщений, а именно Service Broker и Notification Services. Помимо этого, были произведены улучшения в производительности.

7 августа 2008 года компания Microsoft объявила о выходе новой версии СУБД SQL Server 2008. Именно с этого момента английская версия SQL Server 2008 стала доступна пользователям по различным программам корпоративного лицензирования, таким как Microsoft Enterprise Agreement, Microsoft Enterprise Agreement Subscription, Microsoft Open Value, Microsoft Open Value Subscription, Microsoft Open License.

21 апреля 2010 года корпорация Microsoft объявила о выпуске финальной версии SQL Server 2008 R2.

Версии

История выпусков SQL Server
Версия Год Название Кодовое имя
1.0 (OS/2) 1989 SQL Server 1.0 (16 bit) Ashton-Tate / MS SQL Server
1.1 (OS/2) 1991 SQL Server 1.1 (16 bit)
WinNT 1993 SQL Server 4.21 SQLNT
6.0 1995 SQL Server 6.0 SQL95
6.5 1996 SQL Server 6.5 Hydra
7.0 1998 SQL Server 7.0 Sphinx
1999 SQL Server 7.0 OLAP Tools Palato mania
8.0 2000 SQL Server 2000 Shiloh
8.0 2003 SQL Server 2000 64-bit Liberty
9.0 2005 SQL Server 2005 Yukon
10.0 2008 SQL Server 2008 Katmai
10.25 2010 Azure SQL DB Cloud Database or CloudDB
10.50 2010 SQL Server 2008 R2 Kilimanjaro (aka KJ)
11.0 2012 SQL Server 2012 Denali
12.0 2014 SQL Server In-Memory OLTP Hekaton
14 2016 SQL Server 2016

Используемые технологии

Database Engine

Компонент Database Engine [Источник 1] представляет собой основную службу для хранения, обработки и обеспечения безопасности данных. Этот компонент обеспечивает управляемый доступ к ресурсам и быструю обработку транзакций, что позволяет использовать его даже в самых требовательных корпоративных приложениях обработки данных. Кроме того, компонент Database Engine предоставляет разносторонние средства поддержания высокого уровня доступности.

Службы Data Quality Services

Службы SQL Server Data Quality Services (DQS) [Источник 2] являются решением для очистки данных на основе знаний. Службы DQS позволяют создать базу знаний, а затем выполнить в ней исправление данных и удаление дубликатов с помощью как автоматизированных, так и интерактивных средств. Можно использовать службы справочных данных на основе облачных вычислений, а также создавать решения по управлению данными, где службы DQS будут интегрированы со службами SQL Server Integration Services и Master Data Services.

Службы Analysis Services

Службы Analysis Services [Источник 3] — это платформа аналитических данных и набор средств для бизнес-аналитики на личном уровне, уровне рабочей группы и организации. Серверный и клиентский конструкторы поддерживают стандартные решения OLAP, новые решения для создания табличных моделей, а также самостоятельную аналитику и совместную работу с помощью PowerPivot, Excel и среды SharePoint Server. Службы Службы Analysis Services также включают интеллектуальный анализ данных, который позволяет выявлять закономерности и связи на основе больших объемов данных.

Службы Integration Services

Службы Integration Services [Источник 4] представляют собой платформу для создания высокопроизводительных решений по интеграции данных, в том числе пакетов для хранения данных, обеспечивающих извлечение, преобразование и загрузку данных.

Master Data Services

Master Data Services [Источник 5] — это решение SQL Server для управления основными данными. Решение, построенное на основе Master Data Services, позволяет обеспечить правильность информации, используемой для построения отчетов и выполнения анализа. С помощью Master Data Services можно создать центральный репозиторий основных данных и поддерживать запись этих данных по мере их изменения, защищенную и доступную для аудита.

Читайте также:  Что такое лекарство норбактин
Репликация

Репликация представляет собой набор технологий копирования и распространения данных и объектов баз данных между базами данных, а также синхронизации баз данных для поддержания согласованности. Благодаря репликации данные можно размещать в различных местах, обеспечивая возможность доступа к ним удаленных и мобильных пользователей по локальным или глобальным сетям, посредством коммутируемых и беспроводных соединений, а также через Интернет.

Службы Reporting Services

Службы Reporting Services [Источник 6] предлагают средства создания корпоративных отчетов с поддержкой веб-интерфейса, которые позволяют включать в отчеты данные из различных источников, публиковать отчеты в разнообразных форматах, а также централизованно управлять безопасностью и подписками.

Хранение данных

Хранилище данных представляет собой базу данных, которая представляет собой набор таблиц из типизированных столбцов. SQL Server поддерживает различные типы данных, включая основные, такие как Integer, Float, Decimal, Сhar, Varchar, двоичный, Text и другие.

Дисковое пространство базы данных делится на последовательно пронумерованные страницы, каждая по 8 КБ. Страница является основной единицей ввода / вывода для операций SQL Server. Страница отмечена 96-байтный заголовком, который хранит метаданные о странице, включая номер страницы, тип страницы, свободное пространство на странице и идентификатор объекта, которому они принадлежат. Тип страницы определяет данные, содержащиеся на странице: данные, хранящиеся в базе данных, индекс, карту распределения, карту изменения, которая содержит информацию об изменениях, внесенных в другие страницы с момента последнего резервного копирования или протоколирования, или содержат большие типы данных, такие как изображение или текст.

Для физического хранения таблицы, ее строки разделены на ряд разделов (пронумерованных от 1 до N). Размер раздела определяется пользователем; по умолчанию все строки находятся в одном разделе. Таблица разделена на несколько разделов, чтобы распределить базу данных по кластерам. Строки в каждом разделе хранятся в виде B-дерева или кучи.

Работа с данными

Когда использовать собственный клиент SQL Server

Стандартные технологии отказоустойчивости для MS SQL Server 2017

AlwaysOn

Распределение нагрузки среди всех участников, все участники должны быть по своим характеристикам максимально похожи между собой. В синхронном режиме обеспечивается максимальная надежность передачи данных, однако скорость работы будет равняться скорости работы самого медленного участника. В асинхронном режиме обеспечивается максимальное быстродействие, однако могут возникать рассогласованности данных между участниками, что ведет к более сложной поддержке и вероятности потерять последние изменения в случае сбоя основного участника.

Быстрота переключения в синхронном режиме-практически мгновенно и не требует вмешательства системного администратора и DBA, в асинхронном-зависит от текущего состояния БД-дублей, но обычно в среднем до 5 минут (также можно автоматизировать переключение силами одного DBA без привлечения системного администратора).

Признана Microsoft рекомендуемой технологией для БД. Доступна с лицензией Enterprise от 2012 версии и выше. Доступна с ограничениями с лицензией Standard

Кластеризация

Несмотря на простоту настройки, данное решение ненадежно в виду узкого места в виде единого для всех хранилища данных. В случае выхода из строя хранилища данных, восстановление займет достаточно длительный промежуток времени-более 1 часа. Доступна с лицензией Standard до 2008 версии и выше

Репликация

Любая репликация подразумевает создание системных триггеров на каждую таблицу-участницу, а репликация моментальных снимков будет достаточно сильно нагружать основную БД. Поэтому репликацию моментальных снимков можно делать только в минимальные часы нагрузки БД (например, ночью), что неприемлемо, т к необходим горячий резерв. Репликация слиянием сложна в сопровождении для некоторых системы (например, CRM, NAV), также она не подходит для 1С в виду частого изменения структур БД.

Зеркалирование

Возможна в любом режиме, однако как и при AlwaysOn, синхронный режим обеспечивает максимальную надежность и быстрое переключение, а асинхронный режим дает максимальную скорость работы с основной БД, но возможны рассогласованности данных между всеми участниками, а также переключение не будет мгновенным. Здесь переключение на уровне БД обеспечивает следящий сервер автоматически (при например, нагрузке ЦП более, чем в 50% на основном сервере) или средствами DBA. Подключение же к другому серверу обеспечивается силами системного администратора. Резервная БД при любом типе зеркалирования находится в режиме постоянного восстановления, в следствие чего к ней невозможно обратиться. Режим восстановления БД-полный.

Доставка журналов транзакций

Есть 2 режима-постоянное восстановление на резервном сервере или восстановление с отсрочкой.

Первый режим переводит резервную БД (как и при зеркалировании) в режим постоянного восстанавления и к ней невозможно обратиться.

Второй же режим переводит резервную БД в режим восстановления периодически в момент накатывания обновлений (между накатываниями обновлений резервная БД доступна, но это возможно при условии, что экземпляры MS SQL Server одной версии).

Принцип работы прост:

Переключение можно автоматизировать на уровне БД-силами DBA, а на уровне подключений к серверу-на уровне системного администратора.

Общие сведения об обслуживании установки SQL Server

Установка

Создание базы данных

В составе Microsoft Visual Studio 2008 [Источник 7] находится сервер баз данных Microsoft SQL Server 2005 Express Edition. От полнофункционального сервера данных он отличается только ограничением размера базы данных в 2 гигабайта, что позволяет производить разработку и тестирование приложений баз данных.

Для работы по созданию базы данных и таблиц будем использовать Microsoft SQL Server Management Studio Express. Данный программный продукт является свободнораспространяемым и доступен для скачивания в Интернет.

Создание тестовых таблиц с использованием ISQL

Создание тестовых таблиц с использованием провайдера данных

Удаление SQL Server

Перед удалением SQL Server удалите локальные группы безопасности для компонентов SQL Server. Перед удалением компонентов SQL Server рекомендуется остановить все службы SQL Server. Наличие активных соединений может помешать удалению компонентов. Выполните вход на сервер с учетной записью службы SQL Server или с учетной записью, обладающей аналогичным набором разрешений. Например, можно войти на сервер с учетной записью, входящей в локальную группу администраторов.

Источник

MS SQL Server — Краткое руководство

Эта глава знакомит с SQL Server, обсуждает его использование, преимущества, версии и компоненты.

Что такое SQL Server?

Это программное обеспечение, разработанное Microsoft, которое реализовано на основе спецификации RDBMS.

Это зависит от платформы.

Это и графический интерфейс, и программное обеспечение на основе команд.

Он поддерживает язык SQL (SEQUEL), являющийся продуктом IBM, непроцедурный, общий язык баз данных и язык, не чувствительный к регистру.

Это программное обеспечение, разработанное Microsoft, которое реализовано на основе спецификации RDBMS.

Это зависит от платформы.

Это и графический интерфейс, и программное обеспечение на основе команд.

Он поддерживает язык SQL (SEQUEL), являющийся продуктом IBM, непроцедурный, общий язык баз данных и язык, не чувствительный к регистру.

Использование SQL Server

Версии SQL Server

Версия Год Кодовое имя
6,0 1995 SQL95
6,5 1996 гидра
7,0 1998 сфинкс
8,0 (2000) 2000 Шило
9,0 (2005) 2005 Юкон
10.0 (2008) 2008 Катмай
10,5 (2008 R2) 2010 Килиманджаро
11.0 (2012) 2012 Denali
12 (2014) 2014 Гекатон (изначально), SQL 14 (текущий)

Компоненты SQL Server

SQL Server работает в архитектуре клиент-сервер, поэтому он поддерживает два типа компонентов — (а) рабочая станция и (б) сервер.

Компоненты рабочей станции устанавливаются на каждом устройстве оператора / устройства SQL Server. Это просто интерфейсы для взаимодействия с компонентами Сервера. Пример: SSMS, SSCM, Profiler, BIDS, SQLEM и т. Д.

Серверные компоненты устанавливаются на централизованном сервере. Это услуги. Пример: SQL Server, агент SQL Server, SSIS, SSAS, SSRS, браузер SQL, полнотекстовый поиск SQL Server и т. Д.

Компоненты рабочей станции устанавливаются на каждом устройстве оператора / устройства SQL Server. Это просто интерфейсы для взаимодействия с компонентами Сервера. Пример: SSMS, SSCM, Profiler, BIDS, SQLEM и т. Д.

Серверные компоненты устанавливаются на централизованном сервере. Это услуги. Пример: SQL Server, агент SQL Server, SSIS, SSAS, SSRS, браузер SQL, полнотекстовый поиск SQL Server и т. Д.

Экземпляр SQL Server

Преимущества экземпляров

MS SQL Server — Выпуски

SQL Server доступен в различных редакциях. В этой главе перечислены несколько изданий с его функциями.

Enterprise — это топовая версия с полным набором функций.

Стандартный — в нем меньше возможностей, чем в Enterprise, когда нет необходимости в дополнительных функциях.

Рабочая группа — это подходит для удаленных офисов крупной компании.

Веб — это разработано для веб-приложений.

Разработчик — Это похоже на Enterprise, но лицензировано только одному пользователю для разработки, тестирования и демонстрации. Его можно легко обновить до Enterprise без переустановки.

Экспресс — это бесплатная база данных начального уровня. Он может использовать только 1 процессор и 1 ГБ памяти, максимальный размер базы данных составляет 10 ГБ.

Компактная — это бесплатная встроенная база данных для разработки мобильных приложений. Максимальный размер базы данных составляет 4 ГБ.

Business Intelligence — Business Intelligence Edition — это новое введение в SQL Server 2012. Это издание включает в себя все функции в стандартной редакции и поддержку расширенных функций BI, таких как Power View и PowerPivot, но в нем отсутствует поддержка расширенных функций доступности, таких как группы доступности AlwaysOn. и другие онлайн операции.

Оценка предприятия. Выпуск SQL Server Evaluation Edition — отличный способ получить полностью функциональный и бесплатный экземпляр SQL Server для изучения и разработки решений. Срок действия этой версии составляет 6 месяцев с момента ее установки.

Enterprise — это топовая версия с полным набором функций.

Стандартный — в нем меньше возможностей, чем в Enterprise, когда нет необходимости в дополнительных функциях.

Рабочая группа — это подходит для удаленных офисов крупной компании.

Веб — это разработано для веб-приложений.

Разработчик — Это похоже на Enterprise, но лицензировано только одному пользователю для разработки, тестирования и демонстрации. Его можно легко обновить до Enterprise без переустановки.

Экспресс — это бесплатная база данных начального уровня. Он может использовать только 1 процессор и 1 ГБ памяти, максимальный размер базы данных составляет 10 ГБ.

Компактная — это бесплатная встроенная база данных для разработки мобильных приложений. Максимальный размер базы данных составляет 4 ГБ.

Business Intelligence — Business Intelligence Edition — это новое введение в SQL Server 2012. Это издание включает в себя все функции в стандартной редакции и поддержку расширенных функций BI, таких как Power View и PowerPivot, но в нем отсутствует поддержка расширенных функций доступности, таких как группы доступности AlwaysOn. и другие онлайн операции.

Оценка предприятия. Выпуск SQL Server Evaluation Edition — отличный способ получить полностью функциональный и бесплатный экземпляр SQL Server для изучения и разработки решений. Срок действия этой версии составляет 6 месяцев с момента ее установки.

Читайте также:  болит подколенная ямка что делать
2005 2008 2008 R2 2012 2014
предприятие да да да да
стандарт да да да да
разработчик да да да да
Workgroup да да нет нет
Win Compact Edition — мобильная версия да да да да
Оценка предприятия да да да да
экспресс да да да да
Web да да да
Дата центр нет нет
Бизнес-аналитика да

MS SQL Server — Установка

SQL Server поддерживает два типа установки:

проверки

Требования

Пререквизиты на 2005 год

Предварительные условия для 2008 и 2008R2

Пререквизиты на 2012 и 2014 годы

Шаги установки

После загрузки программного обеспечения будут доступны следующие файлы в зависимости от варианта загрузки (32 или 64-разрядная версия).

Гумилева \ x86 \ SQLFULL_x86_ENU_Core.box

Гумилева \ x86 \ SQLFULL_x86_ENU_Install.exe

Гумилева \ x86 \ SQLFULL_x86_ENU_Lang.box

Гумилева \ x86 \ SQLFULL_x64_ENU_Core.box

Гумилева \ x86 \ SQLFULL_x64_ENU_Install.exe

Гумилева \ x86 \ SQLFULL_x64_ENU_Lang.box

Примечание — X86 (32 бит) и X64 (64 бит)

Шаг 2 — Дважды щелкните «SQLFULL_x86_ENU_Install.exe» или «SQLFULL_x64_ENU_Install.exe», он извлечет необходимые файлы для установки в папку «SQLFULL_x86_ENU» или «SQLFULL_x86_ENU» соответственно.

Шаг 3 — Щелкните папку «SQLFULL_x86_ENU» или «SQLFULL_x64_ENU_Install.exe» и дважды щелкните приложение «SETUP».

Для понимания здесь мы использовали программное обеспечение SQLFULL_x64_ENU_Install.exe.

Шаг 4 — Как только мы нажмем «Настройка» приложения, откроется следующий экран.

Шаг 5 — Нажмите Установка, которая находится в левой части экрана выше.

Шаг 6 — Нажмите на первый вариант правой стороны, показанной на экране выше. Откроется следующий экран.

Шаг 7 — Нажмите OK, и появится следующий экран.

Шаг 8 — Нажмите Далее, чтобы получить следующий экран.

Шаг 9 — Обязательно проверьте выбор ключа продукта и нажмите Далее.

Шаг 10 — Установите флажок, чтобы принять опцию лицензии, и нажмите Далее.

Шаг 11 — Выберите вариант установки компонента SQL Server и нажмите Далее.

Шаг 12 — Установите флажок Службы ядра СУБД и нажмите Далее.

Шаг 13 — Введите именованный экземпляр (здесь я использовал TestInstance) и нажмите Next.

Шаг 14 — Нажмите Next на приведенном выше экране, и появится следующий экран.

Шаг 15 — Выберите имена учетных записей служб и типы запуска для вышеперечисленных служб и нажмите Сортировка.

Шаг 16 — Убедитесь, что выбран правильный параметр сортировки и нажмите Далее.

Шаг 17 — Убедитесь, что выбран режим аутентификации и администраторы проверены, и нажмите «Каталоги данных».

Шаг 18 — Обязательно выберите вышеуказанные каталоги и нажмите «Далее». Появится следующий экран.

Шаг 19 — Нажмите Далее на приведенном выше экране.

Шаг 20 — Нажмите Далее на приведенном выше экране, чтобы получить следующий экран.

Шаг 21 — Убедитесь, что правильно проверили вышеуказанный выбор и нажмите «Установить».

Установка прошла успешно, как показано на приведенном выше экране. Нажмите Закрыть, чтобы закончить.

MS SQL Server — Архитектура

Для удобства понимания мы классифицировали архитектуру SQL Server на следующие части:

Общая архитектура

Клиент — где запрос инициирован.

Запрос — SQL-запрос на языке высокого уровня.

Логические единицы — ключевые слова, выражения и операторы и т. Д.

N / W Packets — Код, связанный с сетью.

Протоколы — в SQL Server у нас есть 4 протокола.

Общая память (для локальных подключений и устранения неполадок).

Именованные каналы (для соединений, которые находятся в локальной сети).

TCP / IP (для соединений, подключенных к глобальной сети).

Адаптер виртуального интерфейса VIA (требуется специальное оборудование для настройки поставщиком, а также устаревший из версии SQL 2012).

Общая память (для локальных подключений и устранения неполадок).

Именованные каналы (для соединений, которые находятся в локальной сети).

TCP / IP (для соединений, подключенных к глобальной сети).

Адаптер виртуального интерфейса VIA (требуется специальное оборудование для настройки поставщиком, а также устаревший из версии SQL 2012).

Сервер — где установлены службы SQL и базы данных.

Relational Engine — это то место, где будет выполнено реальное выполнение. Он содержит анализатор запросов, оптимизатор запросов и исполнитель запросов.

Query Parser (Command Parser) и Compiler (Translator) — это проверит синтаксис запроса и преобразует запрос в машинный язык.

Оптимизатор запросов — он подготавливает план выполнения в качестве вывода, принимая запрос, статистику и дерево алгебры в качестве входных данных.

План выполнения — это похоже на план, который содержит порядок всех шагов, которые должны быть выполнены как часть выполнения запроса.

Query Executor — здесь запрос будет выполняться шаг за шагом с помощью плана выполнения, а также будет связываться с механизмом хранения.

Storage Engine — отвечает за хранение и извлечение данных в системе хранения (диск, SAN и т. Д.), Манипулирование данными, блокировку и управление транзакциями.

ОС SQL — это находится между хост-машиной (ОС Windows) и SQL Server. Все действия, выполняемые с ядром базы данных, выполняются операционной системой SQL. Операционная система SQL предоставляет различные сервисы операционной системы, такие как управление памятью, пул буферов, буфер журналов и обнаружение взаимоблокировок с использованием структуры блокировки и блокировки.

Процесс контрольной точки — контрольная точка — это внутренний процесс, который записывает все грязные страницы (измененные страницы) из буферного кэша на физический диск. Помимо этого, он также записывает записи журнала из буфера журнала в физический файл. Запись грязных страниц из буферного кэша в файл данных также называется усилением грязных страниц.

Это выделенный процесс, который автоматически запускается SQL Server через определенные промежутки времени. SQL Server запускает процесс проверки для каждой базы данных в отдельности. Контрольная точка помогает сократить время восстановления SQL Server в случае неожиданного завершения работы или сбоя системы \ сбоя.

Контрольные точки в SQL Server

В SQL Server 2012 есть четыре типа контрольных точек

Автоматически — это самая распространенная контрольная точка, которая выполняется как фоновый процесс, чтобы обеспечить возможность восстановления базы данных SQL Server в течение срока, определенного параметром «Интервал восстановления — Настройка сервера».

Косвенный — это новый компонент в SQL Server 2012. Он также работает в фоновом режиме, но соответствует заданному пользователем целевому времени восстановления для конкретной базы данных, в которой был настроен параметр. Как только Target_Recovery_Time для данной базы данных будет выбран, это переопределит Интервал Восстановления, указанный для сервера, и исключит автоматическую контрольную точку в такой БД.

Вручную — эта команда запускается так же, как и любая другая инструкция T-SQL, после того, как вы введете команду контрольной точки, она будет выполнена до конца. Ручная контрольная точка работает только для вашей текущей базы данных. Вы также можете указать Checkpoint_Duration, который является необязательным — эта продолжительность указывает время, в которое вы хотите, чтобы ваша контрольная точка завершилась.

Внутренний — как пользователь, вы не можете контролировать внутреннюю контрольную точку. Выдается на конкретных операциях, таких как

Завершение работы инициирует операцию контрольной точки во всех базах данных, кроме случаев, когда выключение не является чистым (завершение работы с nowait).

Если модель восстановления изменяется с Full \ Bulk-logged на Simple.

Принимая резервную копию базы данных.

Если ваша БД находится в простой модели восстановления, процесс контрольной точки выполняется автоматически либо при заполнении журнала на 70%, либо на основе параметра сервера — Интервал восстановления.

Команда изменения базы данных для добавления или удаления файла данных \ журнала также запускает контрольную точку.

Контрольная точка также имеет место, когда модель восстановления базы данных записана в массовом режиме и выполняется минимально зарегистрированная операция.

Создание снимка БД.

Lazy Writer ProcessLazy Writer будет выгружать грязные страницы на диск по совершенно другой причине, потому что ему нужно освободить память в пуле буферов. Это происходит, когда SQL-сервер находится под давлением памяти. Насколько я знаю, это контролируется внутренним процессом, и нет никаких настроек для этого.

Автоматически — это самая распространенная контрольная точка, которая выполняется как фоновый процесс, чтобы обеспечить возможность восстановления базы данных SQL Server в течение срока, определенного параметром «Интервал восстановления — Настройка сервера».

Косвенный — это новый компонент в SQL Server 2012. Он также работает в фоновом режиме, но соответствует заданному пользователем целевому времени восстановления для конкретной базы данных, в которой был настроен параметр. Как только Target_Recovery_Time для данной базы данных будет выбран, это переопределит Интервал Восстановления, указанный для сервера, и исключит автоматическую контрольную точку в такой БД.

Вручную — эта команда запускается так же, как и любая другая инструкция T-SQL, после того, как вы введете команду контрольной точки, она будет выполнена до конца. Ручная контрольная точка работает только для вашей текущей базы данных. Вы также можете указать Checkpoint_Duration, который является необязательным — эта продолжительность указывает время, в которое вы хотите, чтобы ваша контрольная точка завершилась.

Внутренний — как пользователь, вы не можете контролировать внутреннюю контрольную точку. Выдается на конкретных операциях, таких как

Завершение работы инициирует операцию контрольной точки во всех базах данных, кроме случаев, когда выключение не является чистым (завершение работы с nowait).

Если модель восстановления изменяется с Full \ Bulk-logged на Simple.

Принимая резервную копию базы данных.

Если ваша БД находится в простой модели восстановления, процесс контрольной точки выполняется автоматически либо при заполнении журнала на 70%, либо на основе параметра сервера — Интервал восстановления.

Команда изменения базы данных для добавления или удаления файла данных \ журнала также запускает контрольную точку.

Контрольная точка также имеет место, когда модель восстановления базы данных записана в массовом режиме и выполняется минимально зарегистрированная операция.

Создание снимка БД.

Lazy Writer ProcessLazy Writer будет выгружать грязные страницы на диск по совершенно другой причине, потому что ему нужно освободить память в пуле буферов. Это происходит, когда SQL-сервер находится под давлением памяти. Насколько я знаю, это контролируется внутренним процессом, и нет никаких настроек для этого.

SQL-сервер постоянно следит за использованием памяти, чтобы оценить конфликт ресурсов (или доступность); его задача заключается в том, чтобы всегда было определенное количество свободного места. Как часть этого процесса, когда он замечает любой такой конфликт ресурсов, он запускает Lazy Writer для освобождения некоторых страниц в памяти путем записи грязных страниц на диск. Он использует алгоритм Least недавно Used (LRU), чтобы решить, какие страницы должны быть сброшены на диск.

Если Lazy Writer всегда активен, это может указывать на узкое место в памяти.

Архитектура памяти

Ниже приведены некоторые характерные особенности архитектуры памяти.

Одной из основных целей проектирования всего программного обеспечения для баз данных является минимизация дискового ввода-вывода, поскольку чтение и запись на диск являются одними из наиболее ресурсоемких операций.

Читайте также:  Что такое лен джут

Память в окнах может быть вызвана с помощью виртуального адресного пространства, совместно используемого режимом ядра (режим ОС) и режимом пользователя (приложение, такое как SQL Server).

SQL Server «Адресное пространство пользователя» разбит на две области: MemToLeave и Buffer Pool.

Размер MemToLeave (MTL) и пула буферов (BPool) определяется SQL Server во время запуска.

Управление буфером является ключевым компонентом в достижении высокой эффективности ввода / вывода. Компонент управления буфером состоит из двух механизмов: диспетчера буфера для доступа и обновления страниц базы данных и пула буферов для уменьшения количества операций ввода-вывода файла базы данных.

Буферный пул разделен на несколько разделов. Наиболее важными из них являются буферный кеш (также называемый кешем данных) и кеш процедур. Буферный кеш хранит страницы данных в памяти, так что часто используемые данные могут быть извлечены из кеша. Альтернативой будет чтение страниц данных с диска. Чтение страниц данных из кэша оптимизирует производительность, сводя к минимуму количество необходимых операций ввода-вывода, которые по своей природе медленнее, чем извлечение данных из памяти.

Кэш процедур хранит хранимые процедуры и планы выполнения запросов, чтобы минимизировать количество раз, когда планы запросов должны быть сгенерированы. Вы можете узнать информацию о размере и активности в кэше процедур, используя инструкцию DBCC PROCCACHE.

Одной из основных целей проектирования всего программного обеспечения для баз данных является минимизация дискового ввода-вывода, поскольку чтение и запись на диск являются одними из наиболее ресурсоемких операций.

Память в окнах может быть вызвана с помощью виртуального адресного пространства, совместно используемого режимом ядра (режим ОС) и режимом пользователя (приложение, такое как SQL Server).

SQL Server «Адресное пространство пользователя» разбит на две области: MemToLeave и Buffer Pool.

Размер MemToLeave (MTL) и пула буферов (BPool) определяется SQL Server во время запуска.

Управление буфером является ключевым компонентом в достижении высокой эффективности ввода / вывода. Компонент управления буфером состоит из двух механизмов: диспетчера буфера для доступа и обновления страниц базы данных и пула буферов для уменьшения количества операций ввода-вывода файла базы данных.

Буферный пул разделен на несколько разделов. Наиболее важными из них являются буферный кеш (также называемый кешем данных) и кеш процедур. Буферный кеш хранит страницы данных в памяти, так что часто используемые данные могут быть извлечены из кеша. Альтернативой будет чтение страниц данных с диска. Чтение страниц данных из кэша оптимизирует производительность, сводя к минимуму количество необходимых операций ввода-вывода, которые по своей природе медленнее, чем извлечение данных из памяти.

Кэш процедур хранит хранимые процедуры и планы выполнения запросов, чтобы минимизировать количество раз, когда планы запросов должны быть сгенерированы. Вы можете узнать информацию о размере и активности в кэше процедур, используя инструкцию DBCC PROCCACHE.

Другие части буферного пула включают в себя —

Структуры данных системного уровня. Содержит данные уровня экземпляра SQL Server о базах данных и блокировках.

Кэш журнала — зарезервирован для чтения и записи страниц журнала транзакций.

Контекст соединения. Каждое соединение с экземпляром имеет небольшую область памяти для записи текущего состояния соединения. Эта информация включает в себя хранимые процедуры и параметры пользовательских функций, позиции курсора и многое другое.

Пространство стека — Windows выделяет пространство стека для каждого потока, запускаемого SQL Server.

Структуры данных системного уровня. Содержит данные уровня экземпляра SQL Server о базах данных и блокировках.

Кэш журнала — зарезервирован для чтения и записи страниц журнала транзакций.

Контекст соединения. Каждое соединение с экземпляром имеет небольшую область памяти для записи текущего состояния соединения. Эта информация включает в себя хранимые процедуры и параметры пользовательских функций, позиции курсора и многое другое.

Пространство стека — Windows выделяет пространство стека для каждого потока, запускаемого SQL Server.

Архитектура Файла Данных

Архитектура Файла Данных имеет следующие компоненты —

Файловые группы

Файлы базы данных могут быть сгруппированы в группы файлов для целей размещения и администрирования. Ни один файл не может быть членом более чем одной файловой группы. Файлы журнала никогда не входят в файловую группу. Пространство журнала управляется отдельно от пространства данных.

Существует два типа групп файлов в SQL Server: основной и пользовательский. Первичная файловая группа содержит первичный файл данных и любые другие файлы, специально не назначенные другой файловой группе. Все страницы для системных таблиц размещаются в основной группе файлов. Пользовательские файловые группы — это любые файловые группы, указанные с помощью ключевого слова file file group в операторе create database или alter database.

Одна файловая группа в каждой базе данных работает как файловая группа по умолчанию. Когда SQL Server выделяет страницу для таблицы или индекса, для которых при создании не было указано ни одной группы файлов, страницы выделяются из группы файлов по умолчанию. Чтобы переключить файловую группу по умолчанию из одной файловой группы в другую файловую группу, она должна иметь фиксированную роль db_owner.

По умолчанию основная файловая группа является файловой группой по умолчанию. Пользователь должен иметь предопределенную роль базы данных db_owner, чтобы выполнять резервное копирование файлов и групп файлов по отдельности.

файлы

Базы данных имеют три типа файлов: первичный файл данных, вторичный файл данных и файл журнала. Первичный файл данных является отправной точкой базы данных и указывает на другие файлы в базе данных.

Расположение всех файлов в базе данных записывается как в основной базе данных, так и в основном файле базы данных. В большинстве случаев ядро ​​базы данных использует местоположение файла из базы данных master.

Файлы имеют два имени — логическое и физическое. Логическое имя используется для ссылки на файл во всех операторах T-SQL. Физическое имя OS_file_name, оно должно соответствовать правилам ОС. Файлы данных и журналов могут быть размещены в файловых системах FAT или NTFS, но не могут быть размещены в сжатых файловых системах. В одной базе данных может быть до 32 767 файлов.

Extents

Экстенты являются базовой единицей, в которой пространство выделяется для таблиц и индексов. Экстент составляет 8 смежных страниц или 64 КБ. SQL Server имеет два типа экстентов — Унифицированный и Смешанный. Унифицированные экстенты состоят только из одного объекта. Смешанные экстенты совместно используются до восьми объектов.

страницы

Это фундаментальная единица хранения данных в MS SQL Server. Размер страницы составляет 8 КБ. Начало каждой страницы — 96-байтовый заголовок, используемый для хранения системной информации, такой как тип страницы, объем свободного места на странице и идентификатор объекта объекта, владеющего страницей. В SQL Server существует 9 типов страниц данных.

Данные — строки данных со всеми данными, кроме текста, текста и данных изображения.

Индекс — индекс записей.

Текст \ Изображение — текст, изображение и текстовые данные.

GAM — информация о выделенных экстентах.

SGAM — информация о выделенных экстентах на системном уровне.

Page Free Space (PFS) — Информация о свободном пространстве, доступном на страницах.

Карта распределения индекса (IAM) — информация об экстентах, используемых таблицей или индексом.

Массовая измененная карта (BCM) — информация об экстентах, измененных массовыми операциями со времени последнего оператора журнала резервного копирования.

Дифференциально измененная карта (DCM) — информация об экстентах, которые изменились со времени последнего оператора резервного копирования базы данных.

Данные — строки данных со всеми данными, кроме текста, текста и данных изображения.

Индекс — индекс записей.

Текст \ Изображение — текст, изображение и текстовые данные.

GAM — информация о выделенных экстентах.

SGAM — информация о выделенных экстентах на системном уровне.

Page Free Space (PFS) — Информация о свободном пространстве, доступном на страницах.

Карта распределения индекса (IAM) — информация об экстентах, используемых таблицей или индексом.

Массовая измененная карта (BCM) — информация об экстентах, измененных массовыми операциями со времени последнего оператора журнала резервного копирования.

Дифференциально измененная карта (DCM) — информация об экстентах, которые изменились со времени последнего оператора резервного копирования базы данных.

Архитектура файла журнала

Журнал транзакций SQL Server работает логически, как если бы журнал транзакций представлял собой строку записей журнала. Каждая запись журнала идентифицируется по порядковому номеру журнала (LSN). Каждая запись журнала содержит идентификатор транзакции, которой она принадлежит.

Записи журнала для изменений данных записывают либо выполненную логическую операцию, либо они записывают образы измененных данных до и после. Предыдущее изображение является копией данных перед выполнением операции; последующее изображение является копией данных после выполнения операции.

Действия по восстановлению операции зависят от типа записи журнала.

Различные типы операций записываются в журнал транзакций. Эти операции включают в себя —

Начало и конец каждой транзакции.

Каждое изменение данных (вставить, обновить или удалить). Это включает в себя изменения с помощью системных хранимых процедур или операторов языка определения данных (DDL) для любой таблицы, включая системные таблицы.

Каждый экстент и распределение страниц или де-распределение.

Создание или удаление таблицы или индекса.

Начало и конец каждой транзакции.

Каждое изменение данных (вставить, обновить или удалить). Это включает в себя изменения с помощью системных хранимых процедур или операторов языка определения данных (DDL) для любой таблицы, включая системные таблицы.

Каждый экстент и распределение страниц или де-распределение.

Создание или удаление таблицы или индекса.

Операции отката также регистрируются. Каждая транзакция резервирует пространство в журнале транзакций, чтобы убедиться, что в журнале достаточно места для поддержки отката, вызванного либо явным оператором отката, либо в случае возникновения ошибки. Это зарезервированное пространство освобождается после завершения транзакции.

Раздел файла журнала из первой записи журнала, который должен присутствовать для успешного отката всей базы данных к последней записанной записи журнала, называется активной частью журнала или активным журналом. Это раздел журнала, необходимый для полного восстановления базы данных. Ни одна часть активного журнала не может быть усечена. LSN этой первой записи журнала известен как минимальный LSN восстановления (Min LSN).

Механизм базы данных SQL Server разделяет каждый физический файл журнала внутри на несколько виртуальных файлов журнала. Виртуальные файлы журнала не имеют фиксированного размера, и для физического файла журнала не существует фиксированного количества файлов виртуального журнала.

Компонент Database Engine выбирает размер файлов виртуального журнала динамически при создании или расширении файлов журнала. Компонент Database Engine пытается поддерживать небольшое количество виртуальных файлов. Размер или количество виртуальных файлов журнала не могут быть настроены или установлены администраторами. Единственный раз, когда виртуальные файлы журнала влияют на производительность системы, это если физические файлы журнала определяются значениями small size и growth_increment.

Источник

Информ портал о технике и не только