SQL Server Management Studio에서 서버를 마우스 오른쪽 단추로 클릭하고 설정하여 Data
및 Log
위치를 F:\moved\
으로 설정했습니다.SQL Server 2008 slqcmd 데이터 위치
그러나 sqlcmd
을 사용하여 데이터베이스를 복원하면 데이터베이스가 기본 SQL Server 위치 인 것처럼 보이는 E:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA
으로 복원됩니다.
RESTORE DATABASE $(database) FROM DISK = '$(root)\$(database).bak' WITH RECOVERY,
MOVE '$(database)' TO '$(datadir)$(database).mdf',
MOVE '$(database)_log' TO '$(datadir)$(database).ldf'
GO
오류 :
Changed database context to 'master'.
Msg 3234, Level 16, State 2, Server SQL1, Line 3
Logical file 'userdb1' is not part of database 'userdb1'. Use RESTORE FILELISTONLY to list the logical file names.
Msg 3013, Level 16, State 1, Server SQL1, Line 3
RESTORE DATABASE is terminating abnormally.
은 내가 가끔 오류가 발생 데이터베이스가 항상 저장 목적으로 F:\moved\
로 복원해야하지만 사용할 때 내 스크립트에 다음과 같은 sqlcmd
을 기본값으로 F:\moved\
으로 복원 할 수 있습니까? 오류를 피하기 위해 수동으로 지정하지 않아도됩니까?
아, 미안 해요, 난 이미이 작업을 수행 : 4 복원 -i -S %를 SQLCMD. sql -v 데이터베이스 = "% 1"-v root = "% 2"-v dbserver = "% 4"-v datadir = "% 6"-U sa -P 테스트 결과 오류. –
이유 I SQL 관리 스튜디오를 통해 수동으로 데이터베이스를 복원하면 복원되기 때문에 기본 설정을 원하십니까? –