SharePoint Server でカスタマイズをバックアップする

適用対象:yes-img-13 2013yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

SharePoint サーバーの全体管理 Web サイト または Microsoft PowerShell を使用して、SharePoint Server サイトに加えたカスタマイズをバックアップできます。 使用するバックアップ ツールは、展開した環境の種類、必要なバックアップ スケジュール、および組織と締結しているサービス レベル契約によって異なります。

はじめに

この操作を開始する前に、サイトに加えることができるカスタマイズを示した以下の一覧を確認してください。

  • ソリューション (.wsp ファイル) としてパッケージ化されたカスタマイズ。 ソリューションは、開発サイト要素を含み、通常は開発者によって作成されます。 開発サイト要素には、次のものがあります。

    • Web パーツ

    • ワークフロー

    • サイト定義とリスト定義

    • ドキュメント コンバーター

    • イベント レシーバー

    • タイマー ジョブ

    • アセンブリ

  • 通常、Web デザイナーによって作成される作成済みサイト要素は、明示的にコンパイルされず、コンテンツ データベースに配置されます。 作成されたサイト要素には、次のものが含まれます。

    • マスター ページ

    • カスケード スタイル シート

    • フォーム

    • レイアウト ページ

  • Web.config ファイルに対する変更

  • サードパーティのソリューション、およびそれらに関連付けられたバイナリ ファイルとレジストリ キー (IFilter など)

  • ブラウザーで直接編集して作成されたサイトに対する変更

  • ソリューションとしてパッケージ化されていない開発されたカスタマイズ

注:

これらのカスタマイズの種類はそれぞれ異なる種類のバックアップを必要とします。

SharePoint Server でソリューション パッケージをバックアップする

ソリューション パッケージは、SharePoint Designer または Visual Studio を使って作成できます。 すべてのカスタマイズは、ソリューション パッケージとして展開することを強くお勧めします。 詳しくは、「SharePoint ソリューション パッケージの作成」を参照してください。

ソリューション パッケージとは、展開および再利用が可能なファイルであって、サイトに適用される機能、サイト定義、アセンブリのセットを含めることができ、また個別に有効または無効にできるものです。 ソリューション パッケージには、Web パーツ、サイトやリストの定義、カスタム列、新しいコンテンツ タイプ、カスタム フィールド、カスタム アクション、コード化されたワークフロー、ワークフローのアクティビティと条件を含めることができます。

ソリューション パッケージのバックアップに使う方法は、カスタマイズの展開が信頼できるソリューションとサンドボックス ソリューション (部分的に信頼されているコード) のどちらとして行われているかで決まります。

信頼できるソリューションは、ファーム管理者が展開するソリューション パッケージです。 信頼できるソリューションは、ファーム全体に展開され、そのファーム内の任意のサイトで使用できます。 信頼できるソリューションの保存先は構成データベースです。 信頼できるソリューションは、ファームのバックアップが SharePoint Serverのバックアップ機能を使用して行われる際にバックアップされ、構成のみのバックアップに含められます。 また、信頼できるソリューションをグループとしてバックアップすることも、個別にバックアップすることもできます。 信頼できるソリューションは、バックアップ階層に表示されます。

サンドボックス ソリューションは、サイト コレクションの管理者が単一のサイト コレクションに展開できるソリューション パッケージです。 サンドボックス ソリューションは、そのソリューション パッケージの展開先サイト コレクションと関連付けられたコンテンツ データベースに保存されます。 このソリューションは、SharePoint Server ファーム、Web アプリケーション、コンテンツ データベース、およびサイト コレクションのバックアップに含まれますが、バックアップ階層には表示されず、選択やバックアップを個別に行うこともできません。

信頼できるソリューションとサンドボックス ソリューションのどちらについても、元の .wsp ファイルのバックアップとその .wsp ファイルのビルドに使用したソース コードを残しておくことをお勧めします。

