Búsqueda de sitios web

¿Cómo realizar una copia de seguridad y restaurar una colección de sitios en SharePoint usando PowerShell?


Requisito: Realizar una copia de seguridad y restaurar una colección de sitios en SharePoint 2016 mediante PowerShell.

¿Cómo hacer una copia de seguridad de una colección de sitios en SharePoint 2016 usando PowerShell?

Aunque puede hacer una copia de seguridad de las colecciones de sitios desde la Administración central de SharePoint, como en ¿Cómo hacer una copia de seguridad de la colección de sitios de SharePoint usando el Administrador central?, la forma de la Administración central es un poco complicada y lleva un tiempo realizar la copia de seguridad. Mientras que PowerShell proporciona una forma rápida y sencilla de realizar copias de seguridad de las colecciones de sitios. Podemos utilizar operaciones programadas y evitar la repetición manual de las mismas tareas, como realizar copias de seguridad. Utilice el Shell de administración de SharePoint 2016 para ejecutar estos cmdlets.

Las copias de seguridad de la colección de sitios de SharePoint se pueden iniciar desde WFE de SharePoint y usted debe ser miembro de un administrador local en el servidor y ser administrador de la granja de servidores.

Copia de seguridad de la colección de sitios de SharePoint mediante PowerShell

Aquí está la sintaxis de PowerShell para realizar una copia de seguridad de una colección de sitios en SharePoint 2016. Se necesitan dos parámetros obligatorios para identificar la colección de sitios a respaldar y la ruta para guardar el archivo de respaldo:

Backup-SPSite -Identity -Path [-Force] [-NoSiteLock] [-UseSqlSnapshot]

  • Forzar: sobrescribe el archivo de copia de seguridad con el mismo nombre.
  • NoSiteLock: evita que el sitio pase al modo de solo lectura mientras se realiza la copia de seguridad. Sin embargo, si alguien actualiza el sitio mientras se crea la copia de seguridad, podría provocar daños en los datos.
  • UseSQLSnapshot : se tomará una instantánea de la base de datos antes de que comience la copia de seguridad y la copia de seguridad se realizará a partir de la instantánea. La ventaja es que se pueden realizar cambios en el sitio mientras se ejecuta el proceso de copia de seguridad sin temor a sufrir daños. La instantánea se eliminará automáticamente cuando se complete la copia de seguridad. Al utilizar este método, no es necesario especificar el parámetro -NoSiteLock.

Colección de sitios de respaldo en SharePoint 2013: ejemplo de PowerShell:

Por ejemplo: para hacer una copia de seguridad de la colección de sitios "IT" en "https://intranet.crescent.com/sites/IT" en la ubicación "C:\Backups\", usaría el siguiente comando de PowerShell:


 Backup-SPSite https://intranet.crescent.com/sites/IT -path d:\backup\it.bak

El cmdlet Backup-SPSite realiza una copia de seguridad de todo el contenido de la colección de sitios, incluidos documentos, páginas, alertas, flujos de trabajo, etc., y produce una copia de seguridad de la colección de sitios con la extensión .bak.

Copia de seguridad de todos los sitios en una aplicación web:

PowerShell nos brinda la capacidad de automatizar tareas repetidas con menos esfuerzo administrativo. Por ejemplo, si necesita hacer una copia de seguridad de todas las colecciones de sitios desde una aplicación web, sería complicado ejecutar el mismo comando tantas veces. En su lugar, puede utilizar el siguiente PowerShell para recorrer cada colección de sitios en la aplicación web y realizar una copia de seguridad de cada uno. ¡Esto también se puede extender a todas las colecciones de sitios en todas las aplicaciones web de la granja!

Script de PowerShell para realizar copias de seguridad de todas las colecciones de sitios de SharePoint

Para hacer una copia de seguridad de un sitio en SharePoint Server, use el cmdlet Backup-SPSite:


Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

#Configuration parameters
$BackupLocation="D:\backups\"
$WebAppURL="https://company.sharepoint.com"

#Get All site collections under the given web app
$SitesColl= Get-SPWebApplication $WebAppURL | Get-SPSite -limit ALL

#Iterate through each site collection
Foreach($Site in $SitesColl)
{
   #Backup the site collection 
   $FilePath = $BackupLocation + $Site.Url.Replace("https://","").Replace("/","-") + ".bak"
   Backup-SPSite -Identity $Site.Url -Path $FilePath -Force 
   Write-Host "Backup completed Successfully for $($Site.Url)"
}

Restaurar la copia de seguridad de la colección de sitios en SharePoint 2016 usando PowerShell:

¿Cómo restaurar la colección de sitios en SharePoint 2013 usando PowerShell? El procedimiento de restauración es similar al proceso de copia de seguridad. El comando Restore-SPSite requiere los parámetros de ruta del archivo de copia de seguridad y de identidad de la colección de sitios. Esta es la sintaxis básica para restaurar colecciones de sitios en SharePoint:

Restore-SPSite -Identity -Path [-DatabaseServer] [-DatabaseName] [-Force] [-GradualDelete]< /lapso>

  • GradualDelete: cuando se sobrescribe una colección de sitios existente mediante restauración, el parámetro GradualDelete elimina la colección de sitios gradualmente con el tiempo para reducir el impacto en el rendimiento del servidor.

Por ejemplo, para restaurar el archivo "IT.bak", utilice el siguiente comando:


Restore-SPSite https://portal.crescent.com/sites/IT -path c:\backup\it.bak

Esto restaurará el archivo BAK proporcionado en una nueva colección de sitios. La colección de sitios se creará automáticamente.

Para sobrescribir una colección de sitios existente desde el archivo de copia de seguridad, utilice el parámetro -Force.

Tenga en cuenta que existen algunas limitaciones para restaurar la colección de sitios:

  • Una base de datos de contenido solo puede contener una copia de una colección de sitios determinada. Por lo tanto, si desea restaurar su copia de seguridad en la misma aplicación web desde la que se realizó la copia de seguridad, debe eliminar la colección de sitios original o crear una nueva base de datos de contenido en la que se pueda almacenar la copia de seguridad.
  • La copia de seguridad de la colección de sitios se puede restaurar en la misma granja o en una granja diferente, siempre que la granja de destino sea de la misma compilación o posterior que la granja de origen.

Artículos relacionados