Привет, Хабр! Мы много работаем с Quest Software, и в этом году они приобрели ApexSQL — производителя решений для управления и мониторинга баз данных Microsoft SQL Server. В России об этих ребятах, как нам кажется, знают мало. На главной своего сайта они пишут «Killer tools for SQL Server». Звучит угрожающе. У нас появилась идея представить этого вендора и разобраться что же такого убийственного есть в их решениях. Начнём с хайповой части — бесплатных продуктов. После них будет краткая часть о коммерческих продуктах. Надеюсь, эти программы окажутся вам полезны. Прошу под кат.

В этой статье:

  1. ApexSQL Compare — инструмент для сравнения SQL-кода, файлов и папок. Работает также в качестве расширения для SSMS или Visual Studio.
  2. ApexSQL Decrypt — потоковая дешифрация объектов в SQL Server: процедур, функций, триггеров и представление (view). Работает также в качестве расширения для SSMS или Visual Studio.
  3. ApexSQL Discover — обнаружение экземпляров SQL Server и сопутствующих сервисов SSRS, SSAS и SSIS.
  4. ApexSQL Refactor — инструмент для рефакторинга и форматирования SQL-кода. Работает в качестве расширения для SSMS или Visual Studio.
  5. ApexSQL Model — создание диаграмм объектов SQL Server. Работает также в качестве расширения для SSMS или Visual Studio.
  6. ApexSQL Plan — инструмент для оптимизации Execution plans. Работает также в качестве расширения для SSMS.
  7. ApexSQL Complete — инструмент автоматически завершает операторы SQL и позволяет добавлять собственные сниппеты (сочетания клавиш для автозаполнения). Работает также в качестве расширения для SSMS или Visual Studio.
  8. ApexSQL Propagate — инструмент для исполнения SQL-кода на нескольких БД за один раз.
  9. ApexSQL Search — утилита для поиска данных и объектов в недрах SQL Server. Работает в качестве расширения для SSMS или Visual Studio.
  10. ApexSQL DevOps Toolkit — инструмент для создания CI/CD пайплайнов. Единственный из всех перечисленных тут продуктов имеет веб-консоль.

Каждый продукт — это часть функционала платных решений ApexSQL. В конце статьи кратко расскажем что у них есть из коммерческих решений.

1. ApexSQL Compare


image

Короткое видео о механизме работы и возможностях


В Compare можно сравнить файлы, папки и объекты SQL Server. Поддерживается двунаправленное сравнение и дальнейшая генерация скрипта для смердживания отличающихся объектов. В интерфейсе утилита умеет подсвечивать синтаксис C#, C++, HTML, JavaScript, PostgreSQL, Python, T-SQL, Visual Basic, XML.

image

Ключевые особенности —интеграция в SSMS и Visual Studio, вызов объектов из различных инстансов БД для сравнения прямо из Object Explorer и поддержка работы через CLI.

2. ApexSQL Decrypt


image

Короткое видео о механизме работы и возможностях


В Decrypt из интерфейса SSMS или Visual Studio можно дешифровать процедуру, функцию, триггер или представление (view) в один клик.



В интерфейсе можно просмотреть DDL скрипт дешифрации. Поддерживается одновременное подключение к нескольким экземплярам SQL Server.

3. ApexSQL Discover


image

Выявление имеющихся экземпляров SQL Server, сервисов SSRS, SSAS и SSIS по диапазону IP-адресов и просмотр детальной информации.

image

Из интерфейса можно настроить обнаружение БД по расписанию. ApexSQL Discover может высылать нотификации с результатами обнаружения на электронную почту.

4. ApexSQL Refactor


image

Короткое видео о механизме работы и возможностях


Форматирование кода можно выполнять на основе коробочного профайла или настроить свой, чтобы код выглядел для вас наиболее привычно. Refactor может подсвечивать неиспользуемые переменные в коде, инкапсулировать блоки кода в процедуры, раскрывать «*» в полный список.

image

Одна из полезных функций — разделение таблиц для отделения наименее используемых столбцов. Об объектах, на которые повлияет такое разделение, Refactor сообщит.

image

Также в интерфейсе Refactor можно безопасно менять наименования объектов с изменением всех зависимостей.

image

Об этих и других функциях более подробно можно ознакомиться на странице с описанием утилиты.

5. ApexSQL Model


image

Утилита визуализирует объекты SQL Server и связи между ними. В этом же интерфейсе можно изменять конфигурацию объектов и генерировать соответствующий DDL-код. Все визуализации можно экспортировать в виде изображений.

Фунционал Model расширяется при помощи коммерческих продуктов Diff и Doc. При помощи первого продукта можно сравнить модель с текущим состоянием в БД или сравнить модели двух разных БД, а второй продукт нужен для документирования объектов БД.

6. ApexSQL Plan


image

Короткое видео о механизме работы и возможностях


Это инструмент для оптимизации производительности. Также при помощи ApexSQL Plan можно экспортировать планы в отчёты в форматах HTML и XML. Частый кейс использования этой утилиты — сравнение текущего плана и модифицированного по различным характеристикам.



ApexSQL Plan поддерживает выгрузку из хранилища запросов (query store) и представление характеристик этих запросов в виде дашбордов.

7. ApexSQL Complete


image

Короткое видео о механизме работы и возможностях


Ускоритель написания кода. В интерфейсе утилиты можно настроить алиасы, сниппеты и подсветку кода.

8. ApexSQL Propagate


image

