读书人

给用户分配抽缩日志的权限

发布时间: 2012-08-07 14:54:49 作者: rapoo

给用户分配收缩日志的权限
自己编写了一个收缩日志的存储过程,里面用到了
BACKUP LOG '+@dbname+' WITH NO_LOG 和 DBCC SHRINKFILE(N'''+@logName+''',0,TRUNCATEONLY)
其中@dbname=db_name();select top 1 @logName=[name] from sysFiles where charIndex('.ldf',fileName)>0

现在有个普通用户,这个用户只有对部分表进行操作的权限。

问题:怎么为这个普通用户赋予执行收缩日志存储过程的权限,也就是怎么把BACKUP LOG和DBCC SHRINKFILE的权限给它。
环境:MS SQL SERVER 2005

[解决办法]

SQL code
GRANT IMPERSONATE ON USER:: dbo TO USER_NAME_AGOcreate procedure testasbegin EXECUTE AS USER='dbo'BACKUP LOG '+@dbname+' WITH NO_LOG 和 DBCC SHRINKFILE(N'''+@logName+''',0,TRUNCATEONLY)......endGOGRANT EXECUTE ON TEST TO USER_NAME_AGO 

读书人网 >SQL Server

热点推荐