Я пытаюсь восстановить db с помощью одного файла bak, у которого есть несколько db abcdb, abcdb_index, abcdb_max, abcdb_log - PullRequest
0 голосов
/ 11 июля 2020

Я получаю сообщение об ошибке, пожалуйста, помогите

RESTORE DATABASE [abcdb] 
FROM DISK = N'C:\Shared\Shared\AerdemDB\abcdb_20200225000000\abcdb_20200225000000.bak' 
WITH FILE = 1, 
MOVE N'abcDB' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ABCDB.MDF', 
MOVE N'ABCDB_INDEX' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ABCDB.MDF', 
MOVE N'ABCDB_MAC' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ABCDB.MDF', 
MOVE N'SMUDB_log' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ABCDB_1.LDF', 
NOUNLOAD, 
STATS = 10

Не удалось восстановить сервер «LI0605305». (Microsoft.SqlServer.SmoExtended)

Для получения справки щелкните: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600.1+ ((KJ_RTM) .100402-1539 +) & EvtSrc = Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText & EvtID = Restore + Server & LinkId = 20476

System.Data.SqlClient.SqlError: File 'C: \ Program Files \ Microsoft SQL Server \ MSSQL10_50.MSSQLSERVER \ MSSQL \ DATA \ ABCDB.MDF' заявлен через 'ABCDB_INDEX' (3) и 'ABCDB' (1). Предложение WITH MOVE можно использовать для перемещения одного или нескольких файлов. (Microsoft.SqlServer.Smo)

Для получения справки щелкните: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600.1+ ((KJ_RTM) .100402-1539 +) & LinkId = 20476 )

Мой единственный файл bak содержит 3 файла mdf с abcdb, abcdb_index, abcdb_ma c и один файл журнала abcdb_log

1 Ответ

1 голос
/ 11 июля 2020

Каждый файл необходимо восстановить в отдельном месте, например

RESTORE DATABASE [abcdb] 
FROM DISK = N'C:\Shared\Shared\AerdemDB\abcdb_20200225000000\abcdb_20200225000000.bak' 
WITH FILE = 1, 
MOVE N'abcDB' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ABCDB.MDF', 
MOVE N'ABCDB_INDEX' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ABCDB_INDEX.NDF', 
MOVE N'ABCDB_MAC' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ABCDB_MAC.NDF', 
MOVE N'SMUDB_log' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ABCDB_1.LDF', 
NOUNLOAD, 
STATS = 10
...