sql-server - 我无法恢复我的数据库 SQL Server Management Studio 无法识别我的 .bak 文件
问题描述
我正在尝试从课堂上恢复数据库。但是,当我尝试恢复 .bak 文件时,SSMS 似乎无法识别它。
我授予了包含 .bak 文件的文件夹的完全权限(它是 ms SQL studio 的默认备份文件夹)。
我为恢复 .bak 文件所采取的步骤:
右键单击 DB -> 还原 DB -> 从设备(选择 .bak 文件位置)-> 到数据库(选择 DB 目标)
像这里:C:\Program Files (x86)\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Backup
数据库没有损坏我检查了其他 2 个数据库相同的结果,所以我不知道是什么问题
这里的图片:
我看不到数据库,而且我几乎拥有最新版本的 MS SQL Studio,所以我不明白这里发生了什么以及为什么我无法恢复数据库
在这里: SQL Server Management Studio 无法识别 .bak 文件
https://www.youtube.com/watch?v=U0FpXwQfBaU
它应该像上面的视频一样简单易行,但就像我上面所说的那样,这里出了点问题,我不知道是什么。我的 SQL 版本的图像
解决方案
一旦您(我的意思是服务帐户)获得了文件所在.bak
文件夹的完全权限并且文件未损坏,您应该能够毫无问题地恢复,但有时在 GUI 中会出现故障并与命令行完美配合。不确定问题是否存在SSMS 发行说明的修复之一
但是,您可能想尝试以下操作:
- 验证备份文件 - 它验证备份文件并检测备份文件中的任何错误/损坏
RESTORE VERIFYONLY FROM DISK = 'C:\YourbackupLocation\DbName.bak';
- 读取标题 - 它返回备份文件的信息,即 DB 版本、附加的备份文件、LSN 信息和数据库恢复模型等。
RESTORE HEADERONLY FROM DISK = 'C:\YourbackupLocation\DbName.bak';
- 从备份中获取文件名列表 - 如果文件位置与创建备份的源服务器不同,这将很有帮助
RESTORE FILELISTONLY FROM DISK = 'C:\YourbackupLocation\DbName.bak' ;
- 恢复备份 - 通过 T-SQL 实际恢复
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' ;
推荐阅读
- python-3.x - 我怎样才能点击
- 元素?
- python - PyQt 100% 宽度窗口
- git - 完全重启 GitHub?
- javascript - 延迟获取 React Server Sider Rendering 的 API 数据应该怎么办?
- python - 如何分析 f 散度检验?
- excel - EXCEL VBA:成功显示第一个电子邮件显示草稿后无法显示第二个或下一个草稿电子邮件
- bootstrap-4 - 我如何使用 bootstrap4 在 html 中编码社交媒体图标
- flutter - 为什么颤振 getx 包导航显示缺少控制器?
- windows - 如何使用 7zip 使用批处理文件单独压缩文件夹中的所有文件?
- python - 如何在seaborn countplot中对两个不同变量的值求和