Если вы столкнулись с сообщением об ошибке “Не удалось открыть новое соединение. Чтобы начать настройку, приложение должно создать некоторые объекты в базе данных MSDB. Для инициализации MSDB для настройки (DTAClient) вам необходимо быть членом роли sysadmin с фиксированной ролью сервера”, пытаясь запустить Database Tuning Advisor (DTA) на новоустановленном SQL Server, не волнуйтесь. У этой проблемы есть решение.
Ошибка возникает, когда DTA не инициализирован на экземпляре SQL Server системным администратором SQL Server в первый раз при запуске приложения. Однако, если DTA уже был запущен на экземпляре системным администратором SQL Server, вы не столкнетесь с этой проблемой.
Но что такое Database Tuning Advisor? Microsoft SQL Server Database Engine Tuning Advisor – это мощный инструмент, который помогает выбрать и создать оптимальный набор индексов, индексированных представлений и разделов без необходимости экспертных знаний о структуре базы данных или внутренностях SQL Server.
Database Engine Tuning Advisor анализирует нагрузку и физическую реализацию одной или нескольких баз данных, чтобы рекомендовать добавление, удаление или изменение физических структур дизайна в ваших базах данных. Эти структуры включают кластеризованные индексы, некластеризованные индексы, индексированные представления и разделы. Консультант также может рекомендовать, какие статистические данные следует собирать для улучшения физических структур дизайна.
Теперь вернемся к решению ошибки. Чтобы инициализировать Database Tuning Advisor, пользователь с разрешениями SQL Server System Administrator (sa) должен выполнить одно из следующих действий:
- Используйте графический интерфейс Database Engine Tuning Advisor для подключения к экземпляру Microsoft SQL Server 2005 или более поздней версии.
- Используйте утилиту dta для настройки первой нагрузки.
После инициализации Database Engine Tuning Advisor, как члены роли sysadmin с фиксированной ролью сервера, так и члены роли db_owner с фиксированной ролью базы данных могут использовать его для настройки баз данных. Однако важно отметить, что члены роли db_owner могут настраивать только базы данных, которыми они владеют.
Ниже приведен скриншот объектов, созданных в базе данных MSDB с помощью SQL Server Database Engine Tuning Advisor:

Следуя этим шагам, вы сможете устранить ошибку “Не удалось открыть новое соединение” и успешно использовать Database Tuning Advisor для оптимизации ваших баз данных SQL Server.