개발/database
[mssql] 데이터 베이스 백업 복원
가시죠
2022. 1. 20. 23:16
반응형
1.백업
backup database [데이터베이스명] to disk='[드라이브경로파일명]' with init, compression;
예시쿼리
backup database hitomisdb to disk to disk='F:\backup\hitomisdb.bak' with init, compression;
2.복원전 정보확인
restore filelistonly from disk='[드라이브경로파일명]'
예시쿼리
restore filelistonly from disk='[드라이브경로파일명]'
3. 복원
복원전 정보확인 쿼리 실행 시 조회되는 내용을 move 내용 부분에 적어준다.
restore database [대상데이터베이스명] from disk='[백업파일명]'
with
move '[원본 primary]' to '[대상데이터베이스파일.mdf]'
, move '[원본 filegroup]' to '[대상데이터베이스파일_fg.ndf]
, move '[원본 log]' to '[대상데이터베이스파일_log.ldf]'
;
예시쿼리
restore database hitomisdb2 from disk='F:\backup\hitomisdb.bak'
with
move 'hitomisdb' to 'F:\data\hitomisdb2.mdf'
, move 'hitomis_fg1' to 'F:\data\hitomisdb2_fg1.ndf'
, move 'hitomis_log' to 'F:\data\hitomisdb2_log.ldf'
;
4. 호환성 수준 변경
alter database hitomisdb2 set compatibility_level=140;
5. 사용현황 갱신
dbcc updateusage(0) with no_infomsgs;
6. 페이지 갱신
alter database hitomisdb2 set page_verify checksum;
오류 메시지 별 조치 방법
- the backup set holds a backup of a database other then the existing
- 복원 쿼리 부분에 replace 구문 추가
... with replace ...
- 복원 쿼리 부분에 replace 구문 추가
- exclusive access could not be obtained because the database is in use
- 대상데이터베이스를 offline 모드로 변경하고 3. 복원 쿼리 실행
반응형