Не могу получить статистику базы данных для всех баз данных - PullRequest
0 голосов
/ 28 января 2020

Я использую SQL Server 2017, где у меня включен пользователь монитора.

Цель пользователя монитора - DBCC SQLPERF(LOGSPACE); время от времени отслеживать объем используемого журнала во всех базах данных на сервере.

На этой неделе я заметил, что DBCC SQLPERF(LOGSPACE); неожиданно начал показывать только базу данных, к которой он в данный момент подключен, и системные базы данных.

Делая пользователя sysadmin, «исправляет» проблему. Однако я не считаю создание пользователя sysadmin реальным решением проблемы.

У пользователя уже есть права доступа VIEW SERVER STATE, которых раньше было достаточно. Который также указан здесь: https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/dbcc-sqlperf-transact-sql?view=sql-server-ver15

Через несколько недель go было установлено накопительное обновление 18. Я не знаю, если это обновление представило ошибку.

У кого-нибудь есть идеи, как это исправить?

1 Ответ

3 голосов
/ 28 января 2020

разрешить подключение к любой базе данных логину / монитору пользователя:

grant connect any database to monitoruserlogin
...