Как просмотреть планы выполнения в SQL Server в Linux

У меня SQL Server установлен на Linux. Он был установлен из репозиториев Microsoft, как описано здесь: https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-ubuntu

В MySql я писал EXPLAIN перед моим запросом, чтобы увидеть план выполнения. В SQL Server это не похоже на работу. Но у меня не установлена ​​студийная программа, только SQL Server и sqlcmd инструмент.

Как мне увидеть план выполнения запроса в SQL Server в Linux?

1 ответ

Решение

Microsoft выпустила новый инструмент под названием SQL Operations studio, он похож на SSMS, но доступен в Windows,Linux,Macos.

место для скачивания:
https://docs.microsoft.com/en-us/sql/sql-operations-studio/download

Ниже скриншот того, как это выглядит

Для просмотра фактического плана выполнения с помощью sqlopsstudio(шаги одинаковы для всех платформ)

  • Нажмите CTRL+SHIFT+P
  • Введите запрос выполнения с фактическим планом выполнения, как показано ниже, и выберите выделенный, вы получите фактический план выполнения

Чтобы просмотреть примерный план выполнения:

Просто нажмите на иконку, показанную ниже

Вы также можете использовать связывание клавиш для просмотра фактического плана выполнения. Ниже приведены шаги

1. Нажмите CTRL+SHIFT+P
2. Тип сочетания клавиш
3.В типе плана поиска актуально, как показано ниже
4. Щелкните правой кнопкой мыши по фактическому плану запроса и скажите add key binding с ключом по вашему выбору (для меня это CTRL+M

Ниже часть ответа была написана в то время, когда студия SQLOPS недоступна. Это может быть полезно для любого, у кого нет SQLopsstudio:

В настоящее время просмотр плана выполнения поддерживается только в том случае, если вы работаете в Windows, используете SSMS или какой-либо сторонний инструмент, такой как SQLSentry.

Здесь отслеживается запрос функции: возврат данных ShowPlan в виде текста или XML с выполнением запроса

Еще один вариант - подключиться с помощью VSCODE на Linux и установить show plan xml как показано на скриншоте ниже. Это обеспечивает XML план выполнения

SET showplan_xml ON;

Вы можете взять этот XML и загрузить его Вставить веб-сайт плана и просматривать планы

Ниже скриншот выше XML

Вы также можете просмотреть его в проводнике планов SQLSENTRY (только для Windows) для более глубокого анализа.

Другие вопросы по тегам