10 бесплатных утилит ApexSQL для управления базами данных Microsoft SQL Server
Привет, Хабр! Мы много работаем с 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. В конце статьи кратко расскажем что у них есть из коммерческих решений.
В Compare можно сравнить файлы, папки и объекты SQL Server. Поддерживается двунаправленное сравнение и дальнейшая генерация скрипта для смердживания отличающихся объектов. В интерфейсе утилита умеет подсвечивать синтаксис C#, C++, HTML, JavaScript, PostgreSQL, Python, T-SQL, Visual Basic, XML.
Ключевые особенности —интеграция в SSMS и Visual Studio, вызов объектов из различных инстансов БД для сравнения прямо из Object Explorer и поддержка работы через CLI.
В Decrypt из интерфейса SSMS или Visual Studio можно дешифровать процедуру, функцию, триггер или представление (view) в один клик.
В интерфейсе можно просмотреть DDL скрипт дешифрации. Поддерживается одновременное подключение к нескольким экземплярам SQL Server.
Выявление имеющихся экземпляров SQL Server, сервисов SSRS, SSAS и SSIS по диапазону IP-адресов и просмотр детальной информации.
Из интерфейса можно настроить обнаружение БД по расписанию. ApexSQL Discover может высылать нотификации с результатами обнаружения на электронную почту.
Форматирование кода можно выполнять на основе коробочного профайла или настроить свой, чтобы код выглядел для вас наиболее привычно. Refactor может подсвечивать неиспользуемые переменные в коде, инкапсулировать блоки кода в процедуры, раскрывать »*» в полный список.
Одна из полезных функций — разделение таблиц для отделения наименее используемых столбцов. Об объектах, на которые повлияет такое разделение, Refactor сообщит.
Также в интерфейсе Refactor можно безопасно менять наименования объектов с изменением всех зависимостей.
Об этих и других функциях более подробно можно ознакомиться на странице с описанием утилиты.
Утилита визуализирует объекты SQL Server и связи между ними. В этом же интерфейсе можно изменять конфигурацию объектов и генерировать соответствующий DDL-код. Все визуализации можно экспортировать в виде изображений.
Фунционал Model расширяется при помощи коммерческих продуктов Diff и Doc. При помощи первого продукта можно сравнить модель с текущим состоянием в БД или сравнить модели двух разных БД, а второй продукт нужен для документирования объектов БД.
Это инструмент для оптимизации производительности. Также при помощи ApexSQL Plan можно экспортировать планы в отчёты в форматах HTML и XML. Частый кейс использования этой утилиты — сравнение текущего плана и модифицированного по различным характеристикам.
ApexSQL Plan поддерживает выгрузку из хранилища запросов (query store) и представление характеристик этих запросов в виде дашбордов.
Ускоритель написания кода. В интерфейсе утилиты можно настроить алиасы, сниппеты и подсветку кода.
В ApexSQL Propagate можно настроить исполнение кода на различных БД SQL Server, определить очерёдность исполнения.
Результаты исполненного кода парсятся утилитой и записываются для удобства просмотра результатов исполнения.
Инструмент выполняет поиск по структуре БД. Отсюда же можно безопасно переименовывать объекты и отслеживать их связи. Результаты поиска экспортируются в HTML, CSV и Excel.
Под капотом утилиты работает 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).
А ещё можно подписаться на нашу страницу на Фейсбуке.