Addcontentdb : Stsadm 操作 (Windows SharePoint Services)
操作名 : Addcontentdb
説明
新しいコンテンツ データベースを作成するか、url パラメータおよび databasename パラメータを指定する際に、アップグレードが必要なデータベースを追加します。
データ ファイルとログ ファイルの場所は、コンテンツ データベースの作成時に、SQL データベース サーバーで定義されている既定のデータベース設定によって決まります。コンテンツ データベースが作成されるときには、1 つのデータ ファイル (.mdf) と 1 つのトランザクション ログ ファイル (.ldf) をホストするプライマリ ファイル グループも作成されます。addcontentdb 操作を使用してコンテンツ データベースを作成する際には、spsearch 操作を実行して、コンテンツ データベースを Windows SharePoint Services の検索サービスが実行されている特定のサーバーに関連付ける必要があります。spsearch 操作の詳細については、「Spsearch : Stsadm 操作 (Windows SharePoint Services)」を参照してください。
重要
コンテンツ データベースを切断して再接続すると、次回そのコンテンツ データベース内のコンテンツをクロールするときに、フル クロールが (増分クロールを要求しても) 行われます。フル クロールでは、コンテンツが前回クロールされているかどうかに関係なく、クローラがアクセスするすべてのコンテンツが再クロールされるため、増分クロールに比べ、完了するまでに大幅に時間がかかります。
構文
stsadm.exe -o addcontentdb
-url <URL 名>
-[-assignnewdatabaseid]
-[-clearchangelog]
-databasename <データベース名>
[-databaseserver <データベース サーバー名>]
[-databaseuser <データベース ユーザー名>]
[-databasepassword <データベース パスワード>]
[-sitewarning <サイトの警告数>]
[-sitemax <サイトの最大数>]
パラメータ
パラメータ名と短縮形 | 値 | 必須/省略可能 | 説明 |
---|---|---|---|
url |
有効な URL (http://server_name など) |
必須 |
コンテンツ データベースを追加する Web アプリケーションの URL です。 |
assignnewdatabaseid |
有効な GUID ("12345678-90ab-cdef-1234-567890bcdefgh" など) |
省略可能 |
コンテンツ データベースがアタッチされたとき、新しいデータベース ID を自動的に作成します。このパラメータは、Windows SharePoint Services 3.0 インフラストラクチャ更新プログラム で初めて導入されました。詳細については「備考」を参照してください。 |
clearchangelog |
<なし> |
省略可能 |
変更ログをクリアします。 必要に応じて、変更ログをクリアします。たとえば、SQL Server レベルの独立したバックアップ ツールを使用して、コンテンツ データベースを以前の状態に戻す場合に、このようなクリア操作が必要になります。このパラメータは、Windows SharePoint Services 3.0 インフラストラクチャ更新プログラム で初めて導入されました。詳細については「備考」を参照してください。 |
databasename (dn) |
有効なデータベース名 ("DB1" など) |
必須 |
データベース名。 |
databaseserver (ds) |
"Sales" など、有効なデータベース サーバー名 (名前付きインスタンスが使用される場合)。"server\server" の形式で表されることもあります。 |
省略可能 |
データベース サーバー名。値が指定されていない場合は、既定のサーバーが使用されます。 |
databaseuser |
"Username1" 形式の有効なユーザー名 |
省略可能 |
SQL 認証に使用されるアカウント。databasepassword パラメータと共に使用する必要があります。 |
databasepassword |
有効な SQL パスワード |
省略可能 |
databasepassword パラメータが使用されるのは、Windows 認証が実装されていない場合のみです。つまり、Microsoft SQL Server 認証のシナリオでは、データベース サーバーに対する認証を行うため、databaseuser および databasepassword パラメータを渡す必要があります。一方、Windows 認証の場合は、NTLM を使用して資格情報が渡されるため、これらのパラメータは省略できます。 |
sitewarning |
有効な整数 (10 など) |
いいえ |
コンテンツ データベースで許容されるサイト コレクションの数。この数を超えると、Windows イベント ログに警告イベントが生成されます。 |
sitemax |
有効な整数 (10 など) |
いいえ |
コンテンツ データベースで許容されるサイト コレクションの最大数を指定します。 |
備考
Windows SharePoint Services 3.0 インフラストラクチャ更新プログラムを実行している場合は、ビルトイン ツールを使用してデータベースを復元または再接続する際に、各コンテンツ データベースの識別子 (ID) が保持されます。 ビルトイン ツールを使用した場合の既定の変更ログ保持動作は、以下のとおりです。
ファームを復元する際、すべてのデータベースの変更ログが保持されます。
データベースを再接続する際、コンテンツ データベースの変更ログが保持されます。
コンテンツ データベースだけを復元する際は、コンテンツ データベースの変更ログが保持されません。
詳細については、「コンテンツ データベースを移動する (Windows SharePoint Services 3.0)」および「Windows SharePoint Services 3.0 テクノロジのバックアップと復旧を管理する」を参照してください。
コンテンツ データベースの最新ではない SQL Server バックアップを復元すると、検索インデックスのエントリ数が、ファームに復元したデータベースのエントリ数よりも多いことがあります。まず、Stsadm コマンド stsadm –o deletecontentdb を使用して、SharePoint ファームからデータベースをデタッチし、SQL Server のツールを使用してデータベースを復元します。次に、Stsadm コマンド stsadm –o addcontentdb –clearchangelog を使用して、コンテンツ データベースを再度アタッチし、変更ログをクリアします。変更ログをクリアすることで、復元したデータベースに対するフル クロールを Search サービスで実行するので、存在しない項目をインデックスで参照することがなくなります。
管理者は、変更ログをクリアする条件と、実際にクリアしたかどうかを把握しておく必要があります。たとえば、SQL Server レベルのバックアップ ツールを使用して、最後のクロールを実行した時点よりも前の状態にコンテンツ データベースを復元したとします。この操作を使用してコンテンツ データベースをファームに再アタッチしたとき、変更ログをクリアしていないと、元のデータベースの項目のうち、復元したデータベースには存在しない項目のエントリがインデックスに存在している可能性があります。この問題の発生を防止するには、clearchangelog パラメータを使用して変更ログをクリアします。clearchangelog パラメータを指定せずに、誤ってコンテンツ データベースをアタッチした場合は、コンテンツ データベースをいったんデタッチした後、clearchangelog パラメータを使用して再度アタッチします。この操作によって、次回のクロールでは、コンテンツ データベースに合わせてインデックスをリセットできます。
コンテンツ データベースを、それまでと同じ Web アプリケーションにアタッチすると、変更ログは既定でデータベース ID と共に保持されます。ID の競合などの理由でデータベース ID の変更が必要な場合は、assignnewdatabaseid パラメータを使用することで、コンテンツ データベースに対して強制的に新しい ID が選択されます。
競合が発生したためにファームにデータベースをアタッチできない場合は、次のメッセージを受け取ります。このファーム内の別のオブジェクトが既に同じ ID を持っているため、接続操作を続行できません。ファーム内の各オブジェクトは一意の ID を持っている必要があります。接続操作を続行するためには、このデータベースに新しい ID を割り当てる必要があります。このデータベースに新しい ID を関連付けるには、-assignnewdatabaseid パラメータを指定して "stsadm.exe -o addcontentdb" 操作を実行します。この新しいデータベースと既存のデータベースに同じサイト コレクションが含まれている場合、このデータベースを接続すると、2 つのデータベース間の競合のために孤立したサイト コレクションが生じる可能性があります。