Microsoft SQL Server Management Studio Express を使用して、Backup Exec Service Account を db_owner ロールに設定する方法
問題
Microsoft SQL Server Management Studio Express (SSMS Express) を使用して、Backup Exec Service Account (BESA) を db_owner ロール設定する方法、または設定を確認する方法。
原因
BESA が、SQL Server の db_owner グループの一部ではありません。
解決策
Backup Exec SharePoint Agent を使用して Microsoft Office SharePoint Server (MOSS) のコンテンツデータベースをバックアップする場合は、Backup Exec System Account (BESA) が db_owner ロールを持っていることがベストプラクティスです。
場合によっては、データベース所有者を BESA にすることができますが、必須ではありません。Microsoft SQL Server Management Studio Express を使用して SQL データベース所有者を確認します。
1. SQL データベースのプロパティを開きます。(図1)
図1.
2. [データベースのプロパティ] の [全般] ページで、データベース所有者として設定されているアカウントを確認します。(図2)
図2.
SQL コンテンツデータベースの BESA アカウントに db_owner ロールを追加または設定する方法:
1. コンテンツデータベースをクリックし、[セキュリティ] > [ユーザー] をクリックし、[新しいユーザー] をクリックします。(図3)
図3.
2. [ログイン名] に BESA を入力し、[ユーザー名] には任意の名称を入力します。 (ユーザー名に指定した名称では Active Directory に接続しません)。(図4)
図4.
3. [データベース ロールのメンバーシップ] で、db_owner のチェックボックスを選択します。(図5)
図5.
4. 追加した BESA は、コンテンツデータベースのセキュリティフォルダーの下に表示されます。
図6.
注: バックアップ/リストアで使用されている BESA が db_owner ロールに設定されていない場合は、認証エラーや GRT 選択の問題が発生する場合があります。BESA には、ファーム内のすべての SQL コンテンツデータベースに db_owner ロールが必要です。
現在の SQL コンテンツ データベースの所有者を置き換えることもできます。これは必須ではなく、上記のロールのアクセス権限が機能しない場合にのみ実行する必要があります。
必要に応じてかつ SQL への悪影響が確認できない場合に、Transact-SQL コマンド EXEC sp_changedbowner 'アカウント名' を実行して SQL データベース所有者を変更することができます。
次の例では、BESA [Sandman\Administrator] を現在のデータベースの所有者に設定します。
1. データベースを選択して右クリックし、 [新しいクエリ] を実行します。(図7)
図7.
2. コマンド EXEC sp_changedbowner 'sandman\administrator' を実行します。(図8)
図8.
3. コマンドが完了すると、クエリペインの [メッセージ] フィールドに [コマンドは正常に完了しました。] と表示されます。(図9)
図9.
4. データベースの [プロパティ] で SQL データベース所有者が変更されたことを確認します。(図10)
図10.