SQL Server のインスタンス間でコンテンツ データベースを移動する (Search Server 2008)

更新日: 2009年8月

適用対象: Microsoft Search Server 2008

 

トピックの最終更新日: 2009-08-18

Microsoft SQL Server 2005 のインスタンス間、Microsoft Search Server 2008 を実行している任意のサーバーから Search Server 2008 を実行している任意のサーバーへ、またはSearch Server 2008 Web アプリケーション間でコンテンツ データベースを移動することができます。

重要

ここでは、コンテンツ データベースの移動のみを説明しており、Search Server 2008 に関連付けられているその他のデータベースの移動に関する情報については説明していません。

重要

コンテンツ データベースを切断して再接続すると、次回そのコンテンツ データベース内のコンテンツをクロールするときに、フル クロールが (増分クロールを要求しても) 行われます。フル クロールでは、コンテンツが前回クロールされているかどうかに関係なく、クローラーがアクセスするすべてのコンテンツが再クロールされるため、増分クロールに比べ、完了するまでに大幅に時間がかかります。

Microsoft Office サーバー製品インフラストラクチャ更新プログラム を実行している場合は、組み込みツールを使用してデータベースを復元または再接続するときに、各コンテンツ データベースの ID が保持されます。組み込みツールを使用するときの既定の変更ログ保持動作は次のとおりです。

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

  • データベースの再接続時には、コンテンツ データベースの変更ログが保持されます。

  • コンテンツ データベースのみを復元するときには、コンテンツ データベースの変更ログは保持されません。

データベース ID と変更ログが保持される場合、検索を行うと、クロール ルールで定義された定期的なスケジュールに基づいてクロールが続行されます。変更ログが保持されない場合、検索を行うと、次回のスケジュールされたクロールの間、フル クロールが実行されます。

詳細については、「すべてのデータベースを移動する (Search Server 2008)」および「ファームの保護および復元 (Search Server 2008)」を参照してください。

SQL Server のインスタンス間でコンテンツ データベースを移動する

移動プロセスでは、Search Server 2008 ツールおよび SQL Server 2005 ツールを使用します。SharePoint サーバーの全体管理 Web サイトまたは Stsadm コマンドライン ツールのどちらかを使用できます。次の手順では、両方のツールの手順について説明します。このプロセスには次の段階があります。

  1. Search Server 2008 ツールを使用して、Search Server 2008 Web アプリケーションからコンテンツ データベースを削除します。コンテンツ データベースの削除ではデータベースは削除されません。ただし、データベースの Web アプリケーションとの関連付けのみが削除されます。このタスクはデータベースのコンテンツがそのまま保持されているという点が SQL Server のデータベースのデタッチに似ています。

    注意

    コンテンツ データベースの正確な名前を記録します。複数の Web アプリケーションから複数のコンテンツ データベースを移動またはコピーする場合は、各 Web アプリケーションにどのコンテンツ データベースが関連付けられているかを記録します。

  2. SQL Server 2005 ツールを使用して、移行元のインスタンスからデータベースをデタッチします。

  3. 移行元のディレクトリから移行先のディレクトリへ .mdf ファイルおよび .ldf ファイルをコピーまたは移動します。

  4. SQL Server 2005 ツールを使用して、移行先のインスタンスにデータベースを再接続します。

  5. Search Server 2008 ツールを使用して、コンテンツ データベースを移行先の Search Server 2008 Web アプリケーションに追加します。必ず厳密に同じ名前を使用してコンテンツ データベースを再接続してください。そうしない場合は、Search Server 2008 によって新しいデータベースが作成されます。

  6. Search Server 2008 ツールを使用して、新しく再接続したコンテンツ データベースのフル クロールを実行します。

重要

