我正在尝试从类中还原数据库。但是,当我尝试还原.bak文件时,似乎SSMS无法识别它。
我对包含.bak文件的文件夹(这是ms SQL studio的默认备份文件夹)具有完全权限。
我已采取的还原.bak文件的步骤:
右键单击数据库->恢复数据库->从设备(选择.bak文件位置)->到数据库(选择数据库目标)
就像这里: C:\ Program Files(x86)\ Microsoft SQL Server \ MSSQL10.SQLEXPRESS \ MSSQL \ Backup
该数据库没有损坏,我检查了另外2个数据库,结果相同,所以我不知道出了什么问题
此处图片:
我看不到数据库,并且我拥有MS SQL Studio的最新版本,所以我不明白这里发生了什么以及为什么我无法还原数据库
在这里: SQL Server Management Studio can't recognize .bak file
https://www.youtube.com/watch?v=U0FpXwQfBaU
应该像上面的视频那样简单容易,但是就像我上面所说的那样,这里有些错误,我不知道这是什么。 我的SQL版本的图片
答案 0 :(得分:0)
一旦您(我的意思是服务帐户)拥有.bak
文件存放位置且文件未损坏的文件夹的完全权限,则应该可以还原,但是没有任何问题。有时会导致GUI失败,并且无法与命令行完美配合。不确定问题可能是fix of SSMS release notes
但是,您可能想尝试以下操作:
RESTORE VERIFYONLY FROM DISK = 'C:\YourbackupLocation\DbName.bak';
RESTORE HEADERONLY FROM DISK = 'C:\YourbackupLocation\DbName.bak';
RESTORE FILELISTONLY FROM DISK = 'C:\YourbackupLocation\DbName.bak' ;
RESTORE Backup DBName FROM DISK = 'C:\YourbackupLocation\DbName.bak' with replace, recovery, stats;
要重定位文件
RESTORE Backup DBName FROM DISK = 'C:\YourbackupLocation\DbName.bak'
with replace, recovery, stats
--- Get the logical name from the result of "RESTORE FILELISTONLY" command
move 'DBName' to 'C:\NewLocation\DBName.mdf',
move 'DBName_Log' to 'C:\NewLocation\DBName_log.ldf' ;
答案 1 :(得分:0)
.bak是否已损坏?如果不是这样,请对该数据库进行另一个备份,然后尝试还原。检查以下参考:https://dba.stackexchange.com/questions/47304/bak-file-not-visible-in-any-directory-in-ssms bak file not visible when trying to restore database