Chapter 12 – Configuring Sharepoint 2010 for High Availability Backup

Wrox Professional SP 2010 (Page 283)

Terms —
SLA [service Level Agreement] — Between customer and support groups
OLA [Operation Level Agreement] – Between support groups
RPOs [Recovery Point Objectives] – accept level of data loss. (the shorter the RPO, the more expensive the solution)
RTOs [Recovery time objective] – how long it takes to recover data.

Content Recovery – versioning, recycle bin, Sharepoint Admin tool, windows powershell and central admin

SQL Server Snapshots – a feature of SQL Server Enterprise/Developer Edition that enable you to specify a point in time from which you wish to preserve the contents of a DB. Adding more SQL server snapshots slow th performance.

Recycle Bin – 2 stages:

Stage 1: At the site lvel, availale to users with Full, Design and Contribute permission.

When a user deletes an item, it is sent to the first-stage Recycle Bin. It takes quota to store these items in Recycle Bin. By default keep up to 30 days.

Stage 2: Located at the site collection level. Items deleted from the first-stage Recycle Bin are submitted to the second-stage Recycle Bin. (default keep 30 days) Doesn’t count as site quota. Cannot use to restore a previous version.

Configuring Recycle Bin —

Recycle Bin is configured at the web application level by the server farm administrator. Each web application can have its own settings.

In Central Admin Manage Web Application, General Settings button, you can configure Recycle Bin:

By default, the 2nd-stage Recycle Bin is 50% of the quota (up to 100%)

Versioning —

Configured by site collection administrator on a per-site basis and is bot enabled by default.

>> No Versioning – all files not recoverable by users. Default
>> Create Major Versions – Each iteration of document becomes a full version, e.g., 1.0, 2.0, 3.0….
>> Create Major and Minor Versions – read-only users can only read major version; others can edit minor version.

To enable versioning for libraries:
Select the library you’re configuring Ribbon Library Tools Library Settings General Settings Versioning seetings

To enable versioning for a list:

Exporting and Importing Sites, Lists ad Libraries with PoweShell —

Use Export-SPWeb, you can export a site, and the lists/libraries and can be restored in other sites/farms.

Export-SPWeb -identity <Url or Guid> -path <drive:\destination>

Other options:
* Force – to force export
* HaltOnError or HaltOnWarning
* IncludeUserSecurity – Preserve timestamps, security information and user data
* IncludeVersions – include which types of files and list item version history
* NoFileCompression – Disable file compression
* NoLogFile – supress log files
* UseSQLSnapshot – whether to use SQL snapshots or not.

To export a site, provide path to the site; (-Path)
To export a list or librarym provide path to the list/library

TO export Sites/Lists/Libraries with Central Admin —
<There is no way to import lists/library using Central Admin; You have to use powershell>
Central Admin Backup and Restore Grnular Backup Export a List or site

Importing Sites/Lists/Libraries with Powershell —
Import-SPWeb -identity <Url or Guid> -path <drive:\destination>

HaltOnWarning or HaltOnError
IncludeUserSecurity – preserve timestamps/userdata
UpdateVersion – to resolve file overwrite/new/version issue.

Backing up and Restoring Site Collections —

Backup-SPSite – backsup everything, including workflow and alerts. Are portable and can export to another farm.
NoSiteLock (not recommended due to corrupted data)
UseSqlSnapshot (recommended)

Restoring —
Restore-SPSite –Identity <site collection url> – Path <backup file> [-DatabaseServer DBServerName] [-DatabaseName DBName]

Use –DatabaseServer or –DatabaseName to restore the site collection to a different DB/DB server.
Use –Force to overwrite existing Site Collection
Use –gradualDelete to reduce the DB locks as the site is deleted for overwriting.

Backing Up Site Collection using Central Administration —
Central Admin Backup and Restore Perform a Site Collection Backup

Unattached Content Database Data Recovery —

enables you to back up lists, libraries, sites and site collections and browse the content of a database or database snapshot attached t a SQL server instance, but not assoicated with a web app.

Disaster Recovery —

The less RPO and RTO – increase the cost

Farm Backup/Restore is also known as catastrophic backup and restore.

Backup/Restore Content Database using Central Admin —
Central Admin Backup and Restore Perform a Backup Select component to back up
Expand the web app, and select the content database to back up:

If you want to backup multiple content database, you have to select the entire web application !!!!

When specifying backup path, use UNC path so you can do backup in any server.

Restoring a content database with Central Administration —

Backup Content Database – PowerShell —
Backup-SPFarm -Directory <Backup folder> -BackupMethod {Full | Differential}

-Item <Content database name> [-Verbose]

Restore Content Database – Powershell —
Restore-SPFarm -Directory <Backup folder name> -RestoreMethod Overwrite -Item

<Content database name> [-BackupId <GUID>] [-Verbose]

Backup/Restore Content Database using SQL server – Full, Differential and Incremental
(backup content database directly from SQL Manager, as you would with other database – same with restore)

Database Snapshot —

To create the database snapshot – command :

