Apply High Availability Search Topology – SharePoint 2013 using Power Shell


high2

$App1 = Get-SPEnterpriseSearchServiceInstance -Identity “app1”
$App2 = Get-SPEnterpriseSearchServiceInstance -Identity “app2”
$fe1 = Get-SPEnterpriseSearchServiceInstance -Identity “wfe1”
$fe2 = Get-SPEnterpriseSearchServiceInstance -Identity “wfe2”
$fe3 = Get-SPEnterpriseSearchServiceInstance -Identity “wfe3”
$fe4 = Get-SPEnterpriseSearchServiceInstance -Identity “wfe4”
$searchName = “High Availability Search Service”
$searchDB = “High Availability Search Service_DB”
$searchAcct = “imam\FarmAdminUserName”
$searchManagedAcct = Get-SPManagedAccount | Where {$_.username-eq ‘imam\FarmAdminUserName’}
$searchAppPoolName = “High Availability Search Services Application Pool”
IF((Get-spserviceapplicationPool | Where {$_.name -eq “High Availability Search Services Application Pool”}).name -ne “High Availability Search Services Application Pool”){
$searchAppPool = New-SPServiceApplicationPool -Name $searchAppPoolName -Account $searchManagedAcct}

Write-Host “Starting Search Service Instances on App1…..”

IF((Get-SPEnterpriseSearchServiceInstance -Identity $App1).Status -eq ‘Disabled’)

{
Start-SPEnterpriseSearchServiceInstance -Identity $App1
Write-Host “Starting Search Service Instance on” $App1.Server.Name
Do
{
Start-Sleep 5;
Write-host -NoNewline “.”
}
While ((Get-SPEnterpriseSearchServiceInstance -Identity $App1).Status -eq ‘Online’)
Write-Host -ForegroundColor Green “Search Service Instance Started on” $App1.Server.Name
}
ELSE { Write-Host -f Green “Search Service Instance is already running on” $App1.Server.Name }
Write-Host “Starting Search Service Instances on App2…..”

IF((Get-SPEnterpriseSearchServiceInstance -Identity $App2).Status -eq ‘Disabled’)

{
Start-SPEnterpriseSearchServiceInstance -Identity $App2
Write-Host “Starting Search Service Instance on” $App2.Server.Name
Do
{
Start-Sleep 5;
Write-host -NoNewline “.”
}
While ((Get-SPEnterpriseSearchServiceInstance -Identity $App2).Status -eq ‘Online’)
Write-Host -ForegroundColor Green “Search Service Instance Started on” $App2.Server.Name
}
ELSE { Write-Host -f Green “Search Service Instance is already running on” $App2.Server.Name }
Write-Host “Starting Search Service Instances on fe1…..”

IF((Get-SPEnterpriseSearchServiceInstance -Identity $fe1).Status -eq ‘Disabled’)

{
Start-SPEnterpriseSearchServiceInstance -Identity $fe1
Write-Host “Starting Search Service Instance on” $fe1.Server.Name
Do
{
Start-Sleep 5;
Write-host -NoNewline “.”
}
While ((Get-SPEnterpriseSearchServiceInstance -Identity $fe1).Status -eq ‘Online’)
Write-Host -ForegroundColor Green “Search Service Instance Started on” $fe1.Server.Name
}
ELSE { Write-Host -f Green “Search Service Instance is already running on” $fe1.Server.Name }
Write-Host “Starting Search Service Instances on fe2…..”

IF((Get-SPEnterpriseSearchServiceInstance -Identity $fe2).Status -eq ‘Disabled’)

{
Start-SPEnterpriseSearchServiceInstance -Identity $fe2
Write-Host “Starting Search Service Instance on” $fe2.Server.Name
Do
{
Start-Sleep 5;
Write-host -NoNewline “.”
}
While ((Get-SPEnterpriseSearchServiceInstance -Identity $fe2).Status -eq ‘Online’)
Write-Host -ForegroundColor Green “Search Service Instance Started on” $fe2.Server.Name
}
ELSE { Write-Host -f Green “Search Service Instance is already running on” $fe2.Server.Name }
Write-Host “Starting Search Service Instances on fe3…..”

IF((Get-SPEnterpriseSearchServiceInstance -Identity $fe2).Status -eq ‘Disabled’)

{
Start-SPEnterpriseSearchServiceInstance -Identity $fe3
Write-Host “Starting Search Service Instance on” $fe3.Server.Name
Do
{
Start-Sleep 5;
Write-host -NoNewline “.”
}
While ((Get-SPEnterpriseSearchServiceInstance -Identity $fe3).Status -eq ‘Online’)
Write-Host -ForegroundColor Green “Search Service Instance Started on” $fe3.Server.Name
}
ELSE { Write-Host -f Green “Search Service Instance is already running on” $fe3.Server.Name }
Write-Host “Starting Search Service Instances on fe4…..”

IF((Get-SPEnterpriseSearchServiceInstance -Identity $fe4).Status -eq ‘Disabled’)

{
Start-SPEnterpriseSearchServiceInstance -Identity $fe4
Write-Host “Starting Search Service Instance on” $fe4.Server.Name
Do
{
Start-Sleep 5;
Write-host -NoNewline “.”
}
While ((Get-SPEnterpriseSearchServiceInstance -Identity $fe4).Status -eq ‘Online’)
Write-Host -ForegroundColor Green “Search Service Instance Started on” $fe4.Server.Name
}
ELSE { Write-Host -f Green “Search Service Instance is already running on” $fe4.Server.Name }

Start-SPEnterpriseSearchQueryAndSiteSettingsServiceInstance $App1.server.Name
Do {
Start-Sleep 3;
Write-host -NoNewline “.”
}

While ((Get-SPEnterpriseSearchQueryAndSiteSettingsServiceInstance | Where {$_.Server.Name -eq $App1.server.Name}).status -ne ‘Online’)
Write-Host -ForegroundColor Green “Query and Site Settings Service Instance Started on” $App1.Server.Name

