- PVSM.RU - https://www.pvsm.ru -

Бесплатные инструменты для разработчиков баз данных

После прочтения статьи о полезных и бесплатных плагинах для SSMS — TOP (10) бесплатных плагинов для SSMS [1], я решил поделиться своим списком бесплатных инструментов, которые могут быть очень полезны разработчикам баз данных, и не только. Инструменты ориентированны на разработку под Microsoft SQL Server. Некоторые инструменты, платные, однако содержат достаточно полнофункциональные бесплатные редакции, которых с головой хватает для небольших проектов.

dbForge Studio for SQL Server [2]

Мощная среда разработки для SQL Server от компании Devart. Данный продукт включает в себя огромнейший набор инструментов, которые значительно ускоряют и облегчают выполнение повседневных задач: продвинутый IntelliSence, визуальные дизайнеры таблиц и запросов, диаграммы баз данных, T-SQL дебаггер, профилировщик запросов, сравнение данных и схем, генерация тестовых данных, работа с source control, поддержка unit-test – ов, создание бэкапов, и многое многое другое. Этакий швейцарский нож для разработчика.
Цена англоязычной версии данного инструмента почти 700$. Однако, существует express редакция, которая является бесплатной. Понятно, что функционал в ней урезан, и для полноценной работы его может быть недостаточно. Но не стоит расстраиваться, ведь существует русскоязычная версия продукта, которая, что называется — FULL-FEATURED. Она абсолютно бесплатна для некоммерческого использования. Если у вас open-source проект, если вы хотите работать с базами дома, если вы представляете учебное заведение – этот инструмент для вас!

Бесплатные инструменты для разработчиков баз данных - 1

dbForge SQL Decryptor [3]

Если при создании пользовательских функций используется параметр WITH ENCRYPTION, который в системном каталоге кодирует информацию, содержащую текст инструкции СREATE FUNCTION, таким образом предотвращая несанкционированный доступ к просмотру текста создания функции. То в дальнейшем, не имея исходников, и такого инструмента, просмотреть DLL объекта невозможно.

Бесплатные инструменты для разработчиков баз данных - 2

dbForge Event Profiler for SQL Server [4]

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

Бесплатные инструменты для разработчиков баз данных - 3

SQL Formatter [5]

Бесплатный веб-сервис, который позволяет форматировать T-SQL код. Вы можете писать код прямо в редакторе, а затем отформатировать его, или подгрузить из внешнего файла.

Бесплатные инструменты для разработчиков баз данных - 4

ApexSQL Refactor [6]

Инструмент, который позволяет форматировать и проводить рефакторинг SQL кода. Имеет большое количество настроек. По этой ссылке [7] можно посмотреть на примеры форматирования.

Бесплатные инструменты для разработчиков баз данных - 5

ApexSQL Complete [8]

Бесплатный инструмент (плагин для SSMS), который позволяет значительно сократить время и сберечь нервы при написании T-SQL кода. Инструмент предлагает: всевозможные подсказки по объектам, авто дополнение стейтментов, сниппеты, навигацию к объектам из кода, логгирование каждого выполненного запроса, pick листы объектов, и многое другое!

Бесплатные инструменты для разработчиков баз данных - 6

SQL Scripts Manager [9]

Бесплатный набор из 28 must–have скриптов от экспертов компании Redgate, который поможет автоматизировать общие задачи устранения неполадок, диагностики и обслуживания. Наиболее популярные скрипты: CPU–intensive queries, SQL Server Maintenance Solution, Top resource waits, Blocking transactions, и многие другие.

Бесплатные инструменты для разработчиков баз данных - 7

SQLCheck [10]

Мониторинг производительности сервера в реальном времени. Инструмент позволяет отслеживать 20 ключевых метрик производительности: операции чтения/записи, кэш, транзакции, компиляция и рекомпиляция запросов, загрузка CPU и другие. Результаты отображаются в виде графиков производительности, визуализации открытых соединений и транзакций. Бесплатная версия ограничена только одним сервером. Кстати, на сайте компании есть еще целый набор полезных бесплатных инструментов.