Create database WSS_Content_Snap
{ Name=WSS_Content,
FileName=’c:\backups\’ )
As snapshot of WSS_Content

Once snapshot created, you can treat it like any read-only database. You can mount it on Sharepoint and render the contents, or you can use it to do an unattached database restore.

Backup/Restore service Application with Powershell —
Backup-SPFarm -Directory <Backup folder> -BackupMethod {Full | Differential}

-Item <Service application name> [-Verbose]

Restore-SPFarm -Directory <Backup folder> -Item <Service application name>

-RecoveryMethod Overwrite [ -BackupId <GUID>] [-Verbose]

To specify which backup to use, use the –BackupId parameter. You can view the backups using this command:
Get-SPBackupHistory – Directory <backup Folder> -ShowBackup

Backup/Restore service Application with Central Admin —
Central Admin Backup & Restore Perform a Backup, select only one service application, or select all.

Backup/Restore a Fram – you cannot downgrade or upgrade topology with farm backup/restore; must be the same topology.
Farm backup/restore cannot can’t be perform to ther versions (e.g., SP 2007)

Backup-SPFarm -Directory <Backup folder> -BackupMethod {Full | Differential}

[ -Verbose]

Restore-SPFarm -Directory <Backup folder> -RestoreMethod {New | Overwrite}

[ -Verbose]

**** When performing farm backup in SP2010, the configuration database is backuped but cannot be restored!!!

So you need to backup and restore configuration database separately using Powershell command.
Backup-SPConfigurationDatabase -Directory <Backup folder> -DatabaseServer

<Database server name> -DatabaseName <Database name> -DatabaseCredentials

<PowerShell Credential Object> [-Verbose]

Restore-SPFarm -Directory <Backup folder> -RestoreMethod Overwrite

-ConfigurationOnly [-Verbose]

Backup Configuration using Central Admin —
Central Admin Backup & Restore Perform a Backup Select Whole Farm In step 2, select [Backup only Configuration settings]

Customization – (including assemblies in GAC, features, site definitions, master pages, page layouts, css, web parts, sites or lists, custom columns, new conten types, custom fields, custom actions, coded workflow, iFilters, registry modification, third party solutions, resource files (*.resx)

The most appropriate and seamless method of containing/managing the recovery of customization is to leverage the capabilities by TFS.

Customization fall outside of the scope of these, such as 14 hive, inetpub and global assembly cache, should be prptected through system file backup.

IIS 7 —

AppCmd.exe makes it easy to backup and restore IIS configuration!!! Use it with parameters to backup/restore/delete backup of the \wiindows\system32\inetsrv\config directory.

As a new feature, IIS 7 checks for a new version every 120 seconds and retains 10 prior versions of the file, which are stored in %systemdrive%\inetpub\history folder. Change the setting by editing the tag: <system.applicationHost/configHistory> sectionin ApplicationHost.config.

Cold Standby solutions – backup and restore.
Warm Standby Solutions – provide a second copy of the data
that can be leveraged in a secondary data center.

High Availability —

Load balancing – can be software or hardware based solution – depends on your goal.

SQL server database mirroring – One database serves the data toclients; the other (mirror) provides a hot or warm standby server.

Hot : Synchronous database mirroring – rapid failover without data loss.
Warm : Asynchronous database mirroring – potential to lose data; support for drive disaster recovery solutions over latent links, such as WAN.

When configuring for SP 2010 for high-availability, it must be configured synchronously and include a [witness server]. The witness server provides automatic failover by periodically ‘polling’ the principal database server to determine whether it’s up/running.

*** The mirror server initiates automatic failover only when (1) the mirror and the witness server remained connected and (2) both have been disconnected from the principal server. (in other words, principal server is down)

Torn Page Repair – try to read the corrupted page from a mirror and use it to replace the page in principal server.

Configure Database morroring for configuration database
$db = Get-SPDatabase | where {$_.Name -match “SharePoint_Config”}


Configuring Database Mirroring for content database
$db = Get-SPDatabase | where {$ -match “WSS_Content”}



Manage Database Mirroring with Central Admin —
Central Admin à Application Management à Manage Content Database à Click on a content database

Enter the failover database server name

Configuring Database Mirroring for Service Application Database
$db = Get-SPDatabase | where {$ -match “Search_PropertyStore_<GUID>”}



Failover Clustering —

Read-only mode – (in SQL Manager)

HTTP Request Monitoring and Throttling —

Every 5 seconds each server checks various aspects of its performance, such as memories and queued request, and compre with acceptable thresholds. If exceeded 3 times in a row, the server goes into throttled mode. No new request accepted; new quest will see a HTTP 503 error (server busy) All other existing connections/sessions will renained up.

Enable HTTP throttling using powershell —


Enable HTTP throttling using Central Admin —
Central Admin à Manage Application à Select Web Application, click General setting à Resource Throttling

Select on or off with this option.

List Throttling – new feature in SP 2010.

Protect the server from large list and the view.

Gradual site delete —



Post a comment or leave a trackback: Trackback URL.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: