Prawo „Zablokuj strony w pamięci” może zostać przyznane dla konta usługi używanego przez SQL Server. Dzięki temu SQL Server zapobiega stronicowaniu pamięci na dysk.
Zauważyłem, że kilka naszych maszyn SQL Server nie ma skonfigurowanych lokalnych zasad, aby zezwolić na to prawo dla konta usługi używanego przez SQL Server. Ponieważ mamy dużą liczbę serwerów, w najlepszym wypadku nudne będzie ręczne sprawdzanie każdego z nich za pomocą konsoli zarządzania „Lokalne zasady systemowe”.
Czy istnieje zapytanie T-SQL, rozszerzona procedura składowana lub inna metoda, której mogę użyć do ustalenia, czy dany serwer ma prawo, czy nie?
Chciałbym aby nie używać EXEC xp_readerrorlog 0, 1, 'lock memory privilege was not granted';
, ponieważ opiera się na sprawdzeniu aktualny dziennik błędów SQL Server; a ten dziennik błędów może nie zawierać odpowiedniego wpisu, zakładając, że dziennik został przywrócony od ostatniego uruchomienia serwera. Zdaję sobie sprawę, że mogłem sprawdzić starsze dzienniki, modyfikując pierwszy parametr od 0
do 1
itp., Jednak zachowujemy tylko 10 dzienników błędów, co może nie wystarczyć. Chcę w bezpieczny sposób potwierdzić ustawienie.