ファームを復元する (SharePoint Server)

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

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

開始する前に

ファーム レベルの復旧は、通常、ファーム全体に影響のある問題が発生した場合、またはファームの一部の部分的な復旧ができない場合にのみ行います。 ファームの一部、特定のデータベース、サービス アプリケーション、リスト、ドキュメント ライブラリ、または特定のドキュメントのみ復元する必要がある場合は、別の復旧方法を使用してください。 別の復旧方法の詳細については、「関連するコンテンツ」を参照してください。

ファームの復旧は、通常、次のいずれかの理由で実行されます。

  • 火災、災害、機器の故障、またはその他の原因によるデータ消失の後にファームを復元する。

  • ファームの構成設定およびデータを、特定の日時の状態に復元する。

  • SharePoint Server の展開をあるファームから別のファームに移動する。

この操作を始める前に、SharePoint でファームを復旧する方法に関する次の情報を確認してください。

  • 1 つのバージョンのSharePoint Server 2019からバックアップし、別のバージョンのSharePoint Server 2019に復元することはできません。 これは、SharePoint Server 2016 と 2013 にも当てはまります。

  • ファームをバックアップすると、構成とサーバーの全体管理のコンテンツ データベースがバックアップされますが、これらは SharePoint Server ツールを使用して復元できません。 ファームのすべてのデータベースのバックアップおよび復元の詳細については、「SharePoint Server ですべてのデータベースを移動する」を参照してください。

  • SharePoint Server を使用してファームを復元すると、復元プロセスによってすべてのサービス アプリケーションが自動的に開始されるわけではありません。 サーバーの全体管理または Microsoft PowerShell を使用して手動で開始する必要があります。 これを行うと、サービスとサービス プロキシも再プロビジョニングされるため、SharePoint 製品構成ウィザードを使用してサービスを開始しないでください。 詳細については、「SharePoint Server でのサービスの開始または停止」を参照してください。

  • 組み込みツールを使用してデータベースを復元または再接続するときに、各コンテンツ データベースの識別子 (ID) が保持されます。 組み込みツールを使用すると、既定で次のように変更ログが保持されます。

    • ファームを復元するときに、すべてのデータベースの変更ログが保持されます。

    • データベースを再接続または復元するときに、コンテンツ データベースの変更ログが保持されます。

      データベース ID と変更ログが保持される場合、検索システムではクロール ルールで定義された定期的なスケジュールに基づいてクロールが続行されます。

      既存のデータベースを復元した場合に、overwrite オプションを指定しないと、復元されたデータベースに新しい ID が割り当てられ、データベースの変更ログは保存されません。 データベースの次回のクロールでは、コンテンツ データベースからインデックスにデータが追加されます。

      復元が実行され、バックアップ パッケージの ID が既にファームで使用されている場合、復元されたデータベースに新しい ID が割り当てられ、復元ログに警告が追加されます。 フル クロールではなく増分クロールを実行できるかどうかは、コンテンツ データベース ID が以前と同じかどうか、および検索システムで使用される変更ログのトークンがコンテンツ データベースの現在の変更ログに対して有効であるかどうかによって決まります。 変更ログが保存されていない場合、トークンは無効となり、検索システムではフル クロールが実行される必要があります。

  • SharePoint Serverのバックアップでは Business Data Connectivity Service の外部コンテンツ タイプの定義がバックアップされますが、データ ソース自体はバックアップされません。 データを保護するには、Business Data Connectivity Service またはファームをバックアップするときにデータ ソースもバックアップする必要があります。

    Business Data Connectivity Service またはファームを復元した後でデータ ソースを別の場所に復元する場合は、外部コンテンツ タイプ定義内の場所に関する情報を変更する必要があります。 これを行わないと、Business Data Connectivity Service はデータ ソースの場所を認識できません。

  • FILESTREAM リモート バイナリ ラージ オブジェクト (BLOB) ストア プロバイダーを使用してデータをリモート BLOB ストアに保存している場合にのみ、SharePoint Serverはリモート (BLOB) ストアを復元できます。

    別のプロバイダーを使用している場合は、リモート BLOB ストアを手動で復元する必要があります。

  • 複数のファームでサービス アプリケーションを共有する場合は、交換されている信頼証明書がファーム バックアップに含まれないように注意してください。 証明書ストアを個別にバックアップするか、または別の場所で証明書を保持する必要があります。 サービス アプリケーションを共有するファームを復元するときは、証明書をインポートおよび再展開し、ファーム間の信頼を再確立する必要があります。

    詳細については、「信頼証明書をファーム間で交換する (SharePoint Server)」を参照してください。

  • クレーム ベース認証を使用するように構成された Web アプリケーションを復元すると、重複したまたは余分なクレーム プロバイダーが表示されることがよくあります。 重複したプロバイダーが表示された場合は、各 Web アプリケーション領域を手動で保存して、重複を削除する必要があります。 詳細については、「SharePoint Server で Web アプリケーションを復元する」を参照してください。

  • フォームベース認証を使用するように構成された Web アプリケーションを含むファームを復元する場合は追加の手順が必要です。 詳細については、「SharePoint Server で Web アプリケーションを復元する」を参照してください。

