0

I have a database backup file stored in a hard drive V: named someFile.bak. The file path is simply V:\someFile.bak. I have been trying to load this into SQL Server Management Studio via the command

RESTORE DATABASE someDatabase
FROM DISK = 'V:\someFile.bak'

but I keep getting the error:

Msg 3201, Level 16, State 2, Line 4
Cannot open backup device 'V:\someFile.bak'. Operating system error 3(The system cannot find the path specified.).
Msg 3013, Level 16, State 1, Line 4
RESTORE DATABASE is terminating abnormally.

This suggests to me that SSMS is having issues finding the file path, despite it being specified correctly. Does this have anything to do with the fact that this is from a hard drive rather than from the internal drive (like C:)? If so, is there a better way to restore a database from the hard drive? I am asking this because someFile.bak is too large to store on my internal drive.

  • The answers below should answer your question, however if there's still confusion it might be useful if you specified whether you are using SSMS to connect to a remote server or your local machine, and where the external hard drive is plugged in (remote server or local machine) – Matthew McGiffen Oct 11 '17 at 14:03
4

The file path is simply V:\someFile.bak

V: relative to WHAT machine?

I have been trying to load this into SQL Server Management Studio via the command

No, you have not. You have instructed SSMS to send this command to the server, which will execute it ON THE SERVER.

At no point is SSMS loading anything.

The typical mistake here would be that you have a V: drive attached to your local machine and then think that the server will find the file under V: - it will not. The file must be reachable for the SERVER process, not you.

And SSMS only acts as a glorified text editor in this case, sending your command to the database server.

0

This error is most commonly encountered when taking backups that should then be copied over to another computer/ server on the same or a different network. But it can sometimes also occur even on the same computer/ server.

When you get this error, the cause is insufficient file-path access permissions for the operating-system account used by SQL Server. Remember, the login name you have used on Windows is not what is used when running SQL Server jobs. Instead what is used is the account specified for use for the SQL Server service. To check this, open services on the computer where SQL Server is installed (go to Start > Run, type services.msc and hit Enter). Once it opens, look for the service with the name SQL Server and double-click it. Navigate to the tab labeled Log On and note down the username listed therein – this is the set of credentials used by SQL Server.

enter image description here

The information is taken from https://sqlbackupandftp.com/blog/how-to-solve-operating-system-error-3

0

As mentioned above, this issue occurs when the service running MSSQL Server does not have permission to the location of the .bak file.

How to solve?

Let's say you have your .bak file in C:\Sql\Bak

In windows explorer right click C:\sql -> Properties

In the Properties window click Security

Then click Edit

Then add the users NT Service\MSSQLSERVER and NT Service\SQLSERVERAGENT and give them full control.

Check to see that it applied to all directories and files underneath it.

Then you should be able to restore your database correctly.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.