サーバーの全体管理を使用して信頼できるソリューションをバックアップするには

  1. この手順を実行するユーザー アカウントがファーム管理者グループのメンバーであることを確認します。

  2. サーバーの全体管理 を起動します。

  3. サーバーの全体管理ホーム ページの [ バックアップと復元] セクションで、[ バックアップの実行] をクリックします。

  4. [ バックアップの実行 - ステップ 1/2: バックアップするコンポーネントの選択] ページで、[ ソリューション] を選択し、[ 次へ] をクリックします。

    単一のソリューションのバックアップのみを行う場合は、個々のソリューションを選択することもできます。

  5. [ バックアップの実行 - ステップ 2/2: バックアップ オプションの選択] ページの [ バックアップの種類] セクションで、[ 完全] または [ 差分] のどちらかを選択します。

    注:

    ソリューションのバックアップを初めて実行する場合は、必ず [完全] オプションで実行してください。 差分バックアップを実行する前に、完全バックアップを実行する必要があります。

  6. [バックアップ ファイルの場所] セクションで、バックアップ フォルダーの汎用名前付け規則 (UNC) パスを入力し、[バックアップの開始] をクリックします。

  7. [バックアップと復元のジョブ状態] ページの上部にある [準備] セクションで、すべてのバックアップ ジョブの全体的な状態を確認できます。 現在のバックアップ ジョブの状態は、このページの下部にある [バックアップ] セクションで確認できます。 この状態ページは 30 秒ごとに自動的に更新されます。 また、[ 更新] をクリックすることで、手動で状態を更新できます。 バックアップと復元は Timer Service を使用したジョブです。 したがって、バックアップが開始されるまで数秒かかる場合があります。

    エラーが発生した場合は、[バックアップと復元ジョブの状態] ページの [エラー メッセージ] 列を確認します。 Spbackup.log ファイルの詳細については、手順 4 で指定した UNC パスを参照してください。

PowerShell を使用して信頼できるソリューションをバックアップするには

  1. 次のメンバーシップがあることを確認します。

    • SQL Server インスタンスにおける securityadmin 固定サーバー ロール。

    • 更新するすべてのデータベースに対する db_owner 固定データベース ロール。

    • PowerShell コマンドレットを実行するサーバーでの Administrators グループ。

    管理者は Add-SPShellAdmin コマンドレットを使用して、SharePoint Server コマンドレットを使用する権限を付与できます。

    注:

    アクセス許可がない場合は、セットアップ管理者または SQL Server 管理者に連絡してアクセス許可を要求してください。 PowerShell アクセス許可の詳細については、「Add-SPShellAdmin」を参照してください。

  2. SharePoint 管理シェルを起動します。

  3. ファーム内のすべてのソリューションをバックアップするには、PowerShell コマンド プロンプトで以下のようにコマンドを入力します。 単一のソリューションをバックアップするには、アイテムのパス "farm\solutions" にそのソリューションの名前を追加します。

    Backup-SPFarm -backupmethod full -directory <UNC location> -item "farm\solutions"
    

    ここで、

    • <UNC location> は、バックアップ ファイルを保存するディレクトリの UNC ロケーションです。

詳細については、「Backup-SPFarm」を参照してください。

注:

コマンドライン管理タスクを実行するときには Windows PowerShell を使用することが推奨されています。 Stsadm コマンドライン ツールは推奨されていませんが、製品の以前のバージョンとの互換性をサポートするために含まれています。

SharePoint Server を使用して、セキュリティで保護されたソリューションをバックアップする

サンドボックス ソリューションのみをバックアップすることはできません。 代わりに、そのサンドボックス ソリューションと関連付けられているファーム、Web アプリケーション、またはコンテンツ データベースをバックアップする必要があります。

SharePoint Server で作成サイト要素をバックアップする

作成サイト要素のみをバックアップすることはできません。 代わりに、その作成サイト要素と関連付けられているファーム、Web アプリケーション、またはコンテンツ データベースをバックアップする必要があります。

SharePoint Server でワークフローをバックアップする

ワークフローは、バックアップできるカスタマイズの特殊なケースです。 バックアップおよび復旧の計画では、ご使用の環境に当てはまる次のいずれかのシナリオに対処するようにしてください。

  • 宣言型ワークフロー (SharePoint Designerで作成されたものなど) は、展開先サイト コレクションのコンテンツ データベースに保存されます。 コンテンツ データベースのバックアップによってこれらのワークフローが保護されます。

  • カスタムの宣言型ワークフロー アクションのコンポーネントは、次の 3 つの場所にあります。

    • アクションの Visual Studio 2013 アセンブリはグローバル アセンブリ キャッシュ (GAC) に保存されます。

    • XML 定義ファイル (。ACTIONS ファイル) は、16\TEMPLATE<LCID>\Workflow ディレクトリに格納されます。

    • アクションを許可された種類として指定する XML エントリは、そのアクションが使用される Web アプリケーションの Web.config ファイルに保存されます。

      ファームのワークフローでカスタムのアクションを使用する場合は、ファイル バックアップ システムを使用してこれらのファイルと XML エントリを保護する必要があります。 Web パーツやイベント レシーバーといった機能と同様、これらのファイルは復旧後、必要に応じてファームへの再適用が必要になります。

  • Visual Studio で作成したコードなど、カスタム コードに依存するワークフローは 2 つの場所に保存されます。 ワークフローの Visual Studio アセンブリは GAC に保存され、XML 定義ファイルは Features ディレクトリに保存されます。 この点は、Web パーツ、イベント レシーバーなど、SharePoint の他の種類の機能と同じです。 ワークフローがソリューション パッケージの一部としてインストールされた場合、ファーム、Web アプリケーション、コンテンツ データベース、サイト コレクションのバックアップによってこれらのワークフローが保護されます。

  • ワークフローが展開されるサイト コレクション以外のサイト コレクションとやり取りするカスタム ワークフローを作成する場合は、双方のサイト コレクションをバックアップしてワ-クフローを保護する必要があります。 こうしたワークフローには、別のサイト コレクションの履歴リストまたはその他のカスタム リストに書き込むものがあります。 ファーム内のすべてのサイト コレクションとそれらに関連付けられたすべてのワークフローをバックアップするには、ファーム バックアップの実行で十分です。

  • まだ展開されていないワークフローは、個別にバックアップおよび復元を行う必要があります。 新しいワークフローを開発していて、そのワークフローを SharePoint Server ファームにまだ展開していない場合は、ワークフロー プロジェクト ファイルの保存先フォルダーをファイル システム バックアップ アプリケーションによってバックアップしてください。

SharePoint Server で Web.config ファイルの変更をバックアップする。

SharePoint Serverに対する一般的なカスタマイズは、Web.config ファイルの変更です。 Web.config ファイルの変更にはサーバーの全体管理または SharePoint Serverの API およびオブジェクト モデルを使用することを強くお勧めします。 これらの変更は、構成データベースに保存されるので、ファームまたは構成のみのバックアップから復旧できます。

サーバーの全体管理 や SharePoint Serverの API およびオブジェクト モデルを使用せずに行われた Web.config ファイルの変更は、ファイル システム バックアップを使用して保護する必要があります。

注:

フォーム ベース認証を使用する場合、Web.config ファイルのプロバイダー登録は手動であり、SharePoint Server のバックアップでは保護されません。 この場合は、ファイル システム バックアップを使用して Web.config ファイルをバックアップしてください。

SharePoint Server でサードパーティ製品をバックアップする

ソリューション パッケージとして展開されるサードパーティ製品は、SharePoint Server のバックアップによって保護されます。 ただし、インストールに必要な元のファイル、配布メディア、ドキュメント、ライセンス キーやプロダクト キーはすべて保管しておくことをお勧めします。

ソリューションとしてパッケージ化されていない開発されたカスタマイズを SharePoint Server でバックアップする。

ソリューション パッケージとして展開されていない、開発されたカスタマイズのバックアップは、カスタマイズ ファイルの場所が標準化されていない可能性があり、また SharePoint Server による自動バックアップが行われないので、複雑な処理になる場合があります。

カスタマイズに追加のアドイン ソフトウェアや他の場所にあるファイルが必要かどうかを判断するには、開発チームまたはカスタマイズ ベンダーにお問い合わせください。 ファイル システム バックアップ ソリューションを使用して、それらのディレクトリをバックアップすることをお勧めします。 次の表は、通常、開発されたカスタマイズが保存される Web サーバーの場所を示しています。

場所 説明
%PROGRAMFILES%\Common files\Microsoft Shared\Web Server Extensions\16
よく更新されるファイル、カスタム アセンブリ、カスタム テンプレート、カスタム サイト定義
Inetpub
IIS 仮想ディレクトリの場所
%WINDIR%\Assembly
グローバル アセンブリ キャッシュ (GAC): 保護されたオペレーティング システムの場所。完全なシステム アクセスを提供するために Microsoft .NET Framework コード アセンブリがインストールされる

関連項目

概念

SharePoint Server でカスタマイズを復元する

SharePoint Server でファームをバックアップする

SharePoint Server でファーム構成をバックアップする

SharePoint Server で Web アプリケーションをバックアップする

SharePoint Server でコンテンツ データベースをバックアップする

SharePoint Server でサイト コレクションをバックアップする

Update Workflow in SharePoint Server