PowerShell を使用して SharePoint のファームを復元する

Microsoft PowerShell を使用してファームを復元できます。

PowerShell を使用してファームを復元するには

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

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

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

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

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

    注:

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

  2. SharePoint 管理シェル を開きます。

  3. PowerShell コマンド プロンプトで、次のコマンドを入力します。

    Restore-SPFarm -Directory <BackupFolder> -RestoreMethod Overwrite [-BackupId <GUID>]
    

    詳細は次のとおりです。

    • <BackupFolder> は、バックアップ ファイルを格納するために使用するフォルダーのパスです。

    • <GUID> は、復元元のバックアップの識別子です。

    注:

    ファーム アカウントを使用してログオンしていない場合は、ファーム アカウントの資格情報の入力を求めるメッセージが表示されます。

    BackupId指定しない場合は、最新のバックアップが使用されます。 ファームのバックアップを表示するには、Microsoft PowerShell コマンド プロンプトで次のコマンドを入力します。

    Get-SPBackupHistory -Directory <BackupFolder> -ShowBackup [-Verbose]
    

    ここで、

    • <BackupFolder> は、バックアップ ファイルを格納するために使用するフォルダーのパスです。

    構成専用のバックアップを使用して、コンテンツ データベースを構成と一緒に復元することはできません。

  4. サービス アプリケーションを再起動するには、PowerShell のコマンド プロンプトで次のコマンドを入力します。

    Start-SPServiceInstance -Identity <ServiceApplicationID>
    

    ServiceApplicationID<> はサービス アプリケーションの GUID です。

PowerShell を使用してサービス アプリケーションを再起動する方法の詳細については、「Start-SPServiceInstance」を参照してください。

PowerShell_2nd_NoVer を使用してファームを復元する方法の詳細については、「Restore-SPFarm.PShell_stsadm_deprecated」を参照してください。

サーバーの全体管理を使用してファームを復元する

サーバーの全体管理 Web サイトを使用してファームを復元できます。

サーバーの全体管理 を使用してファームを復元するには

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

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

  3. [バックアップからの復元 - ステップ 1/3: 復元するバックアップの選択] ページで、バックアップの一覧からファームのバックアップを含むバックアップ ジョブを選択し、[ 次へ] をクリックします。 それぞれのバックアップの詳細な情報は、横にあるプラス記号 (+) をクリックすることで確認できます。

    注:

    正しいバックアップ ジョブが表示されない場合は、 [バックアップ ディレクトリの場所] ボックスに正しいバックアップ フォルダーの汎用名前付け規則 (UNC) パスを入力してから、 [更新] をクリックします。 構成専用のバックアップを使用してファームを復元することはできません。

  4. [バックアップからの復元 - ステップ 2/3: 復元するコンポーネントの選択] ページで、ファームの横にあるチェック ボックスをオンにして、[ 次へ] をクリックします。

  5. [バックアップからの復元 - ステップ 3/3: 復元オプションの選択] ページの [ 復元するコンポーネント] セクションで、[ 復元対象のコンポーネント] ボックスの一覧に [ ファーム] が表示されていることを確認します。

    [ 構成設定のみを復元] セクションで、[ コンテンツと構成設定を復元] オプションが選択されていることを確認します。

    [ 復元オプション] セクションの [ 復元の種類] で、[ 同じ構成] オプションを選択します。 操作の確認を求めるダイアログが表示されます。 [OK] をクリックします。

    注:

    [ 構成設定のみを復元] セクションが表示されない場合、選択したバックアップは構成専用のバックアップです。 この場合は、別のバックアップを選択する必要があります。

    [ 復元の開始] をクリックします。

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

    エラーが表示された場合は、[バックアップと復元のジョブ状態] ページの [ エラー メッセージ] 列を確認します。 詳細については、手順 3 で指定した UNC パスの Sprestore.log ファイルでも確認できます。

  7. 復元プロセスが完了した後で、1 つまたは複数のサービス アプリケーションを再起動しなければならない場合があります。 サーバーの全体管理のホーム ページの [ システム設定] セクションで、[ サーバー上のサービスの管理] をクリックします。 [サーバー上のサービス] ページで、実行するサービス アプリケーションに関連するすべてのサービスを開始するには、サービス アプリケーションの横にある [アクション] 列の [再起動] をクリックします。

  8. 信頼関係を再確立します。 詳細については、「信頼証明書をファーム間で交換する (SharePoint Server)」を参照してください。

