SQL Server 2008 R2 从文件还原数据库 - “失败:38(无法检索此错误的文本。原因:15105)”

Mar*_*ins 6 sql-server-2008-r2

我在客户端服务器上创建的备份文件上运行数据库还原,备份文件已移动到我们的服务器(相同的 SQL 版本 2008 R2),并且在 T-SQL 之后我收到以下错误运行了将近7分钟:

TSQL:

RESTORE DATABASE [Charms_OrangeGrove]   
FROM    DISK = N'S:\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\Charms_OrangeGrove_290114.bak'   
    WITH  MOVE N'CharmsData_dat'   
          TO N'S:\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Charms_OrangeGrove.mdf',    
          MOVE N'CharmsData_log' 
          TO N'S:\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Charms_OrangeGrove_Log.ldf'
Run Code Online (Sandbox Code Playgroud)

错误:

Msg 3203, Level 16, State 1, Line 1
Read on "S:\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\Charms_OrangeGrove_290114.bak" 
    failed: 38(failed to retrieve text for this error. Reason: 15105)
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.
Run Code Online (Sandbox Code Playgroud)

Ken*_*her 5

看起来您遇到了磁盘读取问题或可能是备份损坏。

我会尝试

a. Run RESTORE VERIFYONLY FROM DISK =  
        N'S:\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\Charms_OrangeGrove_290114.bak'
b. If it comes up clean try copying it to a different location 
        (preferably a different drive on different physical hardware)
Run Code Online (Sandbox Code Playgroud)

这是一个有人遇到类似问题的链接。他尝试了一些额外的步骤,并提到他遇到了硬件问题。

http://social.msdn.microsoft.com/Forums/sqlserver/en-US/2a127a18-dfd0-4668-afc4-f5eb497f4977/sql-server-2008-restore-fails-msg-3203?forum=sqldisasterrecovery