Extreme SCCM Troubleshooting

Heute kam ich zu einer ziemlich interessanten Situation. Auf einer Central Site mit diversen Primary Child Sites wurde versucht, das SP2 zu installieren. Der Prerequisite-Checker wurde vorher ausgeführt, ebenso ein /testdbupgrade an einer Kopie der produktiven Datenbank. Alles im grünen Bereich also. Einem Upgrade stand also nichts im Weg.
Leider aber endete die Installation des SP’s mit folgender Meldung:

Creating logins and assigning roles for site systems.
Assigning server servername to role SMS Reporting Point
Setting up Reporting Security.
***SqlError: [42000][102][Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near ‘-‘.

Schönes Ding. Das SP2-Setup hat an dieser Stelle schon diverse Datenbank-Modifikationen vorgenommen und dann bricht es ab. Gleichzeitig waren (aus mir im Nachhinein nicht nachvollziehbaren Gründen) einige SCCM-relevanten Dienste (SMS_Executive und SMS_Site_Component_Manager) zum Löschen markiert. Installation von SP1 bzw. Site Reset endete in der exakt gleichen Fehlermeldung (s.o.). Ich hab mir im Hinterkopf schon mal sämtliche Recovery-Szenarien zurecht gelegt. Aufgeben wäre aber unsportlich, also machte ich mich auf die Suche nach dem Problem. Das Logfile gab leider keine Details preis. Also fix einen SQL-Trace erstellt und gehofft, dass hier etwas Verwertbares dabei entsteht. Das Ergebnis sah so aus:

clip_image002

Immerhin! Ein erster Hinweis. Es wurde versucht, die Stored Procedure spSetSchemaViewPerms auszuführen. Was ConfigMgr kann, das kann ich schon längst. Ich führte die Stored Procedure im SQL Management Studio aus und bekam als Ergebnis “Incorrect syntax near ‘-‘”. Bingo! Immerhin war damit der Übeltäter schon ausfindig gemacht. Eine Lösung war nicht mehr weit … Was macht nun diese SP? Sie ermittelt alle Views, die mit v_ beginnen, in der ConfigMgr-Datenbank (SELECT name FROM sys.views WHERE name like ‘v[_]%’), um dann pro View Permissions zu setzen. Bei allen default SCCM-Views ist das auch kein Problem. In diesem Fall wurde aber ein View angelegt, der (Fehler 1) ebenfalls mit v_ beginnt und (Fehler 2) ein ““ im Namen hat. Durch das v_ wurde der Custom View überhaupt mit “erwischt” und durch das ““ schlug “EXEC(‘GRANT SELECT ON ‘ + @viewname + ‘ to smsschm_users, webreport_approle’)” innerhalb der Stored Procedure fehl. Lange Rede, kurzer Sinn: ich löschte den Custom View und startete die SP-Installation neu. Leider ist genau diese Modifikation an der Datenbank offensichtlich nicht im /testdbupgrade enthalten.

3 Gedanken zu „Extreme SCCM Troubleshooting

  1. Christoph Voigt

    Schönes Ding 😉

    Den Ansatz über SQL Trace muss ich mir mal merken – zur Sicherheit habe ich gleich mal alle evtl. selbst erstellten Views überprüft, gottseidank keinen gefunden.

  2. Herbert

    Hallo Torsten,

    willkommen im Club. Dieses Feature hatte ich schon in SMS2003 beim Update vom Sp1 auf das SP2. Aus diesem Grund vermeide ich es Views in der SMS DB anzulegen und habe mittlerweile meine ganzen Auswertungen in einer seperaten Datenbank abgelegt! … und meine Viewes habe ich dann nicht mehr mit v_ anfangen lassen!

    Viele Grüße

    Herbert

    PS: unbestätigte Informationen aus MS Quellen, "Stand heute" soll das deutsche SP2 Anfang Dezember kommen, da es noch einige Probleme im Zusammenhang mit dem OSDeployment Windows 7 geben soll. Also lass mich mal das Gerücht fleissig streuen, vielleicht halten sich die Entwickler ja dran! Ohne SP2 kann ich halt mit Windows 7 nicht wirklich viel anfangen! :-((

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert