Share via


Vorbereiten von Service Manager 2012 für das Upgrade auf SP1

 

Veröffentlicht: Juli 2016

Gilt für: System Center 2012 SP1 - Service Manager, System Center 2012 R2 Service Manager

In diesem Abschnitt wird beschrieben, wie die System Center 2012 – Service Manager-Umgebung für ein Upgrade vorbereitet wird. Aktualisieren Sie hierzu den Data Warehouse-Verwaltungsserver, indem Sie die folgenden Verfahren ausführen:

  1. Rufen Sie eine Liste der Data Warehouse-Aufträge auf, die ausgeführt werden.

  2. Deaktivieren Sie die Data Warehouse-Auftragszeitpläne.

  3. Stellen Sie sicher, dass die Data Warehouse-Aufträge beendet wurden.

Wenn alle Data Warehouse-Aufträge fertig gestellt wurden, können Sie das Upgrade des Data Warehouse-Verwaltungsservers starten.

Führen Sie nach der Data Warehouse-Aktualisierung die folgenden Verfahren auf dem ersten Service Manager-Verwaltungsserver aus:

  1. Warten Sie zehn Minuten, und starten Sie dann das Upgrade des Service Manager-Verwaltungsservers.

So rufen Sie eine Liste der Data Warehouse-Aufträge mithilfe von Windows PowerShell-Cmdlets auf

  1. Klicken Sie auf dem Computer, auf dem der Verwaltungsserver des Data Warehouse gehostet wird, auf Start > Programme > Microsoft System Center 2012 und dann auf Service Manager Shell.

  2. Geben Sie die nachfolgend aufgeführten Befehle ein, und drücken Sie nach jedem Befehl die EINGABETASTE:

    Set-ExecutionPolicy –force RemoteSigned  
    
    cd 'C:\Program Files\Microsoft System Center 2012\Service Manager'  
    Import-Module .\Microsoft.EnterpriseManagement.Warehouse.Cmdlets.psd1  
    
    Get-SCDWJob  
    
  3. Eine Liste der Data Warehouse-Aufträge wird angezeigt. Die Liste wird für das nächste Verfahren benötigt („Deaktivieren der Data Warehouse-Auftragszeitpläne mithilfe von Windows PowerShell-Cmdlets“).

So deaktivieren Sie die Data Warehouse-Auftragszeitpläne mithilfe von Windows PowerShell-Cmdlets

  1. Geben Sie die nachfolgend aufgeführten Befehle ein, und drücken Sie nach jedem Befehl die EINGABETASTE:

    Disable-SCDWJobSchedule –JobName Extract_<data warehouse management group name>  
    
    Disable-SCDWJobSchedule –JobName Extract_<Service Manager management group name>  
    
    Disable-SCDWJobSchedule –JobName Transform.Common  
    
    Disable-SCDWJobSchedule –JobName Load.Common  
    
    Disable-SCDWJobSchedule –JobName DWMaintenance  
    
    Disable-SCDWJobSchedule –JobName MPSyncJob  
    
    Start-SCDWJob –JobName MPSyncJob  
    

    Mit dem letzten Befehl zum Starten von MPSyncJob wird die Ausführung der ETL-Aufträge (Extrahieren, Transformieren und Laden) bis zur Fertigstellung ermöglicht. Danach werden die Aufträge beendet, da alle Zeitpläne deaktiviert wurden. Geben Sie exit ein, um das Windows PowerShell-Fenster zu schließen.

So stellen Sie sicher, dass die Data Warehouse-Aufträge beendet wurden

  1. Klicken Sie in der Service Manager-Konsole auf Data Warehouse.

  2. Erweitern Sie im Bereich Verwaltung das Element Data Warehouse, und klicken Sie dann auf Data Warehouse-Aufträge.

  3. Prüfen Sie den Zustand der einzelnen Data Warehouse-Aufträge anhand der Spalte Status im Bereich Data Warehouse-Aufträge. Sie können mit dem nächsten Verfahren zum Beenden des Self-Service-Portals fortfahren, sofern der Status für alle Aufträge Nicht gestartet lautet. Wenn Ihre Umgebung kein Self-Service-Portal umfasst, können Sie mit dem unter Upgrade auf System Center 2012 SP1 – Service Manager beschriebenen Upgradevorgang beginnen.

So vermeiden Sie Fehler bei MPSync-Aufträgen

  • Führen Sie zur Problembehebung das u. a. SQL-Skript an der DWRepository-Datenbank aus, um die SQL-Skripts abzurufen, durch die eine Einschränkung für den Primärschlüssel in den Fakttabellen der DWRepository-Datenbank abgelegt und hinzugefügt werden.

    ;WITH FactName  
    AS (  
           select w.WarehouseEntityName from etl.WarehouseEntity w  
           join etl.WarehouseEntityType t on w.WarehouseEntityTypeId = t.WarehouseEntityTypeId  
           where t.WarehouseEntityTypeName = 'Fact'  
    ),FactList  
    AS (  
        SELECT  PartitionName, p.WarehouseEntityName,  
                RANK() OVER ( PARTITION BY p.WarehouseEntityName ORDER BY PartitionName ASC ) AS RK  
        FROM    etl.TablePartition p  
           join FactName f on p.WarehouseEntityName = f.WarehouseEntityName  
    )  
    , FactPKList  
    AS (  
        SELECT  f.WarehouseEntityName, a.TABLE_NAME, a.COLUMN_NAME, b.CONSTRAINT_NAME, f.RK,  
                CASE WHEN b.CONSTRAINT_NAME = 'PK_' + f.WarehouseEntityName THEN 1 ELSE 0 END AS DefaultConstraints  
        FROM    FactList f  
        JOIN    INFORMATION_SCHEMA.KEY_COLUMN_USAGE a ON f.PartitionName = a.TABLE_NAME  
        JOIN    INFORMATION_SCHEMA.TABLE_CONSTRAINTS b ON a.CONSTRAINT_NAME = b.CONSTRAINT_NAME AND b.CONSTRAINT_TYPE = 'Primary key'  
    )  
    , FactWithoutDefaultConstraints  
    AS (  
        SELECT  a.*  
        FROM    FactPKList a  
        LEFT JOIN FactPKList b ON b.WarehouseEntityName = a.WarehouseEntityName AND b.DefaultConstraints = 1  
        WHERE   b.WarehouseEntityName IS NULL AND a.RK = 1  
    )  
    , FactPKListStr  
    AS (  
        SELECT  DISTINCT f1.WarehouseEntityName, f1.TABLE_NAME, f1.CONSTRAINT_NAME, F.COLUMN_NAME AS PKList  
        FROM    FactWithoutDefaultConstraints f1  
        CROSS APPLY (  
                        SELECT  '[' + COLUMN_NAME + '],'  
                        FROM    FactWithoutDefaultConstraints f2  
                        WHERE   f2.TABLE_NAME = f1.TABLE_NAME  
                        ORDER BY COLUMN_NAME  
                    FOR  
                       XML PATH('')  
                    ) AS F (COLUMN_NAME)  
    )  
    SELECT  'ALTER TABLE [dbo].[' + f.TABLE_NAME + '] DROP CONSTRAINT [' + f.CONSTRAINT_NAME + ']' + CHAR(13) + CHAR(10) +  
            'ALTER TABLE [dbo].[' + f.TABLE_NAME + '] ADD CONSTRAINT [PK_' + f.WarehouseEntityName + '] PRIMARY KEY NONCLUSTERED (' + SUBSTRING(f.PKList, 1, LEN(f.PKList) -1) + ')' + CHAR(13) + CHAR(10)  
    FROM    FactPKListStr f