Pobrałem zestaw pierwszej pomocy programu SQL Server ze strony internetowej Brenta Ozara. Gdy próbowałem uruchomić skrypt sp_BlitzIndex przeciwko mojej głównej bazie danych za pośrednictwem Microsoft Sql Server Management Studio, gdy jestem zalogowany jako administrator poziomu serwera bazy danych Azure i otrzymałem następujący błąd:
Msg 262, poziom 14, stan 18, procedura sp_BlitzIndex, wiersz 18 Odmowa zezwolenia na utworzenie procedury w bazie danych „master”.
Z powodzeniem utworzyłem procedurę w instancji bazy danych, którą chciałem przetestować. Kiedy wykonałem procedurę, dostałem błąd informujący:
Msg 50000, poziom 16, stan 1, wiersz 1265 Niepoprawna nazwa obiektu „mydatabase.sys.partitions”.
Następnie próbowałem być sprytny i uruchomić kod procedury składowanej bezpośrednio na głównej bazie danych bez tworzenia procedury składowanej i otrzymałem następujący błąd:
Msg 50000, poziom 15, stan 1, wiersz 1267 Odwołanie do bazy danych i / lub nazwy serwera w „mydatabase.sys.indexes” nie jest obsługiwane w tej wersji programu SQL Server.
Nie czuję się wystarczająco pewny siebie, aby zacząć bawić się wewnętrznymi funkcjami ~ 2700 linii heurystycznej logiki indeksu. Czy istnieje szybki i łatwy sposób, aby ta procedura przechowywana ładnie działała w bazie danych Azure SQL Database, czy powinienem szukać gdzie indziej narzędzia do analizy indeksów / procedury przechowywanej?
sp_BlitzIndex
pracę nad V12, czy też nadal brakuje zbyt wielu istotnych bitów, aby było warto? Oczywiście pod warunkiem, że masz wolny czas. :)