Microsoft SQL Server: работа с базами данных
Наши пользователи могут использовать базы данных Microsoft SQL Server 2016 на своих виртуальных площадках в рамках, предусмотренных соответствующими тарифами.
Параметры и способы соединения с Microsoft SQL Server
- Имя хоста (сервера), на котором размещена база данных Microsoft SQL Server: uXXXXX.mssql.masterhost.ru;
- Порт: 1433;
- Логин: соответствует названию виртуальной площадки — uXXXXX;
- Пароль: указан в письме, которое пользователь получает при регистрации;
- Имя базы данных: соответствует названию виртуальной площадки — uXXXXX;
- Подключение нужно осуществлять по протоколу TCP/IP.
Подключение к SQL-серверу через «Microsoft SQL Server Management Studio Express»
Чтобы получить доступ к базе данных Microsoft SQL Server, возможно использовать Microsoft SQL Server Management Studio Express .
В параметрах выберите в качестве сетевого протокола TCP/IP.
Создание новой базы данных
Новую базу данных вы можете создать через раздел Услуги, в Личном кабинете. Выберите нужную «виртуальную площадку», далее в разделе «MS SQL» нажать на кнопку «+ База MS SQL». Затем вам необходимо указать имя (логин) и выбрать владельца новой базы.
Использовать Microsoft SQL Server Management Studio для создания новых баз данных нельзя.
Создание нового логина
Создать новый логин для базы данных Microsoft SQL вы можете через раздел Услуги, в Личном кабинете. Выберите нужную «виртуальную площадку», далее в разделе «MS SQL» нажать на кнопку «+ Пользователь MS SQL». Затем вам необходимо указать имя (логин) для нового пользователя.
Уменьшение физического размера файлов баз данных и лога транзакций MS SQL Server.
- Из графического интерфейса Microsoft SQL Server Management Studio:
- В обозревателе объектов подключитесь к экземпляру Microsoft SQL Server, 2016 Web Edition и разверните его.
- Разверните узел «Базы данных», затем правой кнопкой мыши щелкните базу данных, которую нужно сжать.
- В меню «Задачи» выберите «Сжать» и щелкните «База данных». Или установите флажок «Реорганизовать файлы перед освобождением неиспользуемого места». Если он установлен, необходимо указать значение параметра «Максимально доступное свободное место в файлах после сжатия».
DBCC SHRINKFILE (N'uXXXXXX.Log' , 0, TRUNCATEONLY) DBCC SHRINKDATABASE (N'uXXXXXX')
Изменение кодировки сравнения (collation)
По умолчанию кодировка collation выставлена как Cyrillic_General_CI_AS, изменить кодировку для сравнений можно следующим SQL-запросом:
ALTER DATABASE [uXXXXX] COLLATE SQL_Latin1_General_CP1251_CS_AS GO
где uXXXXX — имя БД, где требуется данная операция.
Список доступных кодировок можно узнать так:
SELECT * FROM ::fn_helpcollations()
Как дать права на доступ к базе определенному логину
Для SQL — дополнительный SQL логин, но настраивать права нужно самому: Заводим еще один SQL логин — uXXX_Ann
Для начала используем нашу базу:
USE [uXXXX] GO
Создаем пользователя для определенного «логина»:
CREATE USER [InetUser] FOR LOGIN [uXXX_Ann] GO
Наделяем его правами (например только чтение таблиц):
EXEC sp_addrolemember N'db_datareader', N'InetUser' GO
Или можем дать пользователю только конкретные права, на конкретные таблицы. Например, давайте дадим пользователю InetUser права на SELECT, INSERT, UPDATE для таблицы test, следующим SQL-запросом :
USE [uXXXXXX] GO GRANT SELECT ON [dbo].[test] TO [InetUser] GO GRANT INSERT ON [dbo].[test] TO [InetUser] GO GRANT UPDATE ON [dbo].[test] TO [InetUser] GO
При всем при этом, при осуществлении доступа через SQL Management Studio, под дополнительным логином не являющимся владельцем базы, не будет видно базу данных в списке доступных баз, но будет возможность выполнять разрешенные SQL-запросы .
Как получить раскладку по размеру таблиц в базе
Это можно сделать следующим SQL-запросом:
SET NOCOUNT ON DBCC UPDATEUSAGE(0) -- DB size. EXEC sp_spaceused -- Table row counts and sizes. CREATE TABLE #t ( [name] NVARCHAR(128), [rows] CHAR(11), reserved VARCHAR(18), data VARCHAR(18), index_size VARCHAR(18), unused VARCHAR(18) ) INSERT #t EXEC sp_msForEachTable 'EXEC sp_spaceused ''?''' SELECT * FROM #t -- # of rows. SELECT SUM(CAST([rows] AS int)) AS [rows] FROM #t DROP TABLE #t
Основы работы с MSSQL
MSSQL (Microsoft SQL Server) является системой администрирования баз данных, выпущенной Microsoft в 1989 году. В этой библиотеке используется Transact-SQL, расширенный язык SQL-запросов.
MSSQL Server подойдёт:
- для управления базами масштабных предприятий,
- если ПО проекта требует обращения к MSSQL,
- при нехватке функционала MySQL,
- для использования не только в веб-проектах, но и в desktop-программах.
Система управления баз данных MSSQL представлена в нескольких редакциях (Enterprise, Standard, Express, Developer). О том, чем отличаются данные выпуски, вы можете узнать на официальном сайте Microsoft.
Версии MSSQL на хостинге Рег.ру
Если у вас заказан Windows-хостинг, вам доступна версия Microsoft SQL Server 2017 Web Edition c возможностью работы в режиме совместимости с SQL Server 2008. Изменить версию MSSQL на виртуальном хостинге Рег.ру невозможно.
Как создать базу данных MSSQL
Перейдите в раздел «Базы данных» и нажмите Добавить базу данных:
- Имя базы данных,
- Сервер баз данных — выберите localhost (по умолчанию для MS SQL),
- Соответствующий сайт,
- Имя пользователя базы данных,
- Пароль.
Нажмите ОК:
Готово, вы создали базу данных MSSQL.
Удалённый доступ к MSSQL
Скачайте на локальный компьютер SQL Server Management Studio (SSMS) версии 2017 и выше с официального сайта Microsoft:
Установите скачанный дистрибутив, следуя инструкции в установщике:
- Тип сервера — Ядро СУБД;
- Имя сервера — имя сервера, на котором располагается ваша услуга хостинга. Его можно найти в информационном письме, которое присылается при заказе, или в личном кабинете (страница услуги хостинга — вкладка «Управление» — поле «Сервер хостинга»);
- Проверка подлинности — Проверка подлинности SQL Server;
- Имя для входа — имя пользователя базы данных, к которой вы подключаетесь;
- Пароль — пароль пользователя базы данных.
Нажмите Соединить:
Готово, вы установили MS SQL Management Studio и настроили к базам данных MSSQL удалённый доступ.
Как отфильтровать базы данных в выпадающем списке MS SQL Management Studio
По умолчанию в MS SQL Management Studio в списке «Базы данных» показываются все базы данных, хранящиеся на сервере. Для удобства вы можете отфильтровать базы данных по имени и вывести только свои. Для этого:
В Обозревателе объектов кликните правой кнопкой мыши по папке Базы данных. Нажмите Фильтр — Настройки фильтра:
В открывшемся окне «Параметры фильтра» введите Имя базы данных. Нажмите ОК:
Готово, теперь в папке «Базы данных» будет показываться только ваша база данных.
Что делать, если превышен лимит на размер базы данных
На всех тарифах хостинга Рег.ру максимальный размер базы данных составляет 4 Гб. Если размер базы превысит 3 Гб, вам будут высланы уведомления. При превышении максимального размера (4 Гб) высылается предупреждение с последующей блокировкой до момента устранения проблемы.
Как снять блокировку, если доступ сайтам уже ограничен
При ограничении доступа на все ваши сайты устанавливается форма базовой аутентификации. Для получения доступа к сайту введите Имя пользователя «regru» и Пароль «regru»:
Чтобы снять блокировку, необходимо устранить её причину — уменьшить размер базы данных по инструкции ниже. После этого блокировка будет автоматически снята при следующей проверке. Проверка осуществляется раз в сутки преимущественно в ночное время.
Как уменьшить размер базы данных MSSQL
Чаще всего большое количество дискового пространства занимает лог транзакций базы данных. Для сжатия лога транзакций выполните следующие шаги:
Для этого в Обозревателе объектов перейдите в папку Базы данных, кликните правой кнопкой мыши по нужной базе данных и нажмите Свойства:
В выпадающем списке «Модель восстановления» выберите Простая:
Проверьте, что занимает больше всего места в базе данных. Для этого в открытом окне выберите Файлы. В столбце Размер (МБ) указано количество занимаемого пространства. Если вы видите, что много места занимает журнал, переходите к следующему шагу. Если же большую часть места занимают данные, рекомендуем обратиться к разработчикам сайта для оптимизации/чистки таблиц базы данных. Нажмите OK:
Для сжатия лога транзакций вам необходимо иметь права db_owner. Проверьте наличие этих прав. Для этого в Обозревателе объектов перейдите в папку Безопасность — Имена для входа, кликните правой кнопкой мыши по пользователю базы данных и нажмите Свойства:
В открывшемся окне выберите Сопоставление пользователей. Кликните по имени базы данных и проверьте чекбокс db_owner. Если флаг на db_owner не установлен, запросите права в заявке в техническую поддержку. Нажмите OK:
Перейдите к сжатию базы данных. Нажмите Создать запрос. Скопируйте SQL-запрос в поле:
USE u1234567_name; GO DBCC SHRINKFILE(u1234567_name_log,100,TRUNCATEONLY); GO
Вместо u1234567_name укажите название вашей базы данных, вместоu1234567_name_log — логическое имя лога. Его можно найти в столбце Логическое имя в строке с журналом (шаг 4). Обратите внимание, что физическое имя лога транзакций может отличаться от логического.
Затем нажмите Выполнить:
Готово, вы уменьшили размер базы данных MSSQL.
Работа с SQL Server в C# с помощью скриптинга. Часть 1
В этой статье я покажу вам, как работать с Microsoft SQL Server в C# проектах посредством скриптинга. Реализовать это можно как в Windows, так и в macOS. Поскольку Windows, очевидно, является намного более популярной целевой платформой для C# и SQL Server, больше внимания я уделю настройке под macOS. В конце концов, код для этих платформ будет одним и тем же.
Доступ к инстансу SQL Server с помощью скриптинга на самом деле дает множество преимуществ. Вот только несколько, из преимуществ, которые вы получите, настроив среду для выполнения скриптов:
- Доступ к SQL Server с помощью скриптинга предполагает гораздо меньше кода. Большую часть функций можно факторизировать. Один оператор на скриптовом языке может выполнять под капотом множество C# операторов — язык скриптинга по сути выполняет роль функционального языка.
- Любой SQL-оператор, который вы можете использовать напрямую с SQL Server, также может быть использован и в скриптах. Основным преимуществом здесь является то, что, если в ваш проект интегрирован Scripting Engine (обработчик скриптов), то вы можете запускать любой оператор SQL Server во время выполнения.
- Синтаксис скриптового языка может быть не только лаконичнее, проще и точнее, но он также полностью зависит от того, как вы сами решили определить этот синтаксис. Это преимущество раскрывается в полной мере, если вы используете скриптовый язык с открытым исходным кодом.
Простота не предшествует сложности, а вытекает из нее. – Алан Перлис (Alan Perlis)
Но я сразу хочу отметить, что существует один существенный недостаток, связанный с использованием скриптов, а именно накладные расходы на парсинг выражений. В этой статье я продемонстрирую вам, как уменьшить эти накладные расходы, используя в качестве примера вставку нескольких строк в базу данных.
В качестве языка скриптинга я буду использовать CSCS (Customized Scripting для C#). Я уже рассказывал об этом языке в нескольких мои предыдущих статьях для CODE Magazine (вы можете найти ссылки на них в конце этой статьи). CSCS — это скриптовый язык с открытым исходным кодом, который очень легко интегрировать в ваш C# проект. Открытый исходный код дает вам оговоренное выше преимущество в виде возможности модифицирования его в процессе разработки.
Среди прочего, я собираюсь раскрыть в этой статье следующие темы:
- Работа с SQL Server в macOS, где будут выполняться все примеры, приведенные в этой статье (код CSCS идентичен в macOS и в Windows).
- Как избежать SQL-инъекций в CSCS.
- Я продемонстрирую вам на примере, как можно использовать простые функциональные возможности курсора SQL Server в CSCS. Он допускает более интуитивно понятный синтаксис, чем при непосредственном использовании C#.
- Как вызывать хранимые процедуры SQL Server из CSCS и как использовать пользовательские типы данных SQL.
Установка Microsoft SQL Server в macOS
Поскольку установка и запуск SQL Server в Windows является вполне рутинной задачей, здесь вы увидите, как установить и запустить его в macOS. Чтобы запустить SQL Server на Mac, вам придется выполнить следующие шаги:
- Установите Docker для Mac (отсюда)
- Запустите только что установленное приложение Docker Desktop (оно должно быть доступно в папке “Applications”). Обычно оно расположено по следующему пути: /usr/local/bin/docker.
- Загрузите и установите SQL Server для Docker-образа Linux. Для запуска из вашего shell используйте следующую команду:
Если это не сработает из-за проблем с разрешениями, попробуйте запустить ту же команду с sudo (для этого вам нужно будет знать пароль администратора):
- Затем запустите только что установленный Docker-образ следующим образом:
docker run -d --name sql_server_demo -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=mySronggPwd123' -p 1433:1433 mcr.microsoft.com/mssql/server:2019-latest
- Вы также можете установить консольный клиент SQL Server, запустив в своем shell следующую команду:
npm install -g sql-cli
Если вы снова столкнетесь с какими-либо проблемами с разрешениями, то добавьте к команде выше sudo. Этот шаг не является обязательным, но настоятельно рекомендуется. Установите Microsoft Azure Data Studio, перейдя по ссылке.
Очевидно, что существует множество других бесплатных GUI-оболочек SQL Server, но я пришел к выводу, что Azure Data Studio для macOS достаточно мощная и составляет достойную конкуренцию Microsoft SQL Server Management Studio для Windows.
- Теперь вам осталось только проверить, что все работает так, как надо. Чтобы подключиться к вашему серверу из командной строки, используйте эту команду:
mssql -u sa -p myStronggPwd123
Чтобы проверить установленную версию Microsoft SQL Server, просто запустите:
SELECT @@version
Результат выполнения этой команды в моей системе продемонстрирован на рисунке 1.
В качестве альтернативы, вы можете проверить подключение, используя Azure Data Studio, кликнув на “New Connection”, а затем следуя указаниям мастера подключения, как показано на рисунке 2. Введите тот же пароль, который вы использовали при создании Docker-образа Microsoft SQL Server выше на шаге 4.
Настройка скриптинговой среды CSCS в C# проекте
Чтобы настроить CSCS-скриптинг в вашем проекте, для начала вам нужно будет загрузить его исходный код с https://github.com/vassilych/cscs и включить его в свой проект. Это типичный проект, который будет работать со всеми консольными или фоновыми проектами (как в Windows, так и в macOS).
Одним из способов включения CSCS Scripting Engine в Windows GUI проект является WPF (Windows Presentation Foundation) проект, доступный здесь. Еще один способ — мобильный проект Xamarin iOS / Android, который можно скачать отсюда. В конце этой статьи вы можете найти ссылки, которые описывают, как использовать оба этих проекта.
После того, как вы все настроите, проект Xamarin должен выглядеть как показано на рисунке 3. Исходный код Scripting Engine находится в разделе scripting.Shared. В случае с WPF-проектом скрипты будут находиться в разделе CSCS.
Точка входа CSCS Scripting Engine зависит от контекста проекта. Для простого консольного проекта точкой входа является статический метод файла Main.cs Main.ProcessScript(string script, string filename = «») . Для WPF-проекта точкой входа является статический метод CSCS_GUI.RunScript(string filename) в файле CSCS_GUI.cs. А для Xamarin проектов iOS и Android точкой входа служит статический метод CustomInit.InitAndRunScript(string fileName = «start.cscs») файла CustomInit.cs . Если вы решите использовать примеры проектов из упомянутых выше GitHub-репозиториев, методы, которые запускают CSCS Scripting Engine, будут запускаться автоматически на старте проекта.
Я также рекомендую установить CSCS Debugger и REPL-расширение для Visual Studio Code. Он позволяет запускать любой CSCS-скрипт во время выполнения (смотрите ссылки для скачивания и использования в конце статьи). Чтобы иметь возможность подключиться к вашему CSCS-проекту из Visual Studio Code, в стартовый CSCS-скрипт должна быть включена следующая строка (по умолчанию это будет start.cscs):
StartDebugger();
Создание базы данных и таблиц в SQL Server
После установки SQL Server и интеграции CSCS Scripting Engine в ваш проект вы можете приступать к созданию базы данных SQL Server, которую мы будем использовать в последующих примерах.
Это можно сделать в самом CSCS. Все функции SQL Server описаны в таблице 1. Сначала вам нужно создать новую базу данных:
SQLConnectionString("Data Source=localhost,1433; Initial Catalog=master;Database=master; User >Первый оператор инициализирует строку подключения к SQL Server (с базой данных master), а второй — создает новую базу данных. Также, так как вы можете запустить любой SQL-оператор с помощью функции SQLNonQuery() , в вашем арсенале есть еще один простой способ создания базы данных:
SQLNonQuery("CREATE DATABASE CSCS");
Далее вам нужно создать таблицу с пользователями. Обратите внимание, что в строке подключения к SQL Server вам теперь нужно указать новую базу данных CSCS, чтобы новая таблица была создана там:
SQLConnectionString( "Data Source=localhost,1433; Initial Catalog=CSCS;Database=CSCS; User Password=myStronggPwd123"); SQLNonQuery("CREATE TABLE Users ( ID int NOT NULL IDENTITY PRIMARY KEY, FirstName varchar(255), LastName varchar(255), Email varchar(255), Salary real, Timestamp datetime not null default current_timestamp)");
Обратите внимание на то, как мы создали таблицу Users: нет необходимости указывать ID пользователя и таймстемп: первому будет присвоено следующее по порядку целое число, а в качестве второго будет использоваться текущий таймстемп.
Давайте заполним только что созданную таблицу Users некоторыми тестовыми данными:
columns = "FirstName,LastName,Email,Salary"; SQLInsert("Users", columns, ["John", "Johnson", "john@gmail.com", 45000]); SQLInsert("Users", columns, ["Juan", "Perez", "juan@gmail.mx", 75000]); SQLInsert("Users", columns, ["Johannes", "Dei", "dei@my.ch", 65000]); SQLInsert("Users", columns, ["Jean", "Cap", "jean@my.fr", 49000]); SQLInsert("Users", columns, ["Giovanni", "Vasco", "gv@my.it", 34000]); SQLInsert("Users", columns, ["Joan", "Lee", "joan@my.es", 74000]);
После что таблица будет выглядеть, как показано на рисунке 4:
Список реализованных в настоящее время CSCS-функций, связанных с SQL Server, вы можете найти в таблице 1.
Теперь мы можем начать нашу работу с SQL через CSCS-скриптинг.
Базовые функции SQL Server
Самый простой способ использовать скрипты во время выполнения после запуска основной программы — использовать REPL-расширение CSCS для Visual Studio Code. С ним вы сможете запустить новый скрипт после запуска программы. Этот REPL-функционал можно использовать следующим образом: выберите код, который вы хотите запустить, а затем нажмите Ctrl + 8 в Windows или Command + 8 в macOS.
На рисунке 5 показано, как можно запросить информацию о столбцах созданной вами таблицы Users.
Команда SQLTableColumn(tableName) возвращает список имен столбцов вместе с их типами. Если вам нужны только имена столбцов, укажите второй аргумент (“onlyNames” должен иметь значение true). Подробности смотрите в таблице 1.
Функция SQLQuery() используется для запуска Select -операторов и получения списка результатов. Рассмотрим следующий оператор SQLQuery() :
results = SQLQuery("SELECT FirstName,Salary FROM Users WHERE Salary > 50000 ORDER BY Salary");
В результате выполнения этого оператора переменной будет присвоен список, содержащий четыре элемента:
[[FirstName, Salary], [Johannes, 65000], [Joan, 74000] [Juan, 75000]]
Каждый элемент в возвращенном списке также является списком, которых содержит два элемента для каждого из столбцов в операторе Select. Первый элемент возвращаемого списка всегда содержит имена столбцов, а остальные содержат сами строки. Таким образом, возвращаемый список по факту представляет из себя двумерный массив: results[0][0] = «FirstName», results[1][1] = 65000 и т. д.
Функция SQLNonQuery() позволяет выполнять все остальные операторы SQL Server. Она может обновлять таблицы, удалять строки, создавать новые таблицы или хранимые процедуры и т. д. Эта функция возвращает количество затронутых строк в случае операторов UPDATE, DELETE или INSERT. В остальных случаях она всегда возвращает -1.
Вот один из примеров использования этой функции:
updated = SQLNonQuery("UPDATE Users SET Salary = 48500 WHERE // returns 1
После выполнения приведенного выше оператора переменная updated будет равна 1 (затронута всего одна строка). Ниже вас ждет еще пара примеров использования функции SQLNonQuery() .
Скриптинг и SQL-инъекции
Любой из приведенные выше примеров может быть потенциально использован для SQL-инъекций, если одно из полей, используемых в SQL-запросе или в любом другом операторе, имеет значение, которое должен предоставить пользователь.
SQL-инъекция — это атака с внедрением кода, в рамках которой злоумышленники имеют возможность выполнять вредоносные SQL-операторы, чтобы либо повредить сервер, либо извлечь данные, к которым у них не должно быть доступа.
Например, с помощью атаки с внедрением кода через поле для ввода данных вы можете получить адрес электронной почты пользователя, а затем извлечь информацию о пользователе следующим образом:
SQLQuery("SELECT * FROM Users WHERE Email='" + email + "'");
Затем злоумышленник может ввести этот текст вместо электронной почты:
"x@x.com' or 1=1 --";
Далее этот аргумент может попасть в SQLQuery, что будет выглядеть следующим образом:
SQLQuery("SELECT * FROM Users WHERE Email='x@x.com' or 1=1 --'");
Этот запрос возвращает всех пользователей, поскольку условие 1=1 всегда истина! Чтобы избежать такого рода хакерских атак, можно использовать следующие средства защиты:
- Используйте хранимые процедуры (им посвящен следующий раздел).
- Используйте параметризованные параметры (это мы тоже разберем чуть дальше).
Чтобы исправить приведенный выше Select-оператор, можно использовать параметризованный вызов, в котором вы дополнительно предоставляете список параметров для запроса. Этот список в свою очередь будет состоять из списков из двух элементов, где первый элемент — имя параметризованного параметра (такое же, как используется в запросе), а второй элемент — фактическое значение. Вот так будет выглядеть “безопасный” вызов SQL-запроса:
email = "juan@gmail.mx"; SQLQuery("SELECT * FROM Users WHERE Email=@0", [["@0", email]]);
Точно так же вы можете использовать параметры с любыми другими операторами SQL Server. Вот как будет выглядеть параметризованный вызов оператора Update из предыдущего раздела, только с двумя параметрами:
updated = SQLNonQuery("UPDATE Users SET Salary = @0 WHERE [["@0", 48500], ["@1", 4]]);
Также, если вы используете хранимые процедуры, вы можете безопасно передавать им аргументы. Об этом мы поговорим во второй части, которая выйдет буквально через несколько дней.
А пока приглашаем всех желающих на открытое занятие, на котором поговорим о модульном тестировании кода SQL Server и использовании для этого tSqlt. Занятие состоится уже сегодня вечером, записаться можно по ссылке.
Также приходите на бесплатный урок «Статический анализатор кода на Roslyn своими руками». На этом занятии разберем по шагам создание собственного статического анализатора кода на базе Roslyn API. Регистрация доступна на странице курса «C# Developer. Professional».
- Блог компании OTUS
- Microsoft SQL Server
- C#
Сервер баз данных SQL server
SQL server — это система управления базами данных, в работе с которой используется язык программирования SQL. О принципах работы и основных видах серверов баз данных SQL server будет рассказано в представленной статье.
Особенности функционирования SQL server
СУБД SQL server используются для создания, размещения, хранения и управления реляционными (табличными) базами данных на специальных серверах или в облаке. Они работают через настольные приложения и web-сайты. К основным преимуществам их функционирования относятся:
- высокоскоростной доступ к данным, обеспечиваемый надежной клиент-серверной архитектурой СУБД;
- простота работы и администрирования, обусловленные понятной структурой языка программирования SQL;
- безопасность хранения информации в БД — благодаря возможности шифрования данных и резервного копирования.
Специфика работы сервера базы данных SQL server заключается в транзакционной обработке данных. Это означает, что по каждому запросу от СУБД обрабатывается и сохраняется небольшое количество информации.
Применение SQL server позволяет автоматизировать решение различных бизнес-задач, поддерживать проведение аналитики данных в режиме онлайн, отслеживать направление ресурсов СУБД, управлять транзакциями (операциями по обработке данных).
Виды SQL-серверов
Для реализации функций СУБД на сегодняшний день чаще всего используются следующие SQL-серверы:
- MS SQL server — многопользовательский программный продукт, разработанный компанией Microsoft, обладающий высокой производительностью и отказоустойчивостью, тесно интегрированный с ОС Windows. Этот сервер поддерживает удаленные подключения, работает с многими популярными типами данных, дает возможность создавать триггеры и хранимые данные, имеет практичные и удобные утилиты для настройки;
- Oracle Database server — СУБД, предназначенная для создания, консолидации и управления базами данных в облачной среде. Используя этот сервер, можно как автоматизировать обычные бизнес-операции, так и выполнять динамический многомерный анализ данных (OLAP), проводить операции с документами xml-формата и управлять разделенной и локальной информацией;
- IBM DB2 — семейство СУБД для работы с реляционными базами данных, признанное самым производительным, имеющим высокие технические показатели и возможности масштабирования. SQL-серверы этой группы характеризуются мультиплатформенностью, способностью к мгновенному созданию резервных копий и восстановлению БД, реорганизации таблиц в онлайн-режиме, разбиению баз данных, определению пользователями новых типов данных;
- MySQL — СУБД, разработанная и поддерживаемая компанией Oracle. В основном она используется локальными или удаленными клиентами, позволяя им работать с таблицами разных типов, поддерживающих полнотекстовый поиск или выполняющих транзакции на уровне отдельных записей;
- PostgreSQL — СУБД с открытым исходным кодом, работающая с объектно-реляционными (поддерживающими пользовательские объекты) базами данных. Также PostgreSQL предназначена для создания, хранения и извлечения сложных структур данных. Она поддерживает самые различные типы данных (среди них — числовые, текстовые, булевы, денежные, бинарные данные, сетевые адреса, xml и другие).
Обучение работе с серверами баз данных SQL server возможно для всех желающих в рамках профессиональной подготовки по курсу«Инструментальные средства бизнес-аналитики», которую проводит ВШБИ НИУ ВШЭ. Записаться на обучение по данному курсу можно на нашем сайте.