Ich habe das Erste-Hilfe-Kit für SQL Server von der Brent Ozar-Website heruntergeladen. Beim Versuch, das Skript sp_BlitzIndex über Microsoft SQL Server Management Studio für meine master-Datenbank auszuführen, während ich als Administrator auf Azure-Datenbankserverebene angemeldet war, wurde die folgende Fehlermeldung angezeigt:
Meldung 262, Ebene 14, Status 18, Prozedur sp_BlitzIndex, Zeile 18 Die CREATE PROCEDURE-Berechtigung wurde in der 'master'-Datenbank verweigert.
Ich habe die Prozedur erfolgreich auf der Datenbankinstanz erstellt, die ich testen wollte. Als ich die Prozedur ausführte, bekam ich eine Fehlermeldung:
Meldung 50000, Ebene 16, Status 1, Zeile 1265 Ungültiger Objektname 'mydatabase.sys.partitions'.
Als Nächstes habe ich versucht, clever zu sein und den Code für gespeicherte Prozeduren direkt für die Masterdatenbank auszuführen, ohne die gespeicherte Prozedur zu erstellen. Dabei ist der folgende Fehler aufgetreten:
Meldung 50000, Ebene 15, Status 1, Zeile 1267 Der Verweis auf den Datenbank- und / oder Servernamen in "mydatabase.sys.indexes" wird in dieser Version von SQL Server nicht unterstützt.
Ich fühle mich nicht sicher genug, um mit dem Innenleben von ~ 2700 Zeilen indexheuristischer Logik zu spielen. Gibt es eine schnelle und einfache Möglichkeit, diese gespeicherte Prozedur für eine reibungslose Funktion in der Azure SQL-Datenbank zu nutzen, oder sollte ich anderswo nach einem Indexanalysetool / einer gespeicherten Prozedur suchen?
sp_BlitzIndex
an V12 zu arbeiten, oder fehlen immer noch zu viele relevante Bits, um sich zu lohnen? Vorausgesetzt, Sie haben Freizeit / Nachfrage natürlich. :)