После прочтения статьи о полезных и бесплатных плагинах для SSMS — TOP (10) бесплатных плагинов для SSMS, я решил поделиться своим списком бесплатных инструментов, которые могут быть очень полезны разработчикам баз данных, и не только. Инструменты ориентированны на разработку под Microsoft SQL Server. Некоторые инструменты, платные, однако содержат достаточно полнофункциональные бесплатные редакции, которых с головой хватает для небольших проектов.
Мощная среда разработки для SQL Server от компании Devart. Данный продукт включает в себя огромнейший набор инструментов, которые значительно ускоряют и облегчают выполнение повседневных задач: продвинутый IntelliSence, визуальные дизайнеры таблиц и запросов, диаграммы баз данных, T-SQL дебаггер, профилировщик запросов, сравнение данных и схем, генерация тестовых данных, работа с source control, поддержка unit-test – ов, создание бэкапов, и многое многое другое. Этакий швейцарский нож для разработчика.
Цена англоязычной версии данного инструмента почти 700$. Однако, существует express редакция, которая является бесплатной. Понятно, что функционал в ней урезан, и для полноценной работы его может быть недостаточно. Но не стоит расстраиваться, ведь существует русскоязычная версия продукта, которая, что называется — FULL-FEATURED. Она абсолютно бесплатна для некоммерческого использования. Если у вас open-source проект, если вы хотите работать с базами дома, если вы представляете учебное заведение – этот инструмент для вас!
![](https://habrastorage.org/files/756/8b0/e1f/7568b0e1ffd84abc84565e5a9e3cf7f2.png)
Если при создании пользовательских функций используется параметр WITH ENCRYPTION, который в системном каталоге кодирует информацию, содержащую текст инструкции СREATE FUNCTION, таким образом предотвращая несанкционированный доступ к просмотру текста создания функции. То в дальнейшем, не имея исходников, и такого инструмента, просмотреть DLL объекта невозможно.
![](https://habrastorage.org/files/466/021/d6d/466021d6dc924a9c9a032c9f31b0c1d9.png)
Бесплатный инструмент, который позволяет производить мониторинг и анализировать события SQL Server'а. Вы можете использовать полученную информацию для выявления и устранения многих проблем.
![](https://habrastorage.org/files/506/5bd/478/5065bd4788ba4be3bd77e3cd7abaa1eb.png)
Бесплатный веб-сервис, который позволяет форматировать T-SQL код. Вы можете писать код прямо в редакторе, а затем отформатировать его, или подгрузить из внешнего файла.
![](https://habrastorage.org/files/c5e/99c/a96/c5e99ca967db4ed78e8e6c84c114e96f.png)
Инструмент, который позволяет форматировать и проводить рефакторинг SQL кода. Имеет большое количество настроек. По этой ссылке можно посмотреть на примеры форматирования.
![](https://habrastorage.org/files/d58/8c2/fe5/d588c2fe592043eab16b35c20161daf8.png)
Бесплатный инструмент (плагин для SSMS), который позволяет значительно сократить время и сберечь нервы при написании T-SQL кода. Инструмент предлагает: всевозможные подсказки по объектам, авто дополнение стейтментов, сниппеты, навигацию к объектам из кода, логгирование каждого выполненного запроса, pick листы объектов, и многое другое!
![](https://habrastorage.org/files/bd4/784/228/bd478422806947e4980d06fa8c5a0542.png)
Бесплатный набор из 28 must–have скриптов от экспертов компании Redgate, который поможет автоматизировать общие задачи устранения неполадок, диагностики и обслуживания. Наиболее популярные скрипты: CPU–intensive queries, SQL Server Maintenance Solution, Top resource waits, Blocking transactions, и многие другие.
![](https://habrastorage.org/files/048/df2/b61/048df2b617564599bbb9c05ba4bbf3d7.png)
Мониторинг производительности сервера в реальном времени. Инструмент позволяет отслеживать 20 ключевых метрик производительности: операции чтения/записи, кэш, транзакции, компиляция и рекомпиляция запросов, загрузка CPU и другие. Результаты отображаются в виде графиков производительности, визуализации открытых соединений и транзакций. Бесплатная версия ограничена только одним сервером. Кстати, на сайте компании есть еще целый набор полезных бесплатных инструментов.
![](https://habrastorage.org/files/ec9/a02/6b9/ec9a026b988a4776801579d63baf21d1.png)
Набор хранимых процедур от MVP Ola Hallengren для обслуживания как пользовательских, так и служебных баз данных на стороне SQL Server. Скрипты сопровождаются инструкциями и примерами. В 2010 году, этот набор скриптов был удостоен бронзовой награды Editor’s Choice Bronze Award, как самый лучший бесплатный инструмент. В 2011 получил серебро и золото от комьюнити.
sp_Blitz — хранимая процедура, для мониторинга состояния SQL Server–а и проблем производительности. При выполнении процедуры с дефолтными параметрами, вы получите список проблем для указанного экземпляра SQLсервера упорядоченный по степени важности, этакий to-do лист. Наиболее критичные моменты имеют приоритет 1, и далее по возрастанию. Для использования, необходимо запустить sp_Blits.sql, который развернет необходимые процедуры в master. Далее в новом sql документе выполняем sp_Blitz.
![](https://habrastorage.org/files/030/dac/d42/030dacd429484dfbbdd2fd3f0ba8284d.png)
sp_BlitzCache — хранимая процедура, с кучей опций, которая показывает наиболее малоэффективные запросы, и многое другое. Например, следующий запрос:
Выдаст вам топ 10 запросов, выполнение которых занимает наибольшее количество времени. Например, если запрос выполняется 10 секунд, и вызывается 1000 раз, то общее время выполнения будет 10 000 секунд. В «табеле о рангах» такой запрос будет стоять выше, чем запрос, который выполняется 500 секунд, но однократно. Более подробно можно почитать тут: Using sp_BlitzCache Advanced Features
![](https://habrastorage.org/files/3c8/b78/f44/3c8b78f44ec8460aba676b6ca49a2aa9.png)
Brent Ozar:
sp_BlitzIndex — это инструмент, который поможет вам проанализировать индексы: узнать есть ли у вас повторяющиеся индексы, или индексы, которые не используются, и многое другое.
![](https://habrastorage.org/files/b6f/a59/f5a/b6fa59f5a53b42debcbb21f62671be2d.png)
sp_BlitzRS – процедура для поиска потенциальных проблем и анализа производительности и запросов SQL Server Reporting Services. Процедура поможет вам ответить на такие вопросы, как:
Процедура быстро проверит активность на SSRS и предоставит рекомендации по улучшению ситуации. Каждый пункт содержит ссылку на сайт, с подробным описанием и способами решения проблемы, что позволит лучше разобраться в ситуации. Видео о процедуре.
sp_BlitzTrace – хранимая процедура, которая позволит вам легко и быстро использовать SQL Server Extended Events. Она покажет сколько процессорных ресурсов использует тот или иной запрос, какое количество логических чтений он использует, какие временные объекты созданы и так далее.
Онлайн сервис от разработчиков популярного решения для бэкапа SQLBackupAndFTP. Инструмент позволяет создавать резервные копии MS SQL вручную или по расписанию (поддерживается полный и дифференциальный бэкап и сохранение журнала транзакций.). Так же, производится мониторинг работоспособности и производительности сервера. При обнаружении проблем, отчеты отправляются администратору по электронной почте.
Все настройки производятся в браузере, что позволяет управлять инструментом с любого устройства. На сервер необходимо установить SqlBak Client, который будет производить все операции.
В общем, инструмент платный, однако есть и бесплатный план. В этом плане вы можете работать с одним сервером и двумя базами данных. Мониторинг производится с периодичностью один раз в час, чего вполне достаточно для небольших проектов.
![](https://habrastorage.org/files/0ef/e16/eb6/0efe16eb67f7431997066de411dd0865.png)
Значительная часть бизнес логики в крупных проектах реализовывается в хранимых процедурах и удобство управления кодом — одна из важных задач. Не все доступные инструменты позволяют удобно работать с версиями, производить мониторинг изменений, синхронизировать тестовые и рабочие среды. Для решения таких задач, вам может помочь проект SQLFuse. Это файловая система пользовательского режима, основанная на FUSE, которая отображает объекты сервера SQL на файловую систему: схемы, таблицы, представления, хранимые процедуры, функции, колонки, триггеры и др. Кроме отображения объектов SQLFuse частично поддерживает их создание, редактирование и удаление.
Все изменения в файлах накапливаются в кэше, и по счетчику производится сброс SQL-команд в базе. Если происходит сбой транзакции, то все изменения откатываются и кэш очищается.
Замечательный бесплатный фреймворк с открытым исходным кодом для проведения T-SQL unit тестов. О том, как работать с данным инструментом очень подробно изложено в следующей статье: tSqlt — модульное тестирование в Sql Server
![](https://habrastorage.org/files/c47/1b7/0be/c471b70beb774a37901d40785f20f572.jpg)
Плагин для Visual Studio c открытым исходным кодом. Инструмент значительно расширяет среду SQL Server BI Development Studio 2005, 2008, или 2008 R2, а также SQL Server Data Tools BI 2012, 2014. Список всех доступных фич можно посмотреть в документации к продукту.
Данный инструмент позволяет работать с секционированными (партиционированными) таблицами.
Надеюсь, что данная подборка окажется вам полезной, и вы будете использовать эти инструменты в своей практике. Если есть идеи по дополнению данного списка, пожалуйста, пишите в комментариях.
Спасибо за внимание!
dbForge Studio for SQL Server
Мощная среда разработки для SQL Server от компании Devart. Данный продукт включает в себя огромнейший набор инструментов, которые значительно ускоряют и облегчают выполнение повседневных задач: продвинутый IntelliSence, визуальные дизайнеры таблиц и запросов, диаграммы баз данных, T-SQL дебаггер, профилировщик запросов, сравнение данных и схем, генерация тестовых данных, работа с source control, поддержка unit-test – ов, создание бэкапов, и многое многое другое. Этакий швейцарский нож для разработчика.
Цена англоязычной версии данного инструмента почти 700$. Однако, существует express редакция, которая является бесплатной. Понятно, что функционал в ней урезан, и для полноценной работы его может быть недостаточно. Но не стоит расстраиваться, ведь существует русскоязычная версия продукта, которая, что называется — FULL-FEATURED. Она абсолютно бесплатна для некоммерческого использования. Если у вас open-source проект, если вы хотите работать с базами дома, если вы представляете учебное заведение – этот инструмент для вас!
![](https://habrastorage.org/files/756/8b0/e1f/7568b0e1ffd84abc84565e5a9e3cf7f2.png)
dbForge SQL Decryptor
Если при создании пользовательских функций используется параметр WITH ENCRYPTION, который в системном каталоге кодирует информацию, содержащую текст инструкции СREATE FUNCTION, таким образом предотвращая несанкционированный доступ к просмотру текста создания функции. То в дальнейшем, не имея исходников, и такого инструмента, просмотреть DLL объекта невозможно.
![](https://habrastorage.org/files/466/021/d6d/466021d6dc924a9c9a032c9f31b0c1d9.png)
dbForge Event Profiler for SQL Server
Бесплатный инструмент, который позволяет производить мониторинг и анализировать события SQL Server'а. Вы можете использовать полученную информацию для выявления и устранения многих проблем.
![](https://habrastorage.org/files/506/5bd/478/5065bd4788ba4be3bd77e3cd7abaa1eb.png)
SQL Formatter
Бесплатный веб-сервис, который позволяет форматировать T-SQL код. Вы можете писать код прямо в редакторе, а затем отформатировать его, или подгрузить из внешнего файла.
![](https://habrastorage.org/files/c5e/99c/a96/c5e99ca967db4ed78e8e6c84c114e96f.png)
ApexSQL Refactor
Инструмент, который позволяет форматировать и проводить рефакторинг SQL кода. Имеет большое количество настроек. По этой ссылке можно посмотреть на примеры форматирования.
![](https://habrastorage.org/files/d58/8c2/fe5/d588c2fe592043eab16b35c20161daf8.png)
ApexSQL Complete
Бесплатный инструмент (плагин для SSMS), который позволяет значительно сократить время и сберечь нервы при написании T-SQL кода. Инструмент предлагает: всевозможные подсказки по объектам, авто дополнение стейтментов, сниппеты, навигацию к объектам из кода, логгирование каждого выполненного запроса, pick листы объектов, и многое другое!
![](https://habrastorage.org/files/bd4/784/228/bd478422806947e4980d06fa8c5a0542.png)
SQL Scripts Manager
Бесплатный набор из 28 must–have скриптов от экспертов компании Redgate, который поможет автоматизировать общие задачи устранения неполадок, диагностики и обслуживания. Наиболее популярные скрипты: CPU–intensive queries, SQL Server Maintenance Solution, Top resource waits, Blocking transactions, и многие другие.
![](https://habrastorage.org/files/048/df2/b61/048df2b617564599bbb9c05ba4bbf3d7.png)
SQLCheck
Мониторинг производительности сервера в реальном времени. Инструмент позволяет отслеживать 20 ключевых метрик производительности: операции чтения/записи, кэш, транзакции, компиляция и рекомпиляция запросов, загрузка CPU и другие. Результаты отображаются в виде графиков производительности, визуализации открытых соединений и транзакций. Бесплатная версия ограничена только одним сервером. Кстати, на сайте компании есть еще целый набор полезных бесплатных инструментов.
![](https://habrastorage.org/files/ec9/a02/6b9/ec9a026b988a4776801579d63baf21d1.png)
SQL Server Maintenance Solution
Набор хранимых процедур от MVP Ola Hallengren для обслуживания как пользовательских, так и служебных баз данных на стороне SQL Server. Скрипты сопровождаются инструкциями и примерами. В 2010 году, этот набор скриптов был удостоен бронзовой награды Editor’s Choice Bronze Award, как самый лучший бесплатный инструмент. В 2011 получил серебро и золото от комьюнити.
Набор хранимых процедур от Brent Ozar Unlimited
sp_Blitz — хранимая процедура, для мониторинга состояния SQL Server–а и проблем производительности. При выполнении процедуры с дефолтными параметрами, вы получите список проблем для указанного экземпляра SQLсервера упорядоченный по степени важности, этакий to-do лист. Наиболее критичные моменты имеют приоритет 1, и далее по возрастанию. Для использования, необходимо запустить sp_Blits.sql, который развернет необходимые процедуры в master. Далее в новом sql документе выполняем sp_Blitz.
![](https://habrastorage.org/files/030/dac/d42/030dacd429484dfbbdd2fd3f0ba8284d.png)
sp_BlitzCache — хранимая процедура, с кучей опций, которая показывает наиболее малоэффективные запросы, и многое другое. Например, следующий запрос:
EXEC sp_BlitzCache @top = 10, @sort_order = ‘duration’
Выдаст вам топ 10 запросов, выполнение которых занимает наибольшее количество времени. Например, если запрос выполняется 10 секунд, и вызывается 1000 раз, то общее время выполнения будет 10 000 секунд. В «табеле о рангах» такой запрос будет стоять выше, чем запрос, который выполняется 500 секунд, но однократно. Более подробно можно почитать тут: Using sp_BlitzCache Advanced Features
![](https://habrastorage.org/files/3c8/b78/f44/3c8b78f44ec8460aba676b6ca49a2aa9.png)
Brent Ozar:
This is the opposite of the leaderboard – this is the Suckerboard.
sp_BlitzIndex — это инструмент, который поможет вам проанализировать индексы: узнать есть ли у вас повторяющиеся индексы, или индексы, которые не используются, и многое другое.
![](https://habrastorage.org/files/b6f/a59/f5a/b6fa59f5a53b42debcbb21f62671be2d.png)
sp_BlitzRS – процедура для поиска потенциальных проблем и анализа производительности и запросов SQL Server Reporting Services. Процедура поможет вам ответить на такие вопросы, как:
- Какие подписки были у сотрудника (например) при увольнении?
- С чем связана медленная работа сервера? Проблема в медленных запросах или запрос возвращает много данных?
- Что лучше использовать для отчёта: кэширование или снэпшот?
- Используют ли отчеты «опасные» настройки?
Процедура быстро проверит активность на SSRS и предоставит рекомендации по улучшению ситуации. Каждый пункт содержит ссылку на сайт, с подробным описанием и способами решения проблемы, что позволит лучше разобраться в ситуации. Видео о процедуре.
sp_BlitzTrace – хранимая процедура, которая позволит вам легко и быстро использовать SQL Server Extended Events. Она покажет сколько процессорных ресурсов использует тот или иной запрос, какое количество логических чтений он использует, какие временные объекты созданы и так далее.
SqlBak
Онлайн сервис от разработчиков популярного решения для бэкапа SQLBackupAndFTP. Инструмент позволяет создавать резервные копии MS SQL вручную или по расписанию (поддерживается полный и дифференциальный бэкап и сохранение журнала транзакций.). Так же, производится мониторинг работоспособности и производительности сервера. При обнаружении проблем, отчеты отправляются администратору по электронной почте.
Все настройки производятся в браузере, что позволяет управлять инструментом с любого устройства. На сервер необходимо установить SqlBak Client, который будет производить все операции.
В общем, инструмент платный, однако есть и бесплатный план. В этом плане вы можете работать с одним сервером и двумя базами данных. Мониторинг производится с периодичностью один раз в час, чего вполне достаточно для небольших проектов.
![](https://habrastorage.org/files/0ef/e16/eb6/0efe16eb67f7431997066de411dd0865.png)
SQLFuse
Значительная часть бизнес логики в крупных проектах реализовывается в хранимых процедурах и удобство управления кодом — одна из важных задач. Не все доступные инструменты позволяют удобно работать с версиями, производить мониторинг изменений, синхронизировать тестовые и рабочие среды. Для решения таких задач, вам может помочь проект SQLFuse. Это файловая система пользовательского режима, основанная на FUSE, которая отображает объекты сервера SQL на файловую систему: схемы, таблицы, представления, хранимые процедуры, функции, колонки, триггеры и др. Кроме отображения объектов SQLFuse частично поддерживает их создание, редактирование и удаление.
Все изменения в файлах накапливаются в кэше, и по счетчику производится сброс SQL-команд в базе. Если происходит сбой транзакции, то все изменения откатываются и кэш очищается.
tSQLt
Замечательный бесплатный фреймворк с открытым исходным кодом для проведения T-SQL unit тестов. О том, как работать с данным инструментом очень подробно изложено в следующей статье: tSqlt — модульное тестирование в Sql Server
![](https://habrastorage.org/files/c47/1b7/0be/c471b70beb774a37901d40785f20f572.jpg)
BIDS Helper
Плагин для Visual Studio c открытым исходным кодом. Инструмент значительно расширяет среду SQL Server BI Development Studio 2005, 2008, или 2008 R2, а также SQL Server Data Tools BI 2012, 2014. Список всех доступных фич можно посмотреть в документации к продукту.
SQL Server Partition Management
Данный инструмент позволяет работать с секционированными (партиционированными) таблицами.
Надеюсь, что данная подборка окажется вам полезной, и вы будете использовать эти инструменты в своей практике. Если есть идеи по дополнению данного списка, пожалуйста, пишите в комментариях.
Спасибо за внимание!
Комментарии (6)
masai
14.12.2015 21:47+5Все эти инструменты ориентированы на MS SQL Server, я правильно понял? Если так, то надо упомянуть об этом в заголовке и тегах. Всё же этим сервером мир баз данных не ограничивается.
nitro80
24.12.2015 12:20А ПО (SQL Scripts Manager и SQLCheck) для использования в коммерческой структуре бесплатно или нет?
foi
Database .NET тоже неплохая программа.