===== Создание экземпляра User Profile Service Application в SharePoint 2019 с помощью PowerShell ===== При создании экземпляра службы **User Profile Service** в **SharePoint Server 2019** через веб-гуй есть два неприятных нюанса: * Пул IIS создается не с понятным именем, а с длинным именем в виде идентификатора примерно следующего вида: \\ ''6872cacba29e456ab301a6f60dae925a'' * Имя базы данных Synchronization Database невозможно изменить в веб-гуе и оно создаётся с некрасивым именем примерно следующего вида: \\ ''Sync_79d21c54-63f6-46b4-9273-4aa87ba877fb DB'' Чтобы избежать этих нюансов, можно создать экземпляр службы **User Profile Service** с помощью **SharePoint 2019 Management Shell**. 1) Создаём учётную запись для пула IIS через веб-гуй ЦА, либо с помощью PowerShell, как описано [[https://blog.it-kb.ru/2014/04/21/install-two-tier-farm-sharepoint-server-2013-sp1-on-windows-server-2012-r2-part-7-configure-user-profile-service-synchronization-from-active-directory/|здесь]]. В нашем примере создана учётная запись ''KOM\s-SPS-APUPS''. 2) Создаём пул IIS с желаемым именем и с использованием созданной ранее учётной записи: New-SPServiceApplicationPool -Name "SharePoint AppPool User Profile Service" ` -Account "KOM\s-SPS-APUPS" 3) Создаём экземпляр службы **User Profile Service** с желаемыми именами баз данных, добавляем созданный экземпляр в **Default Proxy Group** и выполняем запуск службы: $ServiceAppName = "User Profile Service Application" $ServiceAppProxyName = "User Profile Service Application Proxy" $DBServer = "KOM-DBSP.holding.com" $AppPoolName = "SharePoint AppPool User Profile Service" $UserProfileDB = "SharePoint_UserProfileSvc_ProfileDB" $UserProfileSyncDB = "SharePoint_UserProfileSvc_SyncDB" $UserProfileSocialDB = "SharePoint_UserProfileSvc_SocialTaggingDB" $MySiteHostLocation = "https://kom-mys.holding.com" $ServiceApplication = New-SPProfileServiceApplication -Name $ServiceAppName ` -ApplicationPool $AppPoolName ` -ProfileDBServer $DBServer ` -ProfileDBName $UserProfileDB ` -ProfileSyncDBServer $DBServer ` -ProfileSyncDBName $UserProfileSyncDB ` -SocialDBServer $DBServer ` -SocialDBName $UserProfileSocialDB ` -MySiteHostLocation $MySiteHostLocation ` -SiteNamingConflictResolution "Block" New-SPProfileServiceApplicationProxy -Name $ServiceAppProxyName ` -ServiceApplication $ServiceApplication -DefaultProxyGroup $ServiceInstance = Get-SPServiceInstance | ` Where-Object { $_.TypeName -eq "User Profile Service" } if ($ServiceInstance.Status -ne "Online") { Start-SPServiceInstance $ServiceInstance } После выполнения последней команды через несколько минут должен запуститься созданный экземпляр службы профилей и в IIS должен появится соостветвующий этой службе пул. Проверить статус экземпляра можно командой вида: Get-SPServiceInstance $ServiceInstance ---- **Дополнительные источники информации**: * [[https://learn.microsoft.com/en-us/powershell/module/sharepoint-server/new-spprofileserviceapplication?view=sharepoint-server-ps|New-SPProfileServiceApplication]] * [[https://www.sharepointdiary.com/2017/08/powershell-to-create-user-profile-service-application-sharepoint-2016.html|Create User Profile Service Application using PowerShell in SharePoint 2016 ]] ---- Проверено на следующих конфигурациях: ^ Версия SharePoint Server ^ Версия PowerShell ^ | SharePoint Server 2019 (16.0.10397.20002) | PowerShell 5.1.20348.1366 | ---- {{:user:blogroot.png?50&nolink |}} Автор первичной редакции:\\ [[user:blogroot|Алексей Максимов]] \\ Время публикации: 26.04.2023 18:52 {{tag>"SharePoint Server 2019" "User Profile Service" PowerShell }} ~~DISCUSSION~~