$EnvironmentName =
'<ENVIRONMENTPREFIX>'
$ApplicationName =
'Managed Metadata'
$ApplicationPoolName = $ApplicationName
$ApplicationPoolAccount =
'<MANAGEDMETADATASERVICESACCOUNT (domain\account)'
>
$DBName = $EnvironmentName +
'_SharePoint_service_'
$ApplicationName.Split(
' '
) | ForEach-Object {$DBName += $_}
$ManagedAccount = $ApplicationPoolAccount
#$ManagedAccountPassword = '<MANAGEDACCTPWD>'
$ErrorActionPreference =
"Stop"
# try {Get-SPManagedAccount $ApplicationPoolAccount} catch {New-SPManagedAccount (New-Object System.Management.Automation.PSCredential $ManagedAccount, (ConvertTo-SecureString $ManagedAccountPassword -AsPlainText -Force))}
try
{Get-SPManagedAccount $ApplicationPoolAccount}
catch
{New-SPManagedAccount (Get-Credential $ManagedAccount)}
"Continue"
Get-SPServiceInstance | Where-Object {$_.TypeName -EQ
"Managed Metadata Web Service"
} | Start-SPServiceInstance
$MetadataSvc = New-SPMetadataServiceApplication -Name $ApplicationName -ApplicationPool (New-SPServiceApplicationPool -Name $ApplicationPoolName -Account (Get-SPManagedAccount $ApplicationPoolAccount)) -DatabaseName $DBName
New-SPMetadataServiceApplicationProxy -ServiceApplication $MetadataSvc -Name $ApplicationName -DefaultProxyGroup