SharePointをバックアップし、復元する方法としては、

 

stsadm.exe -o -backup -url xxxxx  -filename xxxx

で吸い上げたバックアップファイルを

stsadm.exe -o -restore -url xxxxx  -filename xxxx

で復元する方法があります。これは、簡単なコマンド投入だけでサイトを復元出来るので便利です。

特に、開発環境でのバックアップとリストアは頻繁に行いますので、非常に便利です。

しかし、本番運用でコンテンツDBのサイズが巨大になるにつけ、色々と不都合が生じるなと感じるのでご報告。

 

■リストア時間

経験的には、stsadm.exe -o -restoreでの復元は、バックアップファイルが1Gあると約一時間程かかります。

ユーザさんが積極的にSharePointを使いこなしてデータ量が増えてゆくと、おのずとサイズは大きくなります。

コンテンツDBが20GBにでもなったら、単純計算で復元に20時間かかります。しかし、20時間も動き続けるコマンドがAbortする可能性は少なくないと思われます。

正直、今までのお客さんはコンテンツDBサイズが1GBを超える事は無かったので、こんな簡単な問題に気が付かなかった私。。。

 

■バージョンの違い

stsadm -o -backup~で吸い上げたバックアップファイルを、stsadm -o -restore~でリストアする際に「バージョンが違います」的なメッセージで復元出来ない事がありました。原因はバックアップ取得後にパッチを適用した為に、SharePointのファームバージョンが上がった事が原因でした。

 

ファームのバージョン確認画面は

サーバーの全体管理 > サーバー構成の管理 > ファーム サーバー
で確認します。

各バージョンは以下が参考になりました。

http://www.mindsharpblogs.com/penny/articles/481.aspx

そう考えると、パッチ適用前のバックアップとしてはSQLバックアップが必須ですね。

 

■SQLバックアップ

SQL Serverの標準機能でコンテンツDBをバックアップし、それをリストアする方法もあります。6GBのコンテンツDBをリストアするのにかかった時間は約10分でした。ただ、SharePointDesignerでカスタマイズした画面やデータビューは復元されるのですが、サードベンダー製のWebパーツについては、要検証ですね。

 

■参考URL

組み込みツールを使用してサイト コレクションをバックアップおよび復元する

http://technet.microsoft.com/ja-jp/library/cc706876.aspx