Start-SPEnterpriseSearchQueryAndSiteSettingsServiceInstance $App2.server.Name
Do {
Start-Sleep 3;
Write-host -NoNewline “.”
}
While ((Get-SPEnterpriseSearchQueryAndSiteSettingsServiceInstance | Where {$_.Server.Name -eq $App2.server.Name}).status -ne ‘Online’)
Write-Host -ForegroundColor Green “Query and Site Settings Service Instance Started on” $App2.Server.Name
$searchAppPool = Get-SPServiceApplicationPool -Identity “High Availability Search Services Application Pool”

IF ((Get-SPEnterpriseSearchServiceApplication).Status -ne ‘Online’){
Write-Host “Provisioning. Please wait…”
$searchApp = New-SPEnterpriseSearchServiceApplication -Name $searchName -ApplicationPool $searchAppPool -AdminApplicationPool $searchAppPool -DatabaseName $searchDB
DO {start-sleep 2;
write-host -nonewline “.” } While ( (Get-SPEnterpriseSearchServiceApplication).status -ne ‘Online’)
Write-Host -f green “Provisioned Search Service Application”
} ELSE { write-host -f green “Search Service Application already provisioned.”
$searchApp = Get-SPEnterpriseSearchServiceApplication
}

$AdminComponent = $searchApp | Get-SPEnterpriseSearchAdministrationComponent | Set-SPEnterpriseSearchAdministrationComponent -SearchServiceInstance $App1
$initialTopology = Get-SPEnterpriseSearchTopology -SearchApplication $searchApp
$cloneTopology = New-SPEnterpriseSearchTopology -SearchApplication $searchApp -Clone -SearchTopology $initialTopology
$AdminTopology = New-SPEnterpriseSearchAdminComponent -SearchServiceInstance $App1 -SearchTopology $cloneTopology
$CrawlTopology = New-SPEnterpriseSearchCrawlComponent -SearchServiceInstance $App1 -SearchTopology $cloneTopology
$AnalyticsTopology = New-SPEnterpriseSearchAnalyticsProcessingComponent -SearchServiceInstance $App1 -SearchTopology $cloneTopology
$ContentProcessingTopology = New-SPEnterpriseSearchContentProcessingComponent -SearchServiceInstance $App1 -SearchTopology $cloneTopology
$IndexTopology = New-SPEnterpriseSearchIndexComponent -SearchServiceInstance $App1 -SearchTopology $cloneTopology -IndexPartition 0
$AdminTopology = New-SPEnterpriseSearchAdminComponent -SearchServiceInstance $App2 -SearchTopology $cloneTopology
$CrawlTopology = New-SPEnterpriseSearchCrawlComponent -SearchServiceInstance $App2 -SearchTopology $cloneTopology
$AnalyticsTopology = New-SPEnterpriseSearchAnalyticsProcessingComponent -SearchServiceInstance $App2 -SearchTopology $cloneTopology
$ContentProcessingTopology = New-SPEnterpriseSearchContentProcessingComponent -SearchServiceInstance $App2 -SearchTopology $cloneTopology
$IndexTopology = New-SPEnterpriseSearchIndexComponent -SearchServiceInstance $App2 -SearchTopology $cloneTopology -IndexPartition 0
$fe1 = Get-SPEnterpriseSearchServiceInstance -Identity “sp-ife1”
$QueryTopology = New-SPEnterpriseSearchQueryProcessingComponent -SearchServiceInstance $fe1 -SearchTopology $cloneTopology

$fe2 = Get-SPEnterpriseSearchServiceInstance -Identity “sp-ife2”
$QueryTopology = New-SPEnterpriseSearchQueryProcessingComponent -SearchServiceInstance $fe2 -SearchTopology $cloneTopology

$fe3 = Get-SPEnterpriseSearchServiceInstance -Identity “sp-efe1”
$QueryTopology = New-SPEnterpriseSearchQueryProcessingComponent -SearchServiceInstance $fe3 -SearchTopology $cloneTopology

$fe4 = Get-SPEnterpriseSearchServiceInstance -Identity “sp–efe2”
$QueryTopology = New-SPEnterpriseSearchQueryProcessingComponent -SearchServiceInstance $fe4 -SearchTopology $cloneTopology
Set-SPEnterpriseSearchTopology -Identity $cloneTopology

$initialTopology = Get-SPEnterpriseSearchTopology -SearchApplication $searchApp | where {($_.State) -eq “Inactive”}
Remove-SPEnterpriseSearchTopology -Identity $initialTopology -Confirm:$false

$searchAppProxy = New-SPEnterpriseSearchServiceApplicationProxy -Name “$searchName Proxy” -SearchApplication $searchApp

Unable to load workflow actions from the server in SharePoint designer 2013


w2

Missing feature is the most common reason for this issue.you could use Fiddler to verify any missing feature.The Fiddler will capture the missing feature error as in the following screenshot. The action is to clean up the feature or add back the feature if needed.

w1

in order to clean up fault features you can use this tool:

https://featureadmin.codeplex.com/

 

Regards,

Ahmed Samir

 

Managed Metadata Column Vs Lookup Column in Content Type Hub!


If you start to apply the content type hub you must take in considerations some issues you will focus after the first time you will publish the first content type 🙂

about the creation of the hub and the steps in details i’ll make another post soon isA but today i’ll tell you the problem and how can i found a solution for it.

problems

The Problem Description:

After creating the hub and deploying the content types with lookup columns you will face the first problem.That you already create the lookup column and the list already exist on the web application that host the hub but not exists on the other web applications that the content type will be published on it.so what we can do now.don’t tell me to create the lists manually on all web applications 🙂 

 

A computers red solution key

Solution:

managed metadata navigation

we will make a managed meta data column instead of lookup.

What’s managed metadata column? a definition from Microsoft

A Managed Metadata column is a new column type that can be added to lists, libraries, or content types to enable site users to select values from a specific term set of managed terms and apply these values to their content. You can create and configure a Managed Metadata column to map to an existing term set or term, or you can create a new term set specifically for a Managed Metadata column.

 

If we create the column from this type we can alter the values without depending on a list existence like the lookup column.in this case all you need the Managed Metadata Service to be running and you have the permission to the Taxonomy terms store to enable you to add/edit/delete terms.also this solution solve another big issue it’s the Language of the values

if we used lookup column how you can change the values depending on the current culture in a multilingual portals?

taxonomy-in-term-store

