Maintenance Windows Status per PowerShell setzen

Eine sehr nette Methode auf dem SPContentDatabase Objekt ermöglicht es, den roten Status-Bar für jede Site Collection innerhalb der DB einzublenden:

 

Status Planned:

Status Warning:

 

Das dafür verantwortliche Objekt "SPMaintenanceWindow" muss mit den folgenden Properties erstellt werden und kann danach verwendet werden:

  • MaintenanceType (MaintenancePlanned oder MaintenanceWarning)
  • MaintenanceStartDate
  • MaintenanceEndDate
  • NotificationStartDate
  • NotificationEndDate
  • Duration
  • MaintenanceLink

 

Das ganze lässt sich auch ganz einfach via PowerShell setzen:

$db
=
Get-SPContentDatabase
WSS_Content_Intranet_000

$info
=
New-Object
Microsoft.SharePoint.Administration.SPMaintenanceWindow
"MaintenancePlanned", "5/15/2013", "5/15/2013", "5/13/2012"
,
"5/16/2013", "6:00:00", "https://status.contoso.com/maintanance.html"

$db.MaintenanceWindows.Add($info)

$db.Update()

 

Hier gilt zu beachten, dass man beliebig viele Objekte in das jeweilige Property setzen kann. Mit $db.MaintenanceWindows kann man auflisten, welche MaintenanceWindows bereits gesetzt wurden. Sollte man wieder aufräumen wollen, kann dies einfach mit $db.MaintenanceWindows.Clear() und $db.Update() durchgeführt werden.