Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQL身份验证用户,可以还原某些(但不是全部)数据库_Sql Server_Sql Server 2005 - Fatal编程技术网

Sql server SQL身份验证用户,可以还原某些(但不是全部)数据库

Sql server SQL身份验证用户,可以还原某些(但不是全部)数据库,sql-server,sql-server-2005,Sql Server,Sql Server 2005,我想在MS SQL 2005中设置一个SQL Auth用户,该用户可以在特定实例中恢复部分(但不是全部)数据库 我不确定是否应该为此使用服务器角色,因为它们似乎适用于所有数据库,但数据库角色成员资格似乎也不正确(我不希望SQL用户在还原不包含其数据库角色成员资格的备份时可能“失去”其还原能力) 我如何才能做到这一点?您不能设置这样的用户。此权限位于服务器/登录级别的数据库/用户之上 登录名可能有“”表示: …并且可以改变和恢复自己的 数据库 即使使用,如果不是不可能的话,也会很棘手,比如“允许创

我想在MS SQL 2005中设置一个SQL Auth用户,该用户可以在特定实例中恢复部分(但不是全部)数据库

我不确定是否应该为此使用服务器角色,因为它们似乎适用于所有数据库,但数据库角色成员资格似乎也不正确(我不希望SQL用户在还原不包含其数据库角色成员资格的备份时可能“失去”其还原能力)


我如何才能做到这一点?

您不能设置这样的用户。此权限位于服务器/登录级别的数据库/用户之上

登录名可能有“”表示:

…并且可以改变和恢复自己的 数据库

即使使用,如果不是不可能的话,也会很棘手,比如“
允许创建任何数据库”

从某种意义上说,恢复是一种拖放式创建。或者仅仅是一个创造

我建议最好的解决方案(但可能不是您想听到的…)是在master中创建自己的存储过程,检查权限,如果登录名设置为该数据库中的用户,则发出RESTORE命令

示例:
sp\u checkandrestore'dbname','backupfile'