Komut dosyası yaklaşımını kullanıyorsanız ve LDF ve MDF dosyalarıyla ilgili bir hatayla karşılaşıyorsanız , önce yedekleme dosyasını aşağıdakileri kullanarak yedekleme kümesindeki dosyaların mantıksal adları (ve diğer ayrıntılar) için sorgulayabilirsiniz :
-- Queries the backup file for the file list in backup set, where Type denotes
-- type of file. Can be L,D,F or S
-- info: https://docs.microsoft.com/en-us/sql/t-sql/statements/restore-statements-filelistonly-transact-sql
RESTORE FILELISTONLY FROM DISK = 'C:\Temp\DB_backup.bak'
GO
Aşağıdakine benzer sonuçlar alırsınız:
Ve sonra bu mantıksal adları sorgularda kullanabilirsiniz:
-- Script assumes you want MDF and LDF files restored on separate drives. Modify for your scenario
RESTORE DATABASE DB
FROM DISK='C:\Temp\DB_backup.bak'
WITH REPLACE,
MOVE 'DB' TO 'E:\MSSQL\Data\DB.mdf', -- "DB" is the mdf logical name from query above
MOVE 'DB_log' TO 'F:\MSSQL\Logs\DB.ldf'; -- "DB_log" is LDF logical name from query above
RESTORE FILELISTONLY
SQL Server belgelerinden daha fazla bilgi edinebilirsiniz .
WITH MOVE
WITH REPLACE, MOVE