В ApexSQL Propagate можно настроить исполнение кода на различных БД SQL Server, определить очерёдность исполнения.

image

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

9. ApexSQL Search


image

Короткое видео о механизме работы и возможностях


Инструмент выполняет поиск по структуре БД. Отсюда же можно безопасно переименовывать объекты и отслеживать их связи. Результаты поиска экспортируются в HTML, CSV и Excel.

10. ApexSQL DevOps Toolkit


image

Короткое видео о механизме работы и возможностях


Под капотом утилиты работает PowerShell код. Build, Review, Document и Deploy доступны для разработчика из интерфейса ApexSQL DevOps Toolkit. Здесь же можно сгенерировать синтетические данные, автоматически выполнить юнит-тесты, задокументировать изменения. Может подключаться в виде плагина к TeamCity, Jenkins и другим.

В базе знаний ApexSQL есть интересные статьи по DevOps в среде баз данных.

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

  1. ApexSQL Audit — инструмент для аудита БД на соответствие требованиям безопасности, в т.ч. поддерживаются HIPAA, GDPR, PCI. Поддерживаются отчёты и просмотр истории изменений.

    Посмотреть скриншот и видео
    image



  2. ApexSQL Backup — автоматизация создания инкрементального бэкапа, лога транзакций и полного бэкапа. Поддерживается восстановление на определённый момент во времени, можно создавать шаблоны для создания бэкапа и гибко настраивать планы бэкапов.

    Посмотреть скриншот и видео
    image



  3. ApexSQL Defrag — утилита для мониторинга и управления дефрагментацией.

    Посмотреть скриншот и видео
    image



  4. ApexSQL Job — инструмент для управления заданиями, включая историю, расписание и уведомления.

    Посмотреть скриншот
    image

  5. ApexSQL Log — инструмент для чтения лога транзакция для аудита, репликации или отката изменений.

    Посмотреть скриншот и видео
    image



  6. ApexSQL Recover — восстановление повреждённых, удалённых или потерянных данных.

    Посмотреть скриншот и видео
    image



  7. ApexSQL Analyze — инструмент для анализа связей в БД.

    Посмотреть скриншот и видео
    image



  8. ApexSQL Build — инструмент для автоматизации создания БД. Может подключаться к системам контроля версий.

    Посмотреть скриншот и видео
    image



  9. ApexSQL Enforce — улучшатель SQL-кода.

    Посмотреть скриншот и видео
    image



  10. ApexSQL Generate — инструмент для генерации миллионов строк данных за один клик. Поддерживается экспорт тестовых данных в SQL, XML, CSV, JSON и Excel.

    Посмотреть скриншот
    image

  11. ApexSQL Mask — инструмент для поиска, классификации и маскирования чувствительных данных в БД. Имеет 220+ предопределённых масок и 55+ встроенных фильтров для классификации.

    Посмотреть скриншот
    image

  12. ApexSQL Script — инструмент для создания DDL и DML скриптов и исполняемых инсталляционных пакетов.

    Посмотреть скриншот и видео
    image



  13. ApexSQL Source Control — инструмент для интеграции систем контроля версий с SSMS.

    Посмотреть скриншот и видео
    image



  14. ApexSQL Trigger — аудит данных в БД и трансляция в DML.

    Посмотреть скриншот и видео
    image



  15. ApexSQL Unit Test — инструмент для выполнения юнит-тестов напрямую из консоли SSMS.

    Посмотреть скриншот и видео
    image



Напишите в комментариях какими инструментами для аудита и управления БД уже пользуетесь и какие задачи ими решаете.

Чтобы задать вопросы по продуктам ApexSQL, получить на тестирование коммерческие продукты или уточнить цену, оставьте запрос в форме обратной связи у нас на сайте.

Если решаете комплексную задачу по мониторингу и управлению, почитайте наши предыдущие статьи на Хабре:

Мониторинг различных баз данных из единого интерфейса.

Быстрая локализация проблем производительности в SQL Server.

Аудит изменений в инфраструктуре Microsoft (в т.ч. SQL Server).

А ещё можно подписаться на нашу страницу на Фейсбуке.

Комментарии (4)


  1. usharik
    21.10.2019 17:34
    +2

    Очень достойная подборка! Даже жаль, что давно уже с MS SQL не работаю. И где все это было лет пять назад?)))

    Приходилось самому выкручиваться github.com/usharik/MsSqlDependencyBrowser


  1. qwertEHOK
    22.10.2019 20:27

    Поставил ApexSQL Complete. Пользовался весь день, сейчас удалил.
    Минусы
    -После каждого запуска идет какая то генерация (генерация идет после подключения к каждому серверу и переключения между базами)
    -Стандартный autocomplete не отключается, нужно самому
    -Подсказывает только таблицы и функции, связок (как это делает dbForge) нет
    -Страницы стали ощутимо медленнее открываются
    -Вешает студию намертво (за день раза 4)
    -После прибивания процесса открывает все файлы заново, НО это не те файлы что я сохранял, это их копии из папки бэкапа. Соответственно если не посмотреть и их сохранить после работы, то потом надо искать.
    -Цветовое оформление ужасно. Цвета меняются у заголовков вкладки и футере.

    Плюсы
    -Информативнее чем стандартная подсказка


    1. askerov_o Автор
      22.10.2019 21:40

      Подскажите на каком железе запускали и версию SSMS


      1. qwertEHOK
        23.10.2019 09:10

        I5-3470, 16gb ram, SSD
        Ssms 18.2