web-dev-qa-db-ja.com

SQL-Server-データベースへのユーザーDBO権限の付与

本番データベースのバックアップから毎晩復元するレポートデータベースがあります。復元するとき、そのデータベースのDBOロールにユーザーを追加する必要があります。

私はこれがうまくいくと思った:

use Restored_Prod
go
exec sp_addrolemember 'db_owner', 'chris'
go

しかし、そのユーザーはRestored_Prodデータベースに存在しないため、次のエラーが発生します。

Msg 15410, Level 11, State 1, Procedure sp_addrolemember, Line 75
User or role 'chris' does not exist in this database.

ユーザー「chris」をデータベースに追加して、sp_addrolememberを実行し、そのデータベースのDBOにする方法を教えてください。ユーザーが存在するマスターデータベースからsp_addrolememberコマンドを使用してユーザー権限を追加する方法はありますか?

12
OrangeGrover

ユーザープリンシパルに権限を付与する前に、データベースに存在する必要があります。

use Restored_Prod
GO

CREATE USER [chris] FROM LOGIN [chris];
exec sp_addrolemember 'db_owner', 'chris';
GO

http://technet.Microsoft.com/en-us/library/ms173463.aspx

30
Mike Fal