Sie befinden sich aktuell in den Christian Brix Blog-Archiven für den folgenden Tag 16.9.2011.
| M | D | M | D | F | S | S |
|---|---|---|---|---|---|---|
| « Mrz | Dez » | |||||
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | ||
- .NET (4)
- Administration (15)
- Allgemein (7)
- C# (4)
- CRM (2)
- MOSS 2007 (34)
- Office (2)
- Programming (5)
- Project-Server (3)
- Projektmanagement (5)
- SharePoint (47)
- SharePoint 2010 (12)
- Uncategorized (1)
- VB.NET (2)
- Web (8)
- WIN 2008 (4)
- Workflow (9)
- 10.3.2012: Probleme mit Windows-Explorer-Ansicht unter Sharepoint (öffnet nicht)
- 12.2.2012: Datenimport Überlegungen Teil 2 (MS-CRM)
- 23.1.2012: Datenimport-Überlegungen (MS-CRM)
- 20.12.2011: Vorhandene Projekte in Project Server hochladen
- 18.12.2011: Project-Server Pro und Contra
- 17.12.2011: Project-Server 2010 Project Web Application (PWA)
- 25.9.2011: Migration MOSS 2007 nach Sharepoint 2010 Schrittweise (Step by Step)
- 16.9.2011: Backup-Script (Powershell) für Sp2010 aller SiteCollections und Websites einer Web-Application
- 31.3.2011: Ändern der Sprache in der SharePoint Zentraladministration (2010/2007)
- 28.1.2011: Was ist neu in SharePoint 2010 Foundation (Serie) - Teil 3
Archive für 16.9.2011
Backup-Script (Powershell) für Sp2010 aller SiteCollections und Websites einer Web-Application
16.9.2011 von cbrix.
Die Aufgabe:
Backup aller SiteCollections einer Web-Application und Export aller einzelnen Unterwebsites der SiteCollection.
Zweck:
Schnelles wieder herstellen von einzelnen Webseiten und SiteCollections wird damit möglich. Es muss nicht umständlich in eine andere Datenbank wieder hergestellt werden, um von dort auf die benötigten Webseiten zu exportieren und dann wieder in die produktive Umgebung zu importieren.
Dazu wird ein Powershell-Script verwendet, welches auch in die Schedules-Tasks unter Windows-Server eingebunden werden kann:
# Das Script erwartet 2 Argumente beim Aufruf
# .\backup.ps1 <WebApplicationUrl> <PfadZumBackUpVerzeichnis>
# Einlesen des Powershell-Snapin für Microsoft Office SharePoint, wenn es nicht schon geladen ist
#
if ( (Get-PSSnapin -Name ‘Microsoft.SharePoint.PowerShell’ -ErrorAction SilentlyContinue) -eq $null) {
Add-PSSnapin -Name ‘Microsoft.SharePoint.PowerShell’
}
# Übernehmen des Kommandozeilen-Arguments für die Web-Application[0] und den Backup-Pfad[1]
#
$siteUrl = $args[0]
$pfad = $args[1]
# Instanziieren des Web-Application Objekts
#
$rootSite = New-Object Microsoft.SharePoint.SPSite($siteUrl)
$spWebApp = $rootSite.WebApplication
# Durchlaufen aller SiteCollections in der Web-Application und Anlegen eines Backups mit dem Namen
# der obersten Website der SiteCollection (.bak) im Pfad, der als zweites Argument an das Script übergeben wurde
foreach($site in $spWebApp.Sites)
{
$web = $site.OpenWeb()
$Datei =$pfad + $web.Title + “.bak” # erhaschen des Titels der Website auf oberster Ebene der SiteCollection
write-host $Datei
Backup-SPsite -Identity $site.url -Path $Datei –Force
# Durchlaufen aller Webseiten der Site-Collection und Export dieser Webseiten
#
foreach($website in $site.Allwebs)
{
# Der Name der exportierten Webseite wird zusammengesetz aus <<Name der SiteCollection>-<Name der Website>>.exp
#
$Datei = $pfad + $web.Title + “-” + $website.Title + “.exp” # erhaschen des Titels der Website die als nächtes exportiert wird
Export-SPweb -Identity $website.url -Path $Datei
}
$site.dispose()
}
# Anmerkungen
# Aufruf des Scripts:
# Vom CMD-Prompt oder aus einem Scheduled Task: powershell <pfad>\backup.ps1 <WebApplicationUrl> <PfadZumBackUpVerzeichnis>
#
# Wiederherstellen von SiteCollections
# Restore-SPSite –Identity http://servername/your/directory -Path <Pfad>\NameDerBackupDatei.bak –Force
#
# Wiederherstellen von WebSites
# Import-SPWeb –Identity http://servername/your/directory -Path <pfad>\NameDerBackupDatei.exp –Force -IncludeUserSecurity
Geschrieben in SharePoint 2010, WIN 2008, SharePoint | Drucken | Keine Kommentare »