この手順を実行するには、ローカル コンピュータの Administrators グループのメンバである必要があります。少なくとも SQL Server 2005 での以下のロールが必要です。

  • データベースをデタッチするための、SQL Server 2005 または SQL Server のインスタンスを実行する移行元のデータベースの dbowner 固定データベース ロール。

  • あるファームから別のファームにデータベースを移動する場合は、復元プロセス中に、そのデータベース アクセス アカウントをデータベース サーバー上の Administrators グループのメンバにする必要があります。これはデータベースのセキュリティ設定を複製するアカウントの場合は必須です。このアクセス レベルは、復元プロセスの完了後に削除できます。

  • データベースを接続するために、SQL Server 2005 または SQL Server のインスタンスを実行している移動先サーバー上の dbcreater 固定サーバー ロール。

注意

コンテンツ データベースの正確な名前を記録します。複数の Web アプリケーションから複数のコンテンツ データベースを移動またはコピーする場合は、各 Web アプリケーションにどのコンテンツ データベースが関連付けられているかを記録します。

サーバーの全体管理を使用して SQL Server のインスタンス間でコンテンツ データベースを移動する

  1. サーバーの全体管理の [アプリケーション構成の管理] ページにある [SharePoint Web アプリケーション構成の管理] セクションで、[コンテンツ データベース] をクリックします。

  2. [コンテンツ データベースの管理] ページで、移動するコンテンツ データベースをクリックします。

    注意

    コンテンツ データベースが表示されない場合、別の Web アプリケーションに関連付けられている可能性があります。別の Web アプリケーションを選択するには、[Web アプリケーション] メニューの [Web アプリケーションの変更] をクリックします。

  3. [コンテンツ データベース設定の管理] ページの [コンテンツ データベースの削除] セクションで、[コンテンツ データベースの削除] チェック ボックスをオンにし、[OK] をクリックします。

    注意

    コンテンツ データベースを削除してもデータベースは削除されません。データベースと Web アプリケーションの関連付けのみが削除されます。

  4. 移動するコンテンツ データベースごとに、手順 2. ~ 3. を繰り返します。

  5. SQL Server 2005 Management Studio で、SQL Server のソース インスタンスを開いてから、[データベース] ノードを展開します。

  6. コンテンツ データベースを右クリックして、[タスク] をポイントし、[デタッチ] をクリックします。移動するコンテンツ データベースごとに、この操作を繰り返します。

    注意

    この手順は、コンテンツ データベースのみを移動するときに使用します。その他のデータベースをデタッチしないでください。

  7. Windows エクスプローラで、コンテンツ データベースの .mdf ファイルと .ldf ファイルの場所を参照します。

  8. 移動するデータベースの .mdf ファイルおよび .ldf ファイルを選択して、移動先のディレクトリにそれらのファイルをコピーまたは移動します。

  9. SQL Server 2005 Management Studio で、SQL Server の宛先インスタンスを開きます。

  10. [データベース] ノードを右クリックし、[タスク] をポイントして、[添付] をクリックします。

  11. [データベースのアタッチ] ダイアログ ボックスで, .mdf ファイルおよび .ldf ファイルを転送した場所を参照して、接続するデータベースの .mdf ファイルを選択し、[OK] をクリックします。

  12. 移動するコンテンツ データベースごとに、手順 10. ~ 11. を繰り返します。

  13. サーバーの全体管理の [アプリケーション構成の管理] ページにある [SharePoint Web アプリケーション構成の管理] セクションで、[コンテンツ データベース] をクリックします。

  14. [コンテンツ データベースの管理] ページで、[コンテンツ データベースの追加] をクリックします。

  15. [コンテンツ データベースの追加] ページで、[Web アプリケーション] メニューが正しい Web アプリケーションを表示していることを確認します。

  16. [データベース名] ボックスに転送されたコンテンツ データベースの正確な名前を入力し、[OK] をクリックします。

  17. 追加するデータベースごとに、手順 15. ~ 16. を繰り返します。必ず、各データベースの [Web アプリケーション] メニューから正しい Web アプリケーションを選択します。

  18. 移動するコンテンツ データベースそれぞれのフル クロールを開始します。フル クロールの開始方法については、「フル クロールを開始する (Office SharePoint Server 2007)」を参照してください。

