cancel
Showing results for 
Search instead for 
Did you mean: 

SQL restore failed - The system cannot find the file specified

jCoke
Level 2

Hi all

i have recently changed hardware in our TEST sql server cluster, we installed the same OS, Windows 2008, introduced the new hardware to the old cluster and moved the sql server instances to the new hardware and then removed the old hardware from the cluster.

everything worked like a charm, backups, linked servers and the works

until now, when i got my first restore request.

the Production SQL cluster nodes are all the same version as test (sql 2008 SP4) and have the same version of netbackup installed (7.6.0.4) but the production nodes are also Netbackup Media Servers in order to backup data faster due to the DDBost functionality when communicating with our DataDomain, where the data is stored.

restoring databases is a fairly common procedure, i´ve done it a thousand times but i cannot get it to work now, something must be off with the new servers but we cannot find it!

the restore (or move) script looks like this (we changed the MAXTRANSFERSIZE and NUMBUFS from 7 and 2 as a step in the troubleshooting):
the errormessage is below and the dbclient logfile is attached

#  
#  This is a template for the database MOVE command.
#  
OPERATION RESTORE
OBJECTTYPE DATABASE
RESTORETYPE MOVE
#  
#  Replace the database name in the following line with the name of the database that you
#  want to move to. Also remove the hash mark <#> which precedes the keyword <DATABASE>.
#  
DATABASE "WSS_Content_sek"

#  Replace the file path <M:\MSSQL10.SP2010PROD\MSSQL\DATA\WSS_Content_sek.mdf>
#  with a new file path. Also remove the hash mark <#> which precedes the keyword <TO>.
#  The target of the MOVE keyword must be "WSS_Content_sek". 
MOVE  "WSS_Content_sek"
TO  "M:\MSSQL10.SP2010ACC\MSSQL\DATA\WSS_Content_sek.mdf"


#  Replace the file path <M:\MountPoint_SP2010PRODLogs\MSSQL10.SP2010PROD\MSSQL\Data\WSS_Content_sek_1.LDF>
#  with a new file path. Also remove the hash mark <#> which precedes the keyword <TO>.
#  The target of the MOVE keyword must be "WSS_Content_sek_log". 
MOVE  "WSS_Content_sek_log"
TO  "M:\MSSQL10.SP2010ACC\MSSQL\DATA\WSS_Content_sek_1.LDF"

# The following image is type: Full
NBIMAGE "SEK-SQL4.MSSQL7.SEK-SQL-VS08\SP2010PROD.db.WSS_Content_sek.~.7.001of001.20150317184319..C"
SQLHOST "SEK-SQLTST-VS29"
SQLINSTANCE "SP2010ACC"
NBSERVER "SEK-NETBACKUP"
BROWSECLIENT "sek-sql-vs08"
MAXTRANSFERSIZE 1
BLOCKSIZE 7
RESTOREOPTION REPLACE
RECOVEREDSTATE RECOVERED
NUMBUFS 1
ENDOPER TRUE

--------------------------------------------------------------------------------------

And the errormessage: 


INF - RESTORE STARTED USING
Microsoft SQL Server 2008 (SP4) - 10.0.6000.29 (X64) 
Sep  3 2014 04:11:34 
Copyright (c) 1988-2008 Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.0 <X64> (Build 6002: Service Pack 2) 
Batch = C:\Program Files\Veritas\NetBackup\DbExt\MsSql\rest_wss_content_sek_20150318.bch, Op# = 1.
INF - Using backup image SEK-SQL4.MSSQL7.SEK-SQL-VS08\SP2010PROD.db.WSS_Content_sek.~.7.001of001.20150317184319..C
INF - restore database "WSS_Content_sek" from VIRTUAL_DEVICE='VNBU0-25024-17804-1426686834' with  stats = 10, blocksize = 65536, maxtransfersize = 131072, buffercount = 1, replace , norecovery, move 'WSS_Content_sek' to 'M:\MSSQL10.SP2010ACC\MSSQL\DATA\WSS_Content_sek.mdf', move 'WSS_Content_sek_log' to 'M:\MSSQL10.SP2010ACC\MSSQL\DATA\WSS_Content_sek_1.LDF', replace
INF - Number of stripes: 1, Number of buffers per stripe 1.
INF - Created VDI object for SQL Server instance <SP2010ACC>. Connection timeout is <300> seconds.
Restore started Wed Mar 18 14:53:55 2015

ERR - Error in GetCommand: 0x80770004.
    CONTINUATION: - An abort request is preventing anything except termination actions.
ERR - Internal error. See the dbclient log for more information.
INF - OPERATION #1 of batch C:\Program Files\Veritas\NetBackup\DbExt\MsSql\rest_wss_content_sek_20150318.bch FAILED with STATUS 1 (0 is normal). Elapsed time = 52(52) seconds.
INF - Results of executing <C:\Program Files\Veritas\NetBackup\DbExt\MsSql\rest_wss_content_sek_20150318.bch>: 
<0> operations succeeded. <2> operations failed.
ERR - Internal error. See the dbclient log for more information.
ERR - Error in DBthreads::dbclient: 6.
    CONTINUATION: - The system cannot find the file specified.
ERR - Error in VxBSAEndData: 6.
    CONTINUATION: - The handle used to associate this call with a previous VxBSAInit() call is invalid.

 

 

3 REPLIES 3

Michael_G_Ander
Level 6
Certified

First thing to check is that 'M:\MSSQL10.SP2010ACC\MSSQL\DATA exists on the node you are starting the restore from. Have had made that mistake, not checking the target folder exitsted before trying to restore.

Another thing that could be an issue is if the database already exists on the test system

 

 

 

 

 

The standard questions: Have you checked: 1) What has changed. 2) The manual 3) If there are any tech notes or VOX posts regarding the issue

Marianne
Moderator
Moderator
Partner    VIP    Accredited Certified

I am late to this discussion...

dbclient logging level is too low.

Level 3 should be suffiient to see real reason for the failure.

All I can see is the following:

14:47:13.829 [15180.25796] <16> WriteToVirtualDevice: ERR - Error in GetCommand: 0x80770004.

14:47:24.506 [15180.25164] <32> CDBbackrec::ClientStatus: ERR - Failed to get the client status because no BSA transaction is active.
14:47:24.506 [15180.25164] <16> CDBbackrec::ProcessVxBSAerror: ERR - Error in DBthreads::dbclient: 6.

I am curious about this error:

 CDBbackrec::ClientStatus: ERR - Failed to get the client status because no BSA transaction is active.
 

... but cannot find anything useful on Symantec site or Google. 
Maybe this post: https://www-secure.symantec.com/connect/forums/full-diff-restores-ms-sql-database-fails-2809-status-... 

Found something related to backups that suggests to increase Client Read Timeout:
http://www.symantec.com/docs/TECH200716 

Have you checked Windows Event Viewer Application log?
And SQL VDI and errorlog? 

jCoke
Level 2

for future reference, a restart of the netbackup client service AND the SQL server service cleared the way to start the restore for alot of databases, however 2 where still not able to restore, giving me the same error message.

however, when i dropped the databases first, i was able to restore them.

strange...