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

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

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

はじめに

ファーム レベルのバックアップを定期的に実行することをお勧めします。 ただし、業務の要件や IT の要件によっては、Search Service および関連リソースのバックアップが必要になる場合があります。 定期的に検索システムをバックアップすることで、ハードウェア障害および停電などの問題によってデータが消失する可能性を低減できます。 バックアップの手順は簡単で、検索システムに含まれるデータと構成を必要に応じてバックアップから回復できるようになります。

この操作を開始する前に、以下の情報を確認してください。

  • バックアップの保存先のフォルダーをローカル コンピューターまたはネットワーク上に作成する必要があります。 パフォーマンス向上のために、ローカル コンピューターにバックアップしてから、バックアップ ファイルをネットワーク フォルダーに移動することをお勧めします。

  • SQL Server ツールまたは Data Protection Manager では、Search のすべてのコンポーネントはバックアップできません。

  • Search のバックアップは、ファームの状態に影響を与えることはありません。 ただし、バックアップはリソースを消費します。 したがって、バックアップの実行中はファームのパフォーマンスが低下するおそれがあります。 パフォーマンスの問題を回避するには、Search のバックアップを、ファームへのアクセスが最も少ない時間帯に実行するようにしてください。

シソーラス ファイルをバックアップする

シソーラス ファイルを使用して、検索クエリ内の語句の類義語を指定できます。 シソーラス ファイルを SharePoint Serverにインポートして検索システムで使用できるようにするには、まずシソーラス ファイルを SharePoint Serverの外部のシステムで作成して管理します。 そのため、以下に示す SharePoint Serverでの Search のバックアップ手順にはシソーラス ファイルは含まれていません。

シソーラス ファイルをバックアップするには、シソーラス ファイルの作成および管理に使用する外部システムのバックアップ手順に対象のシソーラス ファイルが含まれていることを確認する必要があります。

PowerShell を使用して SharePoint Serverで Search をバックアップする

PowerShell を使用することで、Search を手動でバックアップしたり、スクリプトの一部として Search の定期的なバックアップを実行したりできます。 この手順では、データベース、Search Service 構成、およびすべてのインデックス ファイルを含む、Search のすべてのコンポーネントがバックアップされます。

PowerShell を使用して Search をバックアップするには

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

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

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

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

    • ファームの管理者 SharePoint グループ。

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

    注:

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

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

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

    Backup-SPFarm -Directory <BackupFolder> -BackupMethod {Full | Differential} -Item "Farm\Shared Services\Shared Services Applications\<SearchServiceApplicationName>" [-Verbose]
    

    詳細は次のとおりです。

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

    • <SearchServiceApplicationName> はバックアップする Search Service アプリケーションの名前です。

    注:

    ファームのバックアップを初めて実行する場合は、必ず [完全] オプションを指定して実行してください。 差分バックアップを実行する前に、完全バックアップを実行する必要があります。 バックアップ操作の進行状況を表示するには、 [詳細] パラメーターを使用します。 [差分] オプションは検索データベースのみに適用されます。 [差分] オプションを使用しても、検索インデックス ファイルは常に完全バックアップされます。

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

注:

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

サーバーの全体管理を使用して SharePoint Server で Search をバックアップする

サーバーの全体管理を使用して、Search をバックアップできます。 この手順では、データベース、Search Service 構成、およびすべてのインデックス ファイルを含む、Search のすべてのコンポーネントがバックアップされます。

サーバーの全体管理を使用して Search をバックアップするには

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

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

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

  4. [バックアップの実行 - ステップ 1/2: バックアップするコンポーネントの選択] ページのコンポーネントのリストで、[ 共有サービス] を展開し、[ 共有サービス アプリケーション] を展開して、ファームのサービス アプリケーションの一覧を確認します。 コンポーネントのリストから Search Service アプリケーションを選択し、[ 次へ] をクリックします。

    注:

    Search Service アプリケーションは、複数のコンポーネントで構成されている場合があります。 最上位のコンポーネントを選択する必要があります。 既定では、サービス アプリケーションの名前は "Search Service アプリケーション" です。

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

    注:

    Search のバックアップを初めて実行する場合は、必ず [完全] オプションで実行してください。 差分バックアップを実行する前に、完全バックアップを実行する必要があります。 [差分] オプションは検索データベースのみに適用されます。 [差分] オプションを使用しても、検索インデックス ファイルは常に完全バックアップされます。

  6. [バックアップ ファイルの場所] セクションの [バックアップの場所] ボックスにバックアップ フォルダーのパスを入力し、[バックアップの開始] をクリックします。

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

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

SQL Server ツールを使用して、SharePoint Search Service アプリケーション全体をバックアップすることはできません。 ただし、SQL Server ツールを使用して、Search Service アプリケーションに関連付けられているデータベースをバックアップできます。 完全なSearch Service アプリケーションをバックアップするには、PowerShell またはサーバーの全体管理を使用します。

SQL Server を使用して Search Service アプリケーションに関連付けられたデータベースをバックアップするには、以下の手順を実行する必要があります。

  1. Search Service アプリケーションを一時停止します。

  2. すべての Search Service アプリケーション データベースを SQL Server ツールでバックアップします。

  3. Search Service アプリケーションを再開します。

PowerShell を使用して Search Service アプリケーションを一時停止するには

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

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

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

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

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

    注:

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

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

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

    $ssa = Get-SPEnterpriseSearchServiceApplication -Identity <SearchServiceApplicationName> 
    Suspend-SPEnterpriseSearchServiceApplication -Identity $ssa
    

    詳細は次のとおりです。

    • <SearchServiceApplicationName> はバックアップする Search Service アプリケーションの名前です。

SQL Server ツールを使用してすべての Search Service アプリケーション データベースをバックアップするには

  1. この手順を実行するユーザー アカウントが、各データベースが格納されているデータベース サーバー上で、SQL Server の db_backupoperator 固定データベース ロールのメンバーであることを確認します。

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

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

  4. バックアップするデータベースを右クリックし、[ タスク] をポイントしてから、[ バックアップ] をクリックします。

  5. [ データベースのバックアップ ] ダイアログで、データベース名を確認します。

  6. 次に、実行するバックアップの種類を [バックアップの種類] の一覧から選択します。 使用するバックアップの種類の詳細については、「 復旧モデル (SQL Server)」を参照してください。

  7. [バックアップ コンポーネント] 領域で [データベース] をクリックします。

  8. あらかじめ入力されている既定の名前を使用するか、バックアップ セットの名前を [名前] ボックスで指定します。

  9. [バックアップ先] 領域で、バックアップを格納する場所を指定します。

  10. [ OK] をクリックして、データベースをバックアップします。

  11. 次のデータベースについて手順 1. ~ 10. を繰り返します。

  • 検索管理

  • 分析レポート

  • クロール

  • リンク

PowerShell を使用して Search Service アプリケーションを再開するには

  1. 次のメンバーシップがあることを確認します。
  • SQL Server インスタンスにおける securityadmin 固定サーバー ロール。

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

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

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

    注:

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

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

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

    $ssa = Get-SPEnterpriseSearchServiceApplication -Identity <SearchServiceApplicationName> 
    Resume-SPEnterpriseSearchServiceApplication -Identity $ssa
    

    詳細は次のとおりです。

    • <SearchServiceApplicationName> は Search Service アプリケーションの名前です。

関連項目

概念

SharePoint Server で Search service アプリケーションを復元する