日期:2014-05-17  浏览次数:20696 次

sql 2008中怎么给一个用户只授予备份跟还原的权限
在SQL Server2008中,针对一个数据库给一个用户只授予备份跟还原数据库的权限。并且不影响其它用户的,和对其它数据库的操作???
------最佳解决方案--------------------
对于备份,可以直接授予或者安排为备份管理员角色

GRANT BACKUP DATABASE TO loginname


sp_addrolemember 'db_backupoperator', loginname


对于还原,需要有create database的权限,可以直接授权

GRANT CREATE DATABASE TO loginname


------其他解决方案--------------------

restore database tt2
from disk='d:\desk\tt2.bak'
with move 'AdventureWorks_Data' to 'd:\desk\tt2.mdf',
  move 'AdventureWorks_Log' to 'd:\desk\tt2.ldf'

  
/*
已为数据库 'tt2',文件 'AdventureWorks_Data' (位于文件 1 上)处理了 24608 页。
已为数据库 'tt2',文件 'AdventureWorks_Log' (位于文件 1 上)处理了 1 页。
RESTORE DATABASE 成功处理了 24609 页,花费 9.103 秒(21.120 MB/秒)。

*/   

create table test222(id int)   

/*
消息 262,级别 14,状态 1,第 1 行
在数据库 'AdventureWorks' 中拒绝了 CREATE TABLE 权限。
*/



------其他解决方案--------------------
你的SQL装在哪个操作系统上?

有点不清楚你想问什么。

如果SQL用户增加了Disk Administrators权限之后就可以浏览服务器端的文件夹,这个是BACKUP和RESTORE的首要条件,但是这个权限很高,可以弄来SQL BACKUP注入了。

一般三层的话,不能把这个权限直接交给用户的,都是通过中间层,用权限比较高的用户去完成,对于你说的1用户1数据库,一样的道理,我想不可能全部用户都有Disk Administrators吧。
------其他解决方案--------------------
引用:
对于备份,可以直接授予或者安排为备份管理员角色


SQL code
GRANT BACKUP DATABASE TO loginname



SQL code
sp_addrolemember 'db_backupoperator', loginname


对于还原,需要有create database的权限,可以直接授权


SQL code
GRANT C……


我去测试一下,如果无bug  马上接分
------其他解决方案--------------------
引用:
对于备份,可以直接授予或者安排为备份管理员角色


SQL code
GRANT BACKUP DATABASE TO loginname



SQL code
sp_addrolemember 'db_backupoperator', loginname


对于还原,需要有create database的权限,可以直接授权


SQL code
GRANT C……


这样好像不行,在操作master数据库时没有权限,并且该用户在备份的时候不能选择备份文件的路径,还原的时候也不能选择要还原文件的路径!!
------其他解决方案--------------------
sql2000,如果用户要执行BACKUP 和 RESTORE功能,只知道需要:Bulk Insert Administrators和Disk Administrators 权限就可以顺利运行。至于为什么我也不知道,也不想知道。
------其他解决方案--------------------
引用:
引用:
对于备份,可以直接授予或者安排为备份管理员角色


SQL code
GRANT BACKUP DATABASE TO loginname



SQL code
sp_addrolemember 'db_backupoperator', loginname


对于还原,需要有create database的权限,可以直接授权
……

是的,选择文件夹需要更高的权限。。。对这个没研究过。
自己google下吧。。.
------其他解决方案--------------------
引用:
sql2000,如果用户要执行BACKUP 和 RESTORE功能,只知道需要:Bulk Insert Administrators和Disk Administrators 权限就可以顺利运行。至于为什么我也不知道,也不想知道。