Бесплатные инструменты для разработчиков баз данных - 8

SQL Server Maintenance Solution [11]

Набор хранимых процедур от MVP Ola Hallengren [12] для обслуживания как пользовательских, так и служебных баз данных на стороне SQL Server. Скрипты сопровождаются инструкциями и примерами. В 2010 году, этот набор скриптов был удостоен бронзовой награды Editor’s Choice Bronze Award, как самый лучший бесплатный инструмент. В 2011 получил серебро и золото от комьюнити.

Набор хранимых процедур от Brent Ozar Unlimited

sp_Blitz [13] — хранимая процедура, для мониторинга состояния SQL Server–а и проблем производительности. При выполнении процедуры с дефолтными параметрами, вы получите список проблем для указанного экземпляра SQLсервера упорядоченный по степени важности, этакий to-do лист. Наиболее критичные моменты имеют приоритет 1, и далее по возрастанию. Для использования, необходимо запустить sp_Blits.sql, который развернет необходимые процедуры в master. Далее в новом sql документе выполняем sp_Blitz.

Бесплатные инструменты для разработчиков баз данных - 9

sp_BlitzCache [14] — хранимая процедура, с кучей опций, которая показывает наиболее малоэффективные запросы, и многое другое. Например, следующий запрос:

EXEC sp_BlitzCache @top = 10, @sort_order = ‘duration’

Выдаст вам топ 10 запросов, выполнение которых занимает наибольшее количество времени. Например, если запрос выполняется 10 секунд, и вызывается 1000 раз, то общее время выполнения будет 10 000 секунд. В «табеле о рангах» такой запрос будет стоять выше, чем запрос, который выполняется 500 секунд, но однократно. Более подробно можно почитать тут: Using sp_BlitzCache Advanced Features [15]

Бесплатные инструменты для разработчиков баз данных - 10

Brent Ozar:

This is the opposite of the leaderboard – this is the Suckerboard.

sp_BlitzIndex [16] — это инструмент, который поможет вам проанализировать индексы: узнать есть ли у вас повторяющиеся индексы, или индексы, которые не используются, и многое другое.

Бесплатные инструменты для разработчиков баз данных - 11

sp_BlitzRS [17] – процедура для поиска потенциальных проблем и анализа производительности и запросов SQL Server Reporting Services. Процедура поможет вам ответить на такие вопросы, как:

  1. Какие подписки были у сотрудника (например) при увольнении?
  2. С чем связана медленная работа сервера? Проблема в медленных запросах или запрос возвращает много данных?
  3. Что лучше использовать для отчёта: кэширование или снэпшот?
  4. Используют ли отчеты «опасные» настройки?

Процедура быстро проверит активность на SSRS и предоставит рекомендации по улучшению ситуации. Каждый пункт содержит ссылку на сайт, с подробным описанием и способами решения проблемы, что позволит лучше разобраться в ситуации. Видео [18] о процедуре.

sp_BlitzTrace [19] – хранимая процедура, которая позволит вам легко и быстро использовать SQL Server Extended Events. Она покажет сколько процессорных ресурсов использует тот или иной запрос, какое количество логических чтений он использует, какие временные объекты созданы и так далее.

SqlBak [20]

Онлайн сервис от разработчиков популярного решения для бэкапа SQLBackupAndFTP. Инструмент позволяет создавать резервные копии MS SQL вручную или по расписанию (поддерживается полный и дифференциальный бэкап и сохранение журнала транзакций.). Так же, производится мониторинг работоспособности и производительности сервера. При обнаружении проблем, отчеты отправляются администратору по электронной почте.

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

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

Бесплатные инструменты для разработчиков баз данных - 12

SQLFuse [21]