our solution will deal with languages because the term store enable you to add language packs so you can add the value in Arabic then switch the language in the term store to English as another language and translate the word.

image_thumb[5]

when you open any page contains the field you will find the word in the current Language!

 

Thanks & Regards,

Ahmed Samir

 

Removing fault features from a content database in SharePoint 2013 using PowerShell


PowerShell logo

function Remove-SPFeatureFromContentDB($ContentDb, $FeatureId, [switch]$ReportOnly)
{
$db = Get-SPDatabase | where { $_.Name -eq $ContentDb }
[bool]$report = $false
if ($ReportOnly) { $report = $true }

$db.Sites | ForEach-Object {

Remove-SPFeature -obj $_ -objName “site collection” -featId $FeatureId -report $report

$_ | Get-SPWeb -Limit all | ForEach-Object {

Remove-SPFeature -obj $_ -objName “site” -featId $FeatureId -report $report
}
}
}

function Remove-SPFeature($obj, $objName, $featId, [bool]$report)
{
$feature = $obj.Features[$featId]

if ($feature -ne $null) {
if ($report) {
write-host “Feature found in” $objName “:” $obj.Url -foregroundcolor Red
}
else
{
try {
$obj.Features.Remove($feature.DefinitionId, $true)
write-host “Feature successfully removed from” $objName “:” $obj.Url -foregroundcolor Red
}
catch {
write-host “There has been an error trying to remove the feature:” $_
}
}
}
else {
write-host “Feature ID specified does not exist in” $objName “:” $obj.Url
}
}

Sample:

Remove-SPFeatureFromContentDB -ContentDB “WSS_Content_xxx” -FeatureId “Guid” –ReportOnly  just report if the feature exists or no
Remove-SPFeatureFromContentDB -ContentDB “WSS_Content_xxx” -FeatureId “Guid”  // delete the feature from the content database

IISRESET on multiple servers using PowerShell


Perform an IISRESET on multiple servers using PowerShell

#Specify servers in an array variable
[array]$servers = “sp1″,”sp2″,”sp3″,”sp4”
#Step through each server in the array and perform an IISRESET
#Also show IIS service status after the reset has completed
foreach ($server in $servers)
{
Write-Host “Restarting IIS on server $server…”
IISRESET $server /noforce
Write-Host “IIS status for server $server”
IISRESET $server /status
}
Write-Host IIS has been restarted on all servers

All STSADM operations in MOSS 2007


