![](https://habrastorage.org/webt/-6/gg/hv/-6gghv7tsqwnml7j8ufi21pvxr0.png)
Привет, Хабр! Мы много работаем с Quest Software, и в этом году они приобрели ApexSQL — производителя решений для управления и мониторинга баз данных Microsoft SQL Server. В России об этих ребятах, как нам кажется, знают мало. На главной своего сайта они пишут «Killer tools for SQL Server». Звучит угрожающе. У нас появилась идея представить этого вендора и разобраться что же такого убийственного есть в их решениях. Начнём с хайповой части — бесплатных продуктов. После них будет краткая часть о коммерческих продуктах. Надеюсь, эти программы окажутся вам полезны. Прошу под кат.
В этой статье:
- ApexSQL Compare — инструмент для сравнения SQL-кода, файлов и папок. Работает также в качестве расширения для SSMS или Visual Studio.
- ApexSQL Decrypt — потоковая дешифрация объектов в SQL Server: процедур, функций, триггеров и представление (view). Работает также в качестве расширения для SSMS или Visual Studio.
- ApexSQL Discover — обнаружение экземпляров SQL Server и сопутствующих сервисов SSRS, SSAS и SSIS.
- ApexSQL Refactor — инструмент для рефакторинга и форматирования SQL-кода. Работает в качестве расширения для SSMS или Visual Studio.
- ApexSQL Model — создание диаграмм объектов SQL Server. Работает также в качестве расширения для SSMS или Visual Studio.
- ApexSQL Plan — инструмент для оптимизации Execution plans. Работает также в качестве расширения для SSMS.
- ApexSQL Complete — инструмент автоматически завершает операторы SQL и позволяет добавлять собственные сниппеты (сочетания клавиш для автозаполнения). Работает также в качестве расширения для SSMS или Visual Studio.
- ApexSQL Propagate — инструмент для исполнения SQL-кода на нескольких БД за один раз.
- ApexSQL Search — утилита для поиска данных и объектов в недрах SQL Server. Работает в качестве расширения для SSMS или Visual Studio.
- ApexSQL DevOps Toolkit — инструмент для создания CI/CD пайплайнов. Единственный из всех перечисленных тут продуктов имеет веб-консоль.
Каждый продукт — это часть функционала платных решений ApexSQL. В конце статьи кратко расскажем что у них есть из коммерческих решений.
1. ApexSQL Compare
![image](https://solutioncenter.apexsql.com/wp-content/uploads/2019/09/initiating-a-sql-code-compare-with-files-with-sql.png)
Короткое видео о механизме работы и возможностях
В Compare можно сравнить файлы, папки и объекты SQL Server. Поддерживается двунаправленное сравнение и дальнейшая генерация скрипта для смердживания отличающихся объектов. В интерфейсе утилита умеет подсвечивать синтаксис C#, C++, HTML, JavaScript, PostgreSQL, Python, T-SQL, Visual Basic, XML.
![image](https://www.apexsql.com/sliderslick/images/Compare/6.png)
Ключевые особенности —интеграция в SSMS и Visual Studio, вызов объектов из различных инстансов БД для сравнения прямо из Object Explorer и поддержка работы через CLI.
2. ApexSQL Decrypt
![image](https://www.apexsql.com/sliderslick/images/Decrypt/4.png)
Короткое видео о механизме работы и возможностях
В Decrypt из интерфейса SSMS или Visual Studio можно дешифровать процедуру, функцию, триггер или представление (view) в один клик.
![](https://habrastorage.org/webt/su/92/mh/su92mhclcpjklhjem89jmgfsb-q.png)
В интерфейсе можно просмотреть DDL скрипт дешифрации. Поддерживается одновременное подключение к нескольким экземплярам SQL Server.
3. ApexSQL Discover
![image](https://www.apexsql.com/sliderslick/images/Discover/1.png)
Выявление имеющихся экземпляров SQL Server, сервисов SSRS, SSAS и SSIS по диапазону IP-адресов и просмотр детальной информации.
![image](https://www.apexsql.com/sliderslick/images/Discover/3.png)
Из интерфейса можно настроить обнаружение БД по расписанию. ApexSQL Discover может высылать нотификации с результатами обнаружения на электронную почту.
4. ApexSQL Refactor
![image](https://www.apexsql.com/sliderslick/images/Refactor/Options3.png)
Короткое видео о механизме работы и возможностях
Форматирование кода можно выполнять на основе коробочного профайла или настроить свой, чтобы код выглядел для вас наиболее привычно. Refactor может подсвечивать неиспользуемые переменные в коде, инкапсулировать блоки кода в процедуры, раскрывать «*» в полный список.
![image](https://knowledgebase.apexsql.com/wp-content/uploads/2017/04/108.png)
Одна из полезных функций — разделение таблиц для отделения наименее используемых столбцов. Об объектах, на которые повлияет такое разделение, Refactor сообщит.
![image](https://knowledgebase.apexsql.com/wp-content/uploads/2017/04/111.png)
Также в интерфейсе Refactor можно безопасно менять наименования объектов с изменением всех зависимостей.
![image](https://knowledgebase.apexsql.com/wp-content/uploads/2017/04/116.png)
Об этих и других функциях более подробно можно ознакомиться на странице с описанием утилиты.
5. ApexSQL Model
![image](https://www.apexsql.com/images/screenshots/Model/mainshot.png)
Утилита визуализирует объекты SQL Server и связи между ними. В этом же интерфейсе можно изменять конфигурацию объектов и генерировать соответствующий DDL-код. Все визуализации можно экспортировать в виде изображений.
Фунционал Model расширяется при помощи коммерческих продуктов Diff и Doc. При помощи первого продукта можно сравнить модель с текущим состоянием в БД или сравнить модели двух разных БД, а второй продукт нужен для документирования объектов БД.
6. ApexSQL Plan
![image](https://www.apexsql.com/sliderslick/images/Plan/picture1.png)
Короткое видео о механизме работы и возможностях
Это инструмент для оптимизации производительности. Также при помощи ApexSQL Plan можно экспортировать планы в отчёты в форматах HTML и XML. Частый кейс использования этой утилиты — сравнение текущего плана и модифицированного по различным характеристикам.
![](https://habrastorage.org/webt/ko/f7/4h/kof74hmg4txrp50ubea3cdev4hg.png)
ApexSQL Plan поддерживает выгрузку из хранилища запросов (query store) и представление характеристик этих запросов в виде дашбордов.
7. ApexSQL Complete
![image](https://www.apexsql.com/sliderslick/images/Complete/Aliases_tab.png)
Короткое видео о механизме работы и возможностях
Ускоритель написания кода. В интерфейсе утилиты можно настроить алиасы, сниппеты и подсветку кода.
8. ApexSQL Propagate
![image](https://www.apexsql.com/images/screenshots/Propagate/ApexSQL-Propagate-mainshot-big.png)
В ApexSQL Propagate можно настроить исполнение кода на различных БД SQL Server, определить очерёдность исполнения.
![image](https://www.apexsql.com/images/ScreenshotNew/Propagate/201701/2.png)
Результаты исполненного кода парсятся утилитой и записываются для удобства просмотра результатов исполнения.
9. ApexSQL Search
![image](https://www.apexsql.com/sliderslick/images/Search/Database_object_search.png)
Короткое видео о механизме работы и возможностях
Инструмент выполняет поиск по структуре БД. Отсюда же можно безопасно переименовывать объекты и отслеживать их связи. Результаты поиска экспортируются в HTML, CSV и Excel.
10. ApexSQL DevOps Toolkit
![image](https://www.apexsql.com/sliderslick/images/ContinuousIntegration/shot7.png)
Короткое видео о механизме работы и возможностях
Под капотом утилиты работает PowerShell код. Build, Review, Document и Deploy доступны для разработчика из интерфейса ApexSQL DevOps Toolkit. Здесь же можно сгенерировать синтетические данные, автоматически выполнить юнит-тесты, задокументировать изменения. Может подключаться в виде плагина к TeamCity, Jenkins и другим.
В базе знаний ApexSQL есть интересные статьи по DevOps в среде баз данных.
Теперь, когда мы разобрались с бесплатными решениями, вкратце приведём список платных решений, которые, конечно, обладают более мощным функционалом.
- ApexSQL Audit — инструмент для аудита БД на соответствие требованиям безопасности, в т.ч. поддерживаются HIPAA, GDPR, PCI. Поддерживаются отчёты и просмотр истории изменений.
Посмотреть скриншот и видео
- ApexSQL Backup — автоматизация создания инкрементального бэкапа, лога транзакций и полного бэкапа. Поддерживается восстановление на определённый момент во времени, можно создавать шаблоны для создания бэкапа и гибко настраивать планы бэкапов.
Посмотреть скриншот и видео
- ApexSQL Defrag — утилита для мониторинга и управления дефрагментацией.
Посмотреть скриншот и видео
- ApexSQL Job — инструмент для управления заданиями, включая историю, расписание и уведомления.
Посмотреть скриншот
- ApexSQL Log — инструмент для чтения лога транзакция для аудита, репликации или отката изменений.
Посмотреть скриншот и видео
- ApexSQL Recover — восстановление повреждённых, удалённых или потерянных данных.
Посмотреть скриншот и видео
- ApexSQL Analyze — инструмент для анализа связей в БД.
Посмотреть скриншот и видео
- ApexSQL Build — инструмент для автоматизации создания БД. Может подключаться к системам контроля версий.
Посмотреть скриншот и видео
- ApexSQL Enforce — улучшатель SQL-кода.
Посмотреть скриншот и видео
- ApexSQL Generate — инструмент для генерации миллионов строк данных за один клик. Поддерживается экспорт тестовых данных в SQL, XML, CSV, JSON и Excel.
Посмотреть скриншот
- ApexSQL Mask — инструмент для поиска, классификации и маскирования чувствительных данных в БД. Имеет 220+ предопределённых масок и 55+ встроенных фильтров для классификации.
Посмотреть скриншот
- ApexSQL Script — инструмент для создания DDL и DML скриптов и исполняемых инсталляционных пакетов.
Посмотреть скриншот и видео
- ApexSQL Source Control — инструмент для интеграции систем контроля версий с SSMS.
Посмотреть скриншот и видео
- ApexSQL Trigger — аудит данных в БД и трансляция в DML.
Посмотреть скриншот и видео
- ApexSQL Unit Test — инструмент для выполнения юнит-тестов напрямую из консоли SSMS.
Посмотреть скриншот и видео
Напишите в комментариях какими инструментами для аудита и управления БД уже пользуетесь и какие задачи ими решаете.
Чтобы задать вопросы по продуктам ApexSQL, получить на тестирование коммерческие продукты или уточнить цену, оставьте запрос в форме обратной связи у нас на сайте.
Если решаете комплексную задачу по мониторингу и управлению, почитайте наши предыдущие статьи на Хабре:
Мониторинг различных баз данных из единого интерфейса.
Быстрая локализация проблем производительности в SQL Server.
Аудит изменений в инфраструктуре Microsoft (в т.ч. SQL Server).
А ещё можно подписаться на нашу страницу на Фейсбуке.
Другие наши статьи по тэгу gals software.