Problembeschreibung
Stellen Sie sich folgendes Szenario vor:
-
Sie verfügen über eine SharePoint Server 2010-Umgebung mit einer funktionierenden Benutzerprofildienst-Anwendung
-
Sie haben das kumulative Update vom August 2010 oder höher für SharePoint Server 2010 nicht installiert.
-
Sie haben eine Inhaltsdatenbank, die mehrere Websitesammlungen enthält, getrennt und angefügt.
In diesem Szenario werden nach dem Anfügen der Datenbank an Ihre Webanwendung die Mitgliedschaftsinformationen einiger Websitesammlungen geändert, und Sie werden auf der Registerkarte "Mitgliedschaften" in "Mein Profil" der betroffenen Benutzer nicht angezeigt. Die für die Benutzersicht baren Mitgliedschaftsinformationen sind veraltet.
Ursache
Microsoft bestätigt dies als Produktproblem bei der Bereinigung entfernter Websitesammlungen, die im August 2010 Kumulatives Update für SharePoint 2010 (Server Paket KB 2352342 ) behoben wurden. Dieser Fix hat jedoch keine Auswirkungen auf Websitesammlungen, die sich in diesem Zustand befanden, indem Sie Ihre Datenbanken vor der Hotfix-Installation trennten. Wenn Sie die Mitgliedschaftssynchronisierung für diese betroffenen Websitesammlungen wiederherstellen möchten, folgen Sie den Lösungsschritten.
Fehlerbehebung
Führen Sie die nachstehenden Schritte aus, um die Synchronisierung der Mitgliedschaftsinformationen zwischen Inhaltsdatenbank und Profildatenbank für alle Websitesammlungen wiederherzustellen.Warnung:
-
Während dieser Vorgehensweise werden alle aktuellen SharePoint-gruppenbezogenen Mitgliedschaftsinformationen aus der Profildatenbank gelöscht, und Benutzer können Ihre vollständigen "Mitgliedschaftsinformationen" nicht mehr sehen, bis das "Benutzerprofil für SharePoint-voll Synchronisierungsauftrag" alle Websitesammlungen erfolgreich verarbeitet.
-
Der folgende Zeitgeberauftrag sollte deaktiviert werden, während die Schritte ausgeführt werden: "{UPA} Benutzerprofil für die vollständige Synchronisierung von SharePoint",wobei {UPA} der Name Ihrer Benutzerprofildienst-Anwendung ist.
Öffnen Sie die SharePoint 2010-Verwaltungsshell auf dem Computer, auf dem die zentral Administration als lokaler Administrator-Benutzer gehostet wird, der auch Mitglied der Gruppe der Farmadministratoren ist und über die Berechtigung "Vollzugriff" für die Benutzerprofildienst-Anwendung verfügt. ersetzen Sie die URL in der ersten Zeile des folgenden PowerShell-Skript Ausschnitts zu einer der betroffenen Websitesammlungen (dieser Codeausschnitt muss nur einmal ausgeführt werden, und die aktuellen Mitgliedschaftsgruppen werden aus der benutzerprofilanwendung entfernt)
$url = "http://server/sites/sitecoll";$SPSite = get-spsite $url;$context = [Microsoft.SharePoint.SPServiceContext]::GetContext($SPSite)$manager = New-Object Microsoft.Office.Server.UserProfiles.UserProfileManager $context$sourceMethod = [Microsoft.Office.Server.UserProfiles.MemberGroup].getmethod("get_Source")$deleteMethod = [Microsoft.Office.Server.UserProfiles.MemberGroup].getmethod("Delete")foreach ($memberGroup in $manager.GetMemberGroups()){ if ($sourceMethod.Invoke($memberGroup, @()) -eq "SharePointSite") { $deleteMethod.Invoke($memberGroup, @()) } }
Nachdem dieses PowerShell-Skript abgeschlossen ist, führen Sie den folgenden Befehl aus, um eine neue Synchronisierung für die Inhaltsdatenbanken zu planen.
Stsadm -o sync -deleteolddatabases 0
Führen Sie nun das folgende PowerShell-Skript aus, um eine "vollständige Mitgliedschaftssynchronisierung" aller Websitesammlungen in Ihrer Farm zu planen. Get-SPSite-Limit alle | % {[Microsoft. Office. Server. User Profile eingefügt. WSSProfileSynch]:: ScheduleSiteForFullSynchronization ($ _); $ _. Schließen ()} führen Sie die nachstehend aufgeführten Schritte aus.
-
Öffnen Sie die Zentraladministration, klicken Sie im Abschnitt "Überwachung" auf die Seite "Auftragsdefinitionen überprüfen".
-
Suchen Sie den Zeitgeberauftrag "{UPA} User Profile to SharePoint Full Synchronization",wobei {UPA} der Name Ihrer Benutzerprofildienst-Anwendung ist.
-
Klicken Sie auf den Titel des Jobs und dann auf "jetzt ausführen".
-
Nach Abschluss des Auftrags sind die Mitgliedschaftsinformationen auf dem neuesten Stand und werden bei nachfolgenden Läufen für zuvor betroffene Websitesammlungen automatisch synchronisiert.
Weitere Informationen
Planen der Profilsynchronisierung (SharePoint Server 2010)-Zeitgeber- Auftragsreferenz (SharePoint Server 2010)