Stsadm コマンドライン ツールを使用して SQL Server のインスタンス間でコンテンツ データベースを移動する

  1. SharePoint 製品とテクノロジがインストールされているドライブで、Stsadm コマンドライン ツールのある次のディレクトリ %COMMONPROGRAMFILES%\Microsoft Shared\Web server extensions\12\Bin に移動します。

    重要

    Microsoft Office サーバー製品インフラストラクチャ更新プログラム (https://go.microsoft.com/fwlink/?linkid=121886&clcid=0x411) を含むソフトウェア更新プログラムがインストールされている場合は、 preparetomove 操作を実行せず、手順 2. をスキップして、手順 3. に進んでください。

  2. 以下のコマンドを入力して Enter キーを押します。

    stsadm -o preparetomove –contentdb <コンテンツ データベース名>

    データベース名を決定するには、enumcontentdbs 操作を使用します。

    preparetomove 操作の詳細については、「Preparetomove : Stsadm 操作 (Office SharePoint Server)」を参照してください。

  3. 以下のコマンドを入力して Enter キーを押します。

    stsadm -o deletecontentdb -url <URL 名> -databasename <データベース名>-[databaseserver <データベース サーバー名>]

    deletecontentdb 操作の詳細については、「Deletecontentdb : Stsadm 操作 (Office SharePoint Server)」を参照してください。

    注意

    移動するコンテンツ データベースごとに、この操作を実行する必要があります。コンテンツ データベースの削除では、データベースは削除されません。この操作では、データベースと Web アプリケーションとの関連付けのみが削除されます。

  4. SQL Server 2005 Management Studio で、SQL Server のソース インスタンスを開いてから、[データベース] ノードを展開します。

  5. デタッチするコンテンツ データベースを右クリックして、[タスク] をポイントし、[デタッチ] をクリックします。移動するコンテンツ データベースごとに、この操作を繰り返します。

    注意

    この手順を使用して、コンテンツ データベースのみを移動することができます。その他のデータベースをデタッチしないでください。

  6. Windows エクスプローラで、コンテンツ データベースの .mdf ファイルと .ldf ファイルの場所を参照します。

  7. ファイルを選択して、宛先のディレクトリにコピーまたは移動します。

  8. SQL Server 2005 Management Studio で、SQL Server の宛先インスタンスを開きます。

  9. [データベース] ノードを右クリックし、[タスク] をポイントして、[添付] をクリックします。

  10. [データベースのアタッチ] ダイアログ ボックスで, .mdf ファイルと .ldf ファイルの転送先を参照し、接続するデータベースの .mdf ファイルを選択して、[OK] をクリックします。

  11. 移動するコンテンツ データベースごとに、手順 8. ~ 9. を繰り返します。

  12. SharePoint 製品とテクノロジがインストールされているドライブで、ディレクトリ %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin に移動します。

  13. 以下のコマンドを入力して Enter キーを押します。

    stsadm -o addcontentdb -url <URL 名> -databasename <データベース名>[-databaseserver <データベース サーバー名>] [-databaseuser <データベース ユーザー名>][-databasepassword <データベース パスワード>][-sitewarning <サイトの警告数>] [-sitemax <サイトの最大数>]

    addcontentdb 操作の詳細については、「Addcontentdb : Stsadm 操作 (Windows SharePoint Services)」を参照してください。

    注意

    移動するコンテンツ データベースごとに、この操作を実行する必要があります。バッチ スクリプトを作成して、これを実行することができます。

  14. 移動するコンテンツ データベースそれぞれのフル クロールを開始します。フル クロールの開始方法については、「フル クロールを開始する (Office SharePoint Server 2007)」を参照してください。

関連項目

概念

コンテンツ データベースを移動する (Search Server 2008)
Windows Internal Database または SQL Server Express Edition からコンテンツ データベースを SQL Server のインスタンスに移動する (Search Server 2008)