如何在服务器的SQL Server数据库中恢复数据库?

Pan*_*hra 0 database sql-server sql-server-2008

我有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.
Run Code Online (Sandbox Code Playgroud)

我将权限设置为db_backupoperator的用户.但它仍然没有恢复数据库.请让我知道我做错了什么.

谢谢

Sea*_*rey 7

您需要该db_creator权限才能成功还原数据库.

这篇MSDN文章:

权限如果要还原的数据库不存在,则用户必须具有CREATE DATABASE权限才能执行RESTORE.如果数据库存在,则RESTORE权限默认为sysadmin和dbcreator固定服务器角色的成员以及数据库的所有者(dbo)(对于FROM DATABASE_SNAPSHOT选项,数据库始终存在).RESTORE权限被赋予角色,其中成员资格信息始终可供服务器使用.因为只有在数据库可访问且未损坏时才能检查固定数据库角色成员身份(执行RESTORE时并非总是如此),db_owner固定数据库角色的成员不具有RESTORE权限.