Значительная часть бизнес логики в крупных проектах реализовывается в хранимых процедурах и удобство управления кодом — одна из важных задач. Не все доступные инструменты позволяют удобно работать с версиями, производить мониторинг изменений, синхронизировать тестовые и рабочие среды. Для решения таких задач, вам может помочь проект SQLFuse. Это файловая система пользовательского режима, основанная на FUSE [22], которая отображает объекты сервера SQL на файловую систему: схемы, таблицы, представления, хранимые процедуры, функции, колонки, триггеры и др. Кроме отображения объектов SQLFuse частично поддерживает их создание, редактирование и удаление.

Все изменения в файлах накапливаются в кэше, и по счетчику производится сброс SQL-команд в базе. Если происходит сбой транзакции, то все изменения откатываются и кэш очищается.

tSQLt [23]

Замечательный бесплатный фреймворк с открытым исходным кодом для проведения T-SQL unit тестов. О том, как работать с данным инструментом очень подробно изложено в следующей статье: tSqlt — модульное тестирование в Sql Server [24]

Бесплатные инструменты для разработчиков баз данных - 13

BIDS Helper [25]

Плагин для Visual Studio c открытым исходным кодом. Инструмент значительно расширяет среду SQL Server BI Development Studio 2005, 2008, или 2008 R2, а также SQL Server Data Tools BI 2012, 2014. Список всех доступных фич можно посмотреть в документации [26] к продукту.

SQL Server Partition Management [27]

Данный инструмент позволяет работать с секционированными (партиционированными) таблицами.

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

Спасибо за внимание!

Автор: LangovoyAndrey

Источник [28]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/sql/106264

Ссылки в тексте:

[1] TOP (10) бесплатных плагинов для SSMS: http://habrahabr.ru/post/272895/

[2] dbForge Studio for SQL Server: https://www.devart.com/ru/dbforge/sql/studio/

[3] dbForge SQL Decryptor: https://www.devart.com/dbforge/sql/sqldecryptor/

[4] dbForge Event Profiler for SQL Server: https://www.devart.com/dbforge/sql/event-profiler/

[5] SQL Formatter: http://www.sql-format.com/

[6] ApexSQL Refactor: http://www.apexsql.com/sql_tools_refactor.aspx

[7] ссылке: http://www.apexsql.com/datasheets/Formatting_screen_mockups_and_examples.pdf

[8] ApexSQL Complete: http://www.apexsql.com/sql_tools_complete.aspx

[9] SQL Scripts Manager: http://www.red-gate.com/products/dba/sql-scripts-manager/

[10] SQLCheck: https://www.idera.com/productssolutions/freetools/sqlcheck

[11] SQL Server Maintenance Solution: https://ola.hallengren.com/

[12] Ola Hallengren: https://mvp.microsoft.com/en-us/PublicProfile/5000459?fullName=Ola%20Hallengren

[13] sp_Blitz: http://www.brentozar.com/blitz/

[14] sp_BlitzCache: http://www.brentozar.com/blitzcache/

[15] Using sp_BlitzCache Advanced Features: http://www.brentozar.com/archive/2014/11/using-sp_blitzcache-advanced-features/

[16] sp_BlitzIndex: http://www.brentozar.com/blitzindex/

[17] sp_BlitzRS: http://www.brentozar.com/blitzrs/

[18] Видео: https://www.youtube.com/watch?v=meTPWKTLJ90&feature=youtu.be

[19] sp_BlitzTrace: http://www.brentozar.com/blitztrace/

[20] SqlBak: http://sqlbak.com/

[21] SQLFuse: https://github.com/AlexandrMov/SQLFuse

[22] FUSE: http://fuse.sourceforge.net/

[23] tSQLt: http://tsqlt.org/

[24] tSqlt — модульное тестирование в Sql Server: http://habrahabr.ru/post/234673/

[25] BIDS Helper: https://bidshelper.codeplex.com/

[26] документации: https://bidshelper.codeplex.com/documentation

[27] SQL Server Partition Management: http://sqlpartitionmgmt.codeplex.com/

[28] Источник: http://habrahabr.ru/post/273073/