我希望能够编写自己的查询语句来恢复数据库。所需恢复的数据库必须具备删除当前用户并重新映射相同用户的所有设置。原因是当数据库被恢复时,用户将没有正确的设置来使用数据库,并且需要重新分配用户权限。
我希望能够编写自己的查询语句来恢复数据库。所需恢复的数据库必须具备删除当前用户并重新映射相同用户的所有设置。原因是当数据库被恢复时,用户将没有正确的设置来使用数据库,并且需要重新分配用户权限。
请看这里:
步骤1:从备份中检索数据库的逻辑文件名。
RESTORE FILELISTONLY
FROM DISK = 'D:BackUpYourBaackUpFile.bak'
GO
步骤2:在下一步中使用LogicalName列中的值。 ----将数据库设置为单用户模式
ALTER DATABASE YourDB
SET SINGLE_USER WITH
ROLLBACK IMMEDIATE
----恢复数据库
RESTORE DATABASE YourDB
FROM DISK = 'D:BackUpYourBaackUpFile.bak'
WITH MOVE 'YourMDFLogicalName' TO 'D:DataYourMDFFile.mdf',
MOVE 'YourLDFLogicalName' TO 'D:DataYourLDFFile.ldf'
/如果在数据库进入多用户模式之前没有出现错误,则该语句无误。 如果出现错误,请执行以下命令,它将把数据库转换为多用户模式。/
ALTER DATABASE YourDB SET MULTI_USER
GO
因此,可能发生了以下情况:
在旧服务器上,有一个名为“Mohammed Tahir”的用户,其SID为123456789
。123456789
从该数据库中读取”。987654321
),因此现有的123456789
权限对他无效!