STSADM operations

  • stsadm -o activatefeature {-filename <relative path to Feature.xml> | -name <feature folder> | -id <feature Id>} [-url <url>] [-force]
  • stsadm -o activateformtemplate -url <URL to the site collection> [-formid <form template ID>] [-filename <path to form template file>]
  • stsadm -o addalternatedomain -url <protocol://existing.WebApplication.URLdomain> -incomingurl <protocol://incoming.url.domain> -urlzone <default, extranet, internet, intranet, custom> -resourcename <non-web application resource name>
  • stsadm -o addcontentdb -url <url> -databasename <database name> [-databaseserver <database server name>] [-databaseuser <database username>] [-databasepassword <database password>] [-sitewarning <site warning count>] [-sitemax <site max count>]
  • stsadm -o adddataconnectionfile -filename <path to file to add> [-webaccessible <bool>] [-overwrite <bool>] [-category <bool>]
  • stsadm -o add-ecsfiletrustedlocation -Ssp <SSP name> -Location <URL|UNC> -LocationType SharePoint|Unc|Http -IncludeChildren True|False [-SessionTimeout <time in seconds>] [-ShortSessionTimeout <time in seconds>] [-MaxRequestDuration <time in seconds>] [-MaxWorkbookSize <file size in Mbytes>] [-MaxChartSize <size in Mbytes>] [-VolatileFunctionCacheLifetime <time in seconds>] [-DefaultWorkbookCalcMode File|Manual|Auto|AutoDataTables] [-AllowExternalData None|Dcl|DclAndEmbedded] [-WarnOnDataRefresh True|False] [-StopOpenOnRefreshFailure True|False] [-PeriodicCacheLifetime <time in seconds>] [-ManualCacheLifetime <time in seconds>] [-MaxConcurrentRequestsPerSession <number of requests>] [-AllowUdfs True|False] [-Description <descriptive text>]
  • stsadm -o add-ecssafedataprovider -Ssp <SSP name> -ID <data provider id> -Type Oledb|Odbc|OdbcDsn [-Description <descriptive text>]
  • stsadm -o add-ecstrusteddataconnectionlibrary -Ssp <SSP name> -Location <URL> [-Description <descriptive text>]
  • stsadm -o add-ecsuserdefinedfunction -Ssp <SSP name> -Assembly <strong name|file path> -AssemblyLocation GAC|File [-Enable True|False] [-Description <descriptive text>]
  • stsadm -o addexemptuseragent -name <user-agent to receive InfoPath files instead of a Web page>
  • stsadm -o addpath -url <url> -type <explicitinclusion/wildcardinclusion>
  • stsadm -o addpermissionpolicy -url <url> -userlogin <login name> -permissionlevel <permission policy level> [-zone <URL zone>] [-username <display name>]
  • stsadm -o addsolution -filename <Solution filename> [-lcid <language>]
  • stsadm -o addtemplate -filename <template filename> -title <template title> [-description <template description>]
  • stsadm -o adduser -url <url> -userlogin <DOMAIN\user> -useremail <email address> -role <role name> / -group <group name> -username <display name> [-siteadmin]
  • stsadm -o addwppack  -filename <Web Part Package filename> [-lcid <language>] [-url <url>] [-globalinstall] [-force] [-nodeploy]
  • stsadm -o addwppack  -name <name of Web Part Package> [-lcid <language>] [-url <url>] [-globalinstall] [-force]
  • stsadm -o addzoneurl -url <protocol://existing.WebApplication.URLdomain> -urlzone <default, extranet, internet, intranet, custom> -zonemappedurl <protocol://outgoing.url.domain> -resourcename <non-web application resource name>
  • stsadm -o allowuserformwebserviceproxy -url <Url of the web application> -enable <true to enable, false to disable>
  • stsadm -o allowwebserviceproxy -url <Url of the web application> -enable <true to enable, false to disable>
  • stsadm -o associatewebapp -title <SSP name> [-default | -parent] -url <Web application 1 url,Web application 2 url> [-all]
  • stsadm -o authentication -url <url> -type <windows/forms/websso> [-usebasic (valid only in windows authentication mode)] [-usewindowsintegrated (valid only in windows authentication mode)] [-exclusivelyusentlm (valid only in windows authentication mode)] [-membershipprovider <membership provider name>] [-rolemanager <role manager name>] [-enableclientintegration] [-allowanonymous]
  • stsadm -o backup -url <url> -filename <filename> [-overwrite]
  • stsadm -o backup -directory <UNC path> -backupmethod <full | differential> [-item <created path from tree>] [-percentage <integer between 1 and 100>] [-backupthreads <integer between 1 and 10>] [-showtree] [-quiet]
  • stsadm -o backuphistory -directory <UNC path> [-backup] [-restore]
  • stsadm -o binddrservice -servicename <data retrieval service name> -setting <data retrieval services setting>
  • stsadm -o blockedfilelist -extension <extension> -add [-url <url>]
  • stsadm -o blockedfilelist -extension <extension> -delete [-url <url>]
  • stsadm -o canceldeployment -id <id>
  • stsadm -o changepermissionpolicy -url <url> -userlogin <DOMAIN\name> [-zone <URL zone>] [-username <display name>] [{ -add | -delete } -permissionlevel <permission policy level>]
  • stsadm -o copyappbincontent
  • stsadm -o createadminvs [-admapidname <app pool name>] [-admapidtype <configurableid/NetworkService>] [-admapidlogin <DOMAIN\name>] [-admapidpwd <app pool password>]
  • stsadm -o createcmsmigrationprofile -profilename <profile name> [-description <description>] [-connectionstring <connection string>] -databaseserver <server>  -databasename <name>  -databaseuser <username>  [-databasepassword <password>] [-auth windowsauth|sqlauth] -destination <url> [-rootchannel <channelname>] [-destinationlocale <LCID>] [-migrateresources onlyused|all] [-migrateacls yes|no] [-emailto <address1;address2>] [-emailon success|failure|none|both] [-keeptemporaryfiles Never|Always|Failure] [-enableeventreceivers yes|no]
  • stsadm -o creategroup -url <url> -name <group name> -description <description> -ownerlogin <DOMAIN\name or group name> [-type member|visitor|owner]
  • stsadm -o createsite -url <url> -owneremail <email address> [-ownerlogin <DOMAIN\name>] [-ownername <display name>] [-secondaryemail <email address>] [-secondarylogin <DOMAIN\name>] [-secondaryname <display name>] [-lcid <language>] [-sitetemplate <site template>] [-title <site title>] [-description <site description>] [-hostheaderwebapplicationurl <web application url>] [-quota <quota template>]
  • stsadm -o createsiteinnewdb -url <url> -owneremail <email address> [-ownerlogin <DOMAIN\name>] [-ownername <display name>] [-secondaryemail <email address>] [-secondarylogin <DOMAIN\name>] [-secondaryname <display name>] [-lcid <language>] [-sitetemplate <site template>] [-title <site title>] [-description <site description>] [-hostheaderwebapplicationurl <web application url>] [-quota <quota template>] [-databaseuser <database username>] [-databasepassword <database password>] [-databaseserver <database server name>] [-databasename <database name>]
  • stsadm -o createssp -title <SSP name> -url <Web application url> -mysiteurl <MySite Web application url> -ssplogin <username> -indexserver <index server> -indexlocation <index file path> [-ssppassword <password>] [-sspdatabaseserver <SSP database server>] [-sspdatabasename <SSP database name>] [-sspsqlauthlogin <SQL username>] [-sspsqlauthpassword <SQL password>] [-searchdatabaseserver <search database server>] [-searchdatabasename <search database name>] [-searchsqlauthlogin <SQL username>] [-searchsqlauthpassword <SQL password>] [-ssl <yes|no>]
  • stsadm -o createweb -url <url> [-lcid <language>] [-sitetemplate <site template>] [-title <site title>] [-description <site description>] [-convert] [-unique]
  • stsadm -o databaserepair -url <url> -databasename <database name> [-deletecorruption]
  • stsadm -o deactivatefeature {-filename <relative path to Feature.xml> | -name <feature folder> | -id <feature Id>} [-url <url>] [-force]
  • stsadm -o deactivateformtemplate -url <URL to the site collection> [-formid <form template ID>] [-filename <path to form template file>]
  • stsadm -o deleteadminvs
  • stsadm -o deletealternatedomain -url <ignored> -incomingurl <protocol://incoming.url.domain>
  • stsadm -o deletecmsmigrationprofile -profilename <profile name>
  • stsadm -o deleteconfigdb
  • stsadm -o deletecontentdb -url <url> -databasename <database name> [-databaseserver <database server name>]
  • stsadm -o deletegroup -url <url> -name <group name>
  • stsadm -o deletepath -url <url>
  • stsadm -o deletepermissionpolicy -url <url> -userlogin <login name> [-zone <URL zone>]
  • stsadm -o deletesite -url <url> -deleteadaccounts <true/false>
  • stsadm -o deletesolution -name <Solution name> [-override] [-lcid <language>]
  • stsadm -o deletessp -title <SSP name> [-deletedatabases]
  • stsadm -o deletessptimerjob -title <SSP Name> -jobid <SSP Timer Job Id>
  • stsadm -o deletetemplate -title <template title> [-lcid <language>]
  • stsadm -o deleteuser -url <url> -userlogin <DOMAIN\name> [-group <group>]
  • stsadm -o deleteweb -url <url>
  • stsadm -o deletewppack -name <name of Web Part Package> [-lcid <language>] [-url <url>]
  • stsadm -o deletezoneurl -url <protocol://existing.WebApplication.URLdomain> -urlzone <default, extranet, internet, intranet, custom> -resourcename <non-web application resource name>
  • stsadm -o deploysolution -name <Solution name> [-url <virtual server url>] [-allcontenturls] [-time <time to deploy at>] [-immediate] [-local] [-allowgacdeployment] [-allowcaspolicies] [-lcid <language>] [-force]
  • stsadm -o deploywppack -name <Web Part Package name> [-url <virtual server url>] [-time <time to deploy at>] [-immediate] [-local] [-lcid <language>] [-globalinstall] [-force]
  • stsadm -o disablessc -url <url>
  • stsadm -o displaysolution -name <Solution name>
  • stsadm -o editcmsmigrationprofile -profilename <profile name> [-description <description>] [-connectionstring <connection string>] [-databaseserver <server>] [-databasename <name>] [-databaseuser <username>] [-databasepassword <password>] [-auth sqlauth|windowsauth] [-emailto <address1;address2>] [-emailon success|failure|none|both] [-excludeschema ] [-keeptemporaryfiles Never|Always|Failure] [-enableeventreceivers yes|no]
  • stsadm -o editcontentdeploymentpath -pathname <path name> [-keeptemporaryfiles Never|Always|Failure] [-enableeventreceivers yes|no] [-enablecompression yes|no]
  • stsadm -o editssp -title <SSP name> [-newtitle <new SSP name>] [-sspadminsite <administration site url>] [-ssplogin <username>] [-ssppassword <password>] [-indexserver <index server>] [-indexlocation <index file path>] [-setaccounts <process accounts (domain\username)>] [-ssl <yes|no>]
  • stsadm -o email -outsmtpserver <SMTP server> -fromaddress <email address> -replytoaddress <email address> -codepage <codepage> [-url <url>]
  • stsadm -o enablecmsurlredirect -profilename <profile name> -off
  • stsadm -o enablessc -url <url> [-requiresecondarycontact]
  • stsadm -o enumalternatedomains -url <protocol://existing.WebApplication.URLdomain> -resourcename <non-web application resource name>
  • stsadm -o enumcontentdbs -url <url>
  • stsadm -o enumdataconnectionfiledependants -filename <filename for which to enumerate dependants>
  • stsadm -o enumdataconnectionfiles [-mode <a | u | all | unreferenced>]
  • stsadm -o enumdeployments
  • stsadm -o enumexemptuseragents
  • stsadm -o enumformtemplates
  • stsadm -o enumgroups -url <url>
  • stsadm -o enumroles -url <url>
  • stsadm -o enumservices
  • stsadm -o enumsites -url <virtual server url> -showlocks -redirectedsites
  • stsadm -o enumsolutions
  • stsadm -o enumssp -title <SSP name> [-default | -parent | -all]
  • stsadm -o enumssptimerjobs -title <SSP Name>
  • stsadm -o enumsubwebs -url <url>
  • stsadm -o enumtemplates [-lcid <language>]
  • stsadm -o enumusers -url <url>
  • stsadm -o enumwppacks [-name <name of Web Part Package>] [-url <virtual server url>] [-farm]
  • stsadm -o enumzoneurls -url <protocol://existing.WebApplication.URLdomain> -resourcename <non-web application resource name>
  • stsadm -o execadmsvcjobs
  • stsadm -o export -url <URL to be exported> -filename <export file name> [-overwrite] [-includeusersecurity] [-haltonwarning] [-haltonfatalerror] [-nologfile] [-versions <1-4> 1= Last major version for files and list items (default), 2= The current version, either the last major or the last minor, 3= Last major and last minor version for files and list items, 4= All versions for files and list items] [-cabsize <integer from 1-1024 megabytes> (default: 25)] [-nofilecompression] [-quiet]
  • stsadm -o extendvs -url <url> -ownerlogin <domain\name> -owneremail <email address> [-exclusivelyusentlm] [-ownername <display name>] [-databaseuser <database user>] [-databaseserver <database server>] [-databasename <database name>] [-databasepassword <database user password>] [-lcid <language>] [-sitetemplate <site template>] [-donotcreatesite] [-description <iis web site name>] [-sethostheader] [-apidname <app pool name>] [-apidtype <configurableid/NetworkService>] [-apidlogin <DOMAIN\name>] [-apidpwd <app pool password>] [-allowanonymous]
  • stsadm -o extendvsinwebfarm -url <url> -vsname <web application name> [-exclusivelyusentlm] [-apidname <app pool name>] [-apidtype <configurableid/NetworkService>] [-apidlogin <DOMAIN\name>] [-apidpwd <app pool password>] [-allowanonymous]
  • stsadm -o forcedeleteweb -url <url>
  • stsadm -o formtemplatequiescestatus [-formid <form template ID>] [-filename <path to form template file>]
  • stsadm -o getadminport
  • stsadm -o getdataconnectionfileproperty -filename <filename of the data connection file> -pn <property name>
  • stsadm -o getformsserviceproperty -pn <option name>
  • stsadm -o getformtemplateproperty [-formid <form template ID>] [-filename <path to form template file>] -pn <property name>
  • stsadm -o getproperty -propertyname <property name> [-url <url>] (SharePoint cluster properties: avallowdownload, avcleaningenabled, avdownloadscanenabled, avnumberofthreads, avtimeout, avuploadscanenabled, command-line-upgrade-running, database-command-timeout, database-connection-timeout, data-retrieval-services-enabled, data-retrieval-services-oledb-providers, data-retrieval-services-response-size, data-retrieval-services-timeout, data-retrieval-services-update, data-source-controls-enabled, dead-site-auto-delete, dead-site-notify-after, dead-site-num-notifications, defaultcontentdb-password, defaultcontentdb-server, defaultcontentdb-user, delete-web-send-email, irmaddinsenabled, irmrmscertserver, irmrmsenabled, irmrmsusead, job-ceip-datacollection, job-config-refresh, job-database-statistics, job-dead-site-delete, job-usage-analysis, job-watson-trigger, large-file-chunk-size, token-timeout, workflow-cpu-throttle, workflow-eventdelivery-batchsize, workflow-eventdelivery-throttle, workflow-eventdelivery-timeout, workflow-timerjob-cpu-throttle, workitem-eventdelivery-batchsize, workitem-eventdelivery-throttle; SharePoint virtual server properties: alerts-enabled, alerts-limited, alerts-maximum, change-log-expiration-enabled, change-log-retention-period, data-retrieval-services-enabled, data-retrieval-services-inherit, data-retrieval-services-oledb-providers, data-retrieval-services-response-size, data-retrieval-services-timeout, data-retrieval-services-update, data-source-controls-enabled, days-to-show-new-icon, dead-site-auto-delete, dead-site-notify-after, dead-site-num-notifications, defaultquotatemplate, defaulttimezone, delete-web-send-email, job-change-log-expiration, job-dead-site-delete, job-diskquota-warning, job-immediate-alerts, job-recycle-bin-cleanup, job-usage-analysis, job-workflow, job-workflow-autoclean, job-workflow-failover, max-file-post-size, peoplepicker-activedirectorysearchtimeout, peoplepicker-distributionlistsearchdomains, peoplepicker-nowindowsaccountsfornonwindowsauthenticationmode, peoplepicker-onlysearchwithinsitecollection, peoplepicker-searchadcustomquery, peoplepicker-searchadforests, presenceenabled, recycle-bin-cleanup-enabled, recycle-bin-enabled, recycle-bin-retention-period, second-stage-recycle-bin-quota, send-ad-email)
  • stsadm -o getsitedirectoryscanschedule
  • stsadm -o getsitelock -url <url>
  • stsadm -o getsiteuseraccountdirectorypath -url <url>
  • stsadm -o geturlzone -url <protocol://incoming.url.domain>
  • stsadm -o grantiis7permission
  • stsadm -o import -url <URL to import to> -filename <import file name> [-includeusersecurity] [-haltonwarning] [-haltonfatalerror] [-nologfile] [-updateversions <1-3> 1= Add new versions to the current file (default), 2= Overwrite the file and all its versions (delete then insert),3= Ignore the file if it exists on the destination] [-nofilecompression] [-quiet]
  • stsadm -o installfeature {-filename <relative path to Feature.xml from system feature directory> | -name <feature folder>} [-force]
  • stsadm -o listlogginglevels [-showhidden]
  • stsadm -o listregisteredsecuritytrimmers -ssp <ssp name>
  • stsadm -o localupgradestatus
  • stsadm -o managepermissionpolicylevel -url <url> -name <permission policy level name> [{ -add | -delete }] [-description <description>] [-siteadmin <true | false>] [-siteauditor <true | false>] [-grantpermissions <comma-separated list of permissions>] [-denypermissions <comma-separated list of permissions>]
  • stsadm -o mergecontentdbs -url <url> -sourcedatabasename <source database name> -destinationdatabasename <destination datbabase name> [-operation <1-3> 1 – Analyze (default) 2 – Full Database Merge 3 – Read from file] [-filename <file generated from stsadm -o enumsites>]
  • stsadm -o migrateuser -oldlogin <DOMAIN\name> -newlogin <DOMAIN\name> [-ignoresidhistory]
  • stsadm -o osearch [-action <list|start|stop>] required parameters for ‘start’ (if not already set): role, farmcontactemail, service credentials [-f (suppress prompts)] [-role <Index|Query|IndexQuery>] [-farmcontactemail <email>] [-farmperformancelevel <Reduced|PartlyReduced|Maximum>] [-farmserviceaccount <DOMAIN\name> (service credentials)] [-farmservicepassword <password>] [-defaultindexlocation <directory>] [-propagationlocation <directory>] [-cleansearchdatabase <true|false>] [-ssp <ssp name>] required parameter for ‘cleansearchdatabase’
  • stsadm -o osearchdiacriticsensitive -ssp <ssp name> [-setstatus <True|False>] [-noreset] [-force]
  • stsadm -o preparetomove {-ContentDB <DatabaseServer:DatabaseName> | -Site <URL>} [-OldContentDB <uniqueidentifier>] [-undo]
  • stsadm -o profilechangelog -title <SSP Name> -daysofhistory <number of days> -generateanniversaries
  • stsadm -o profiledeletehandler -type <Full Assembly Path>
  • stsadm -o provisionservice -action <start/stop> -servicetype <servicetype (namespace or assembly qualified name if not SharePoint service)> [-servicename <servicename>]
  • stsadm -o quiescefarm -maxduration <duration in minutes>
  • stsadm -o quiescefarmstatus
  • stsadm -o quiesceformtemplate [-formid <form template ID>] [-filename <path to form template file>] -maxduration <time in minutes>
  • stsadm -o reconvertallformtemplates
  • stsadm -o refreshdms -url <url>
  • stsadm -o refreshsitedms -url <url>
  • stsadm -o registersecuritytrimmer -ssp <ssp name> -id <0 – 2147483647> -typename <assembly qualified TypeName of ISecurityTrimmer implementation> -rulepath <crawl rule URL> [-configprops <name value pairs delimited by ‘~’>]
  • stsadm -o registerwsswriter
  • stsadm -o removedataconnectionfile -filename <filename to remove>
  • stsadm -o removedrservice -servicename <data retrieval service name> -setting <data retrieval services setting>
  • stsadm -o remove-ecsfiletrustedlocation -Ssp <SSP name> -Location <URL|UNC> -LocationType SharePoint|Unc|Http
  • stsadm -o remove-ecssafedataprovider -Ssp <SSP name> -ID <data provider id> -Type Oledb|Odbc|OdbcDsn
  • stsadm -o remove-ecstrusteddataconnectionlibrary -Ssp <SSP name> -Location <URL>
  • stsadm -o remove-ecsuserdefinedfunction -Ssp <SSP name> -Assembly <strong name|file path> -AssemblyLocation GAC|File
  • stsadm -o removeexemptuseragent -name <user-agent to receive InfoPath files instead of a Web page>
  • stsadm -o removeformtemplate [-formid <form template ID>] [-filename <path to form template file>]
  • stsadm -o removesolutiondeploymentlock [-server <server> [-allservers]
  • stsadm -o renameserver -oldservername <oldServerName> -newservername <newServerName>
  • stsadm -o renamesite -oldurl <oldUrl> -newurl <newUrl> 
  • stsadm -o renameweb -url <url> -newname <new subsite name>
  • stsadm -o restore -url <url> -filename <filename> [-hostheaderwebapplicationurl <web application url>] [-overwrite]
  • stsadm -o restore -directory <UNC path> -restoremethod <overwrite | new> [-backupid <Id from backuphistory, see stsadm -help backuphistory>] [-item <created path from tree>] [-percentage <integer between 1 and 100>] [-showtree] [-suppressprompt] [-username <username>] [-password <password>] [-newdatabaseserver <new database server name>] [-quiet]
  • stsadm -o restoressp -title <SSP name> -url <Web application url> -ssplogin <username> -mysiteurl <MySite Web application url> -indexserver <index server> -indexlocation <index file path> [-keepindex] -sspdatabaseserver <SSP database server> -sspdatabasename <SSP database name> [-ssppassword <password>] [-sspsqlauthlogin <SQL username>] [-sspsqlauthpassword <SQL password>] [-searchdatabaseserver <search database server>] [-searchdatabasename <search database name>] [-searchsqlauthlogin <SQL username>] [-searchsqlauthpassword <SQL password>] [-ssl <yes|no>]
  • stsadm -o retractsolution -name <Solution name> [-url <virtual server url>] [-allcontenturls] [-time <time to remove at>] [-immediate] [-local] [-lcid <language>]
  • stsadm -o retractwppack -name <Web Part Package name> [-url <virtual server url>] [-time <time to retract at>] [-immediate] [-local] [-lcid <language>]
  • stsadm -o runcmsmigrationprofile -profilename <profile name> [-skipanalyzer ] [-onlyanalyzer ] [-startover ] [-migratesincetime <DateTime string>] [-migrationfolder <path>] [-exportonly ] [-importonly ] [-htmldiff <path>]
  • stsadm -o runcontentdeploymentjob -jobname <name> [-wait yes|no] [-deploysincetime <datetime>] (<datetime> as “MM/DD/YY HH:MM:SS”)
  • stsadm -o scanforfeatures [-solutionid <Id of Solution>] [-displayonly]
  • stsadm -o setadminport -port <port> [-ssl] [-admapcreatenew] [-admapidname <app pool name>]
  • stsadm -o setapppassword -password <password>
  • stsadm -o setbulkworkflowtaskprocessingschedule -schedule <recurrence string>
  • stsadm -o setconfigdb [-connect] -databaseserver <database server> [-databaseuser <database user>] [-databasepassword <database user password>] [-databasename <database name>] [-exclusivelyusentlm] [-farmuser] [-farmpassword] [-adcreation] [-addomain <Active Directory domain>] [-adou <Active Directory OU>]
  • stsadm -o setcontentdeploymentjobschedule -jobname <name> -schedule <schedule> (Schedule Parameter Examples: “every 5 minutes between 0 and 59”, “hourly between 0 and 59”, “daily at 15:00:00”, “weekly between Fri 22:00:00 and Sun 06:00:00”, “monthly at 15 15:00:00”, “yearly at Jan 1 15:00:00”)
  • stsadm -o setdataconnectionfileproperty -filename <filename of the data connection file> -pn <property name> -pv <property value>
  • stsadm -o setdefaultssp -title <SSP name>
  • stsadm -o set-ecsexternaldata -Ssp <SSP name> [-ConnectionLifetime <time in seconds>] [-UnattendedServiceAccountName <account name>] [-UnattendedServiceAccountPassword <account password>]
  • stsadm -o set-ecsloadbalancing -Ssp <SSP name> [-Scheme WorkbookUrl|RoundRobin|Local] [-RetryInterval <time in seconds>]
  • stsadm -o set-ecsmemoryutilization -Ssp <SSP name> [-MaxPrivateBytes <memory in MBytes>] [-MemoryCacheThreshold <percentage>] [-MaxUnusedObjectAge <time in minutes>]
  • stsadm -o set-ecssecurity -Ssp <SSP name> [-FileAccessMethod UseImpersonation|UseFileAccessAccount] [-AccessModel Delegation|TrustedSubsystem] [-RequireEncryptedUserConnection False|True] [-AllowCrossDomainAccess True|False]
  • stsadm -o set-ecssessionmanagement -Ssp <SSP name> [-MaxSessionsPerUser <number of sessions>]
  • stsadm -o set-ecsworkbookcache -Ssp <SSP name> [-Location <local or UNC path>] [-MaxCacheSize <storage in Mbytes>] [-EnableCachingOfUnusedFiles True|False]
  • stsadm -o setformsserviceproperty -pn <option name> -pv <option value>
  • stsadm -o setformtemplateproperty [-formid <form template ID>] [-filename <path to form template file>] -pn <property name> -pv <property value>
  • stsadm -o setholdschedule -schedule <recurrence string>
  • stsadm -o setlogginglevel [-category < [CategoryName | Manager:CategoryName [;…]] >] {-default | -tracelevel  < None;  Unexpected; Monitorable; High; Medium; Verbose> [-windowslogginglevel < None;  ErrorServiceUnavailable;  ErrorSecurityBreach;  ErrorCritical;  Error;  Warning;  FailureAudit; SuccessAudit;  Information;  Success>] }
  • stsadm -o setpolicyschedule -schedule <recurrence string>
  • stsadm -o setproperty -propertyname <property name> -propertyvalue <property value> [-url <url>] (SharePoint cluster properties:, avallowdownload, avcleaningenabled, avdownloadscanenabled, avnumberofthreads, avtimeout, avuploadscanenabled, command-line-upgrade-running, database-command-timeout, database-connection-timeout, data-retrieval-services-enabled, data-retrieval-services-oledb-providers, data-retrieval-services-response-size, data-retrieval-services-timeout, data-retrieval-services-update, data-source-controls-enabled, dead-site-auto-delete, dead-site-notify-after, dead-site-num-notifications, defaultcontentdb-password, defaultcontentdb-server, defaultcontentdb-user, delete-web-send-email, irmaddinsenabled, irmrmscertserver, irmrmsenabled, irmrmsusead, job-ceip-datacollection, job-config-refresh, job-database-statistics, job-dead-site-delete, job-usage-analysis, job-watson-trigger, large-file-chunk-size, token-timeout, workflow-cpu-throttle, workflow-eventdelivery-batchsize, workflow-eventdelivery-throttle, workflow-eventdelivery-timeout, workflow-timerjob-cpu-throttle, workitem-eventdelivery-batchsize, workitem-eventdelivery-throttle; SharePoint virtual server properties:, alerts-enabled, alerts-limited, alerts-maximum, change-log-expiration-enabled, change-log-retention-period, data-retrieval-services-enabled, data-retrieval-services-inherit, data-retrieval-services-oledb-providers, data-retrieval-services-response-size, data-retrieval-services-timeout, data-retrieval-services-update, data-source-controls-enabled, days-to-show-new-icon, dead-site-auto-delete, dead-site-notify-after, dead-site-num-notifications, defaultquotatemplate, defaulttimezone, delete-web-send-email, job-change-log-expiration, job-dead-site-delete, job-diskquota-warning, job-immediate-alerts, job-recycle-bin-cleanup, job-usage-analysis, job-workflow, job-workflow-autoclean, job-workflow-failover, max-file-post-size, peoplepicker-activedirectorysearchtimeout, peoplepicker-distributionlistsearchdomains, peoplepicker-nowindowsaccountsfornonwindowsauthenticationmode, peoplepicker-onlysearchwithinsitecollection, peoplepicker-searchadcustomquery, peoplepicker-searchadforests, presenceenabled, recycle-bin-cleanup-enabled, recycle-bin-enabled, recycle-bin-retention-period, second-stage-recycle-bin-quota, send-ad-email)
  • stsadm -o setrecordsrepositoryschedule -schedule <recurrence string>
  • stsadm -o setsearchandprocessschedule -schedule <recurrence string>
  • stsadm -o setsharedwebserviceauthn -ntlm | -negotiate
  • stsadm -o setsitedirectoryscanschedule -schedule <recurrence string> (Schedule parameter examples: “every 5 minutes between 0 and 59”, “hourly between 0 and 59”, “daily at 15:00:00”, “weekly between Fri 22:00:00 and Sun 06:00:00”, “monthly at 15 15:00:00”, “yearly at Jan 1 15:00:00”)
  • stsadm -o setsitelock -url <url> -lock <none | noadditions | readonly | noaccess>
  • stsadm -o setsiteuseraccountdirectorypath -url <url> [-path <path>]
  • stsadm -o setsspport -httpport <HTTP port number> -httpsport <HTTPS port number>
  • stsadm -o setworkflowconfig -url <url> {-emailtonopermissionparticipants <enable|disable> | -externalparticipants <enable|disable> | -userdefinedworkflows <enable|disable>}
  • stsadm -o siteowner -url <url> [-ownerlogin <DOMAIN\name>] [-secondarylogin <DOMAIN\name>]
  • stsadm -o spsearch [-action <list | start | stop | attachcontentdatabase | detachcontentdatabase | fullcrawlstart | fullcrawlstop>] [-f (suppress prompts)] [-farmperformancelevel <Reduced | PartlyReduced | Maximum>] [-farmserviceaccount <DOMAIN\name> (service credentials)] [-farmservicepassword <password>] [-farmcontentaccessaccount <DOMAIN\name>] [-farmcontentaccesspassword <password>] [-indexlocation <new index location>] [-databaseserver <server\instance> (default: josebda-moss)] [-databasename <database name> (default: SharePoint_WSS_Search)] [-sqlauthlogin <SQL authenticated database user>] [-sqlauthpassword <password>] -action list -action stop [-f (suppress prompts)] -action start -farmserviceaccount <DOMAIN\name> (service credentials) [-farmservicepassword <password>] -action attachcontentdatabase [-databaseserver <server\instance> (default: josebda-moss)] -databasename <content database name> [-searchserver <search server name> (default: josebda-moss)] -action detachcontentdatabase [-databaseserver <server\instance> (default: josebda-moss)] -databasename <content database name> [-f (suppress prompts)] -action fullcrawlstart -action fullcrawlstop
  • stsadm -o spsearchdiacriticsensitive [-setstatus <True|False>] [-noreset] [-force]
  • stsadm -o sync {-ExcludeWebApps <web applications> | -SyncTiming <schedule(M/H/D:value)> | -SweepTiming <schedule(M/H/D:value)> | -ListOldDatabases <days> | -DeleteOldDatabases <days>}
  • stsadm -o syncsolution -name <Solution name>] [-lcid <language>] [-alllcids]
  • stsadm -o syncsolution -allsolutions
  • stsadm -o unextendvs -url <url> [-deletecontent] [-deleteiissites]
  • stsadm -o uninstallfeature {-filename <relative path to Feature.xml> | -name <feature folder> | -id <feature Id>} [-force]
  • stsadm -o unquiescefarm
  • stsadm -o unquiesceformtemplate [-formid <form template ID>] [-filename <path to form template file>]
  • stsadm -o unregistersecuritytrimmer -ssp <ssp name> -id <0 – 2147483647>
  • stsadm -o unregisterwsswriter
  • stsadm -o updateaccountpassword -userlogin <DOMAIN\name> -password <password> [-noadmin]
  • stsadm -o updatealerttemplates -url <url> [-filename <filename>] [-lcid <language>
  • stsadm -o updatefarmcredentials [-identitytype <configurableid/NetworkService>] [-userlogin <DOMAIN\name>] [-password <password>] [-local [-keyonly]]
  • stsadm -o upgrade {-inplace | -sidebyside} [-url <url>] [-forceupgrade] [-quiet] [-farmuser <farm user>] [-farmpassword <farm user password>] [-reghost] [-sitelistpath <sites xml file>]
  • stsadm -o upgradeformtemplate -filename <path to form template file> [-upgradetype <upgrade type>]
  • stsadm -o upgradesolution -name <Solution name> -filename <upgrade filename> [-time <time to upgrade at>] [-immediate] [-local] [-allowgacdeployment] [-allowcaspolicies] [-lcid <language>]
  • stsadm -o upgradetargetwebapplication -url <URL to upgrade> -relocationurl <new URL for non-upgraded content> -apidname <new app pool name> [-apidtype <configurableid/NetworkService>] [-apidlogin <DOMAIN\name>] [-apidpwd <app pool password>] [-exclusivelyusentlm]
  • stsadm -o uploadformtemplate -filename <path to form template file>
  • stsadm -o userrole -url <url> -userlogin <DOMAIN\name> -role <role name> [-add] [-delete]
  • stsadm -o verifyformtemplate -filename <path to form template file>