SQL Server ツールを使用してファームを復元する

SQL Server ツールを使用してファーム全体を復元することはできませんが、ファーム データベースのほとんどは復元できます。 SQL Server ツールを使用してデータベースを復元する場合は、サーバーの全体管理または PowerShell を使用してファームの構成を復元する必要があります。 ファームの構成設定を復元する方法の詳細については、「SharePoint Server でファームの構成を復元する」を参照してください。

注:

検索インデックスは SQL Server には保存されません。 SQL Server ツールを使用して検索をバックアップおよび復元する場合は、コンテンツ データベースの復元後にフル クロールを実行する必要があります。

SharePoint Server を復元する前に、サイトおよびアイテムの復旧用に回復ファームを構成しておくことをお勧めします。

以下の手順に従って、データベースを復元します。

  1. 可能な場合は、現在のデータベースの使用中のトランザクション ログをバックアップして、前回の完全バックアップ後に行われた変更が失われないようにします。

  2. 前回の完全データベース バックアップを復元します。

  3. 最新の完全データベース バックアップ以降の最新の差分データベース バックアップを復元します。

  4. 最新の完全データベース バックアップまたは差分データベース バックアップ以降のすべてのトランザクション ログ バックアップを復元します。

以下の手順に従って、ファームのデータベースを復元します。

SQL Server ツールを使用してファームを復元するには

  1. この手順を実行しているユーザー アカウントが、 sysadmin 固定サーバー ロールのメンバーであることを確認します。

  2. SharePoint Timer Service が実行中の場合は、サービスを停止し、現在実行中のストアド プロシージャが完了するまで数分間待ちます。 復元する必要があるすべてのデータベースの復元が完了するまで、サービスを再起動しないでください。

  3. SQL Server Management Studio を起動し、データベース サーバーに接続します。

  4. オブジェクト エクスプローラーで、[ データベース] を展開します。

  5. 復元するデータベースを右クリックして [ タスク] をポイントし、[ 復元] をクリックします。次に [ データベース] をクリックします。

    復旧処理時はデータベースが自動的にオフラインになり、他のプロセスからアクセスできなくなります。

  6. [ データベースの復元 ] ダイアログで、復元先とソースを指定し、復元するバックアップ セットまたはセットを選択します。

    復元先と復元元の既定値は、通常、ほとんどの復旧シナリオに適しています。

  7. [ ページの選択] ペインで、[ オプション] をクリックします。

  8. [ 復元オプション] セクションで、[ 既存のデータベースを上書きする] のみを選択します。 他のオプションが必要になる環境またはポリシーを使用している場合を除いて、このセクションで他のオプションを選択しないでください。

  9. [ 復旧状態] セクションでは、次のように操作します。

    • 復元する必要があるすべてのトランザクション ログを含めた場合は、[ RECOVER WITH RECOVERY] を選択します。

    • 追加のトランザクション ログを復元する必要がある場合は、[ RECOVER WITH NORECOVERY] を選択します。

    • 3 つ目のオプションである [ RECOVER WITH STANDBY] は、このシナリオでは使用しません。

    注:

    これらの復旧オプションの詳細については、「[データベースの復元] ([オプション] ページ)」を参照してください。

  10. [ OK] をクリックして、復旧操作を完了します。

  11. 構成データベースを除き、復元するデータベースごとに、手順 4. ~ 9. を繰り返します。

    重要

    User Profile データベース (既定の名前は "User Profile Service_ProfileDB_<GUID>") を復元する場合は、Social データベース (既定の名前は "User Profile Service_SocialDB_<GUID>") も復元してください。 これを行わないと、User Profile データに誤りが発生することがあり、これを検出および修正するのは困難な場合があります。

  12. 構成設定を復元するには、既存の構成データベースを使用するか、新しいデータベースを手動で作成し、そのデータベースに構成を復元する必要があります。 ファーム構成の復元の詳細については、「SharePoint Server でファームの構成を復元する」を参照してください。

  13. SharePoint Timer Service を開始します。

  14. 再起動する必要があるサービス アプリケーションを起動します。 サーバーの全体管理のホーム ページの [ システム設定] セクションで、[ サーバー上のサービスの管理] をクリックします。 [サーバー上のサービス] ページで、実行するサービス アプリケーションに関連するすべてのサービスを開始するには、サービス アプリケーションの横にある [アクション] 列の [再起動] をクリックします。

関連するコンテンツ

以下に、ファームの一部のみを復元する必要がある場合に使用できるその他の復旧方法のリストを示します。