我有2个数据库test1和test2。 我从test1获得了备份。现在我想将此备份恢复到test2。
我在共享服务器中的test2数据库。当我正在恢复时,它会失败。并填充此错误消息。
Msg 3110, Level 14, State 1, Line 1
User does not have permission to RESTORE database 'databasename'.
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.
我将权限设置为db_backupoperator的用户。但它仍然没有恢复数据库。 请让我知道我做错了什么。
由于
答案 0 :(得分:7)
您需要db_creator
权限才能成功恢复数据库。
权限如果要恢复的数据库不存在,则为该用户 必须具有CREATE DATABASE权限才能执行RESTORE。 如果数据库存在,则RESTORE权限默认为成员 sysadmin和dbcreator固定服务器角色和所有者(dbo)的 数据库(对于FROM DATABASE_SNAPSHOT选项,数据库始终 存在)。 RESTORE权限被赋予其中成员资格的角色 信息随时可供服务器使用。因为固定 只有在数据库存在时才能检查数据库角色成员身份 可访问且未损坏,当RESTORE是时,情况并非总是如此 执行后,db_owner固定数据库角色的成员没有 恢复权限。
答案 1 :(得分:0)
db_backupoperator 只能备份数据库。他们无法恢复。 http://msdn.microsoft.com/en-us/library/ms189041(v=SQL.90).aspx
答案 2 :(得分:0)
您需要使用dbcreator或sysadmin角色来还原数据库。 有关数据库角色的更多信息,您可以查看 - MSSQL Server roles