[MS-SQL]Database 백업 파일 복원

Yang Sooho·2024년 1월 15일

데이터베이스 백업 파일 복원

백업, 복원하기에 앞서...

  1. SSMS 프로그램을 설치해야 합니다. [SSMS 다운로드 바로가기]
  2. 되도록이면 MS-SQL 최신버전을 설치해야 합니다.
  3. SQL Server가 설치되어 있어야 합니다.
  • 저의 경우, Docker를 이용하여 Container에 2022-latest버전을 설치하였습니다.

데이터베이스 백업

데이터베이스 백업

  1. SSMS 모듈에서 백업을 진행할 데이터베이스를 우클릭합니다.
  2. 우클릭 후 나타나는 CONTEXT화면은 위와 같이 나타나며, [태스크 >백업]을 누릅니다.

  1. 데이터베이스 백업 창이 위와같이 나타나면 백업위치가 디스크인지 확인합니다.
  2. 디스크로 설정 후, 백업 위치가 없는 경우 추가하여 설정하며, 이미 있으면 확인을 누릅니다.
  3. 확인 버튼 클릭 후, 백업 파일을 확인합니다.

데이터베이스 복원

  1. 복원을 진행할 데이터베이스를 우클릭합니다.
  2. [태스크 > 복원 > 데이터베이스]를 순차적으로 클릭합니다.

  1. 데이터베이스 복원 화면에서, 원본의 설정을 [디바이스]로 변경합니다.
  2. 디바이스 옆의 [...] 버튼을 클릭합니다.
  3. 그러면 백업 디바이스 선택 창이 나타나는데, 여기서 [백업 미디어 유형][파일]로 합니다.
  4. [추가] 버튼을 클릭하여, 백업할 파일을 선택합니다. (.bak가 아닌 다른 확장자를 했을 경우, 모든 파일 탭으로 설정하여 파일을 선택합니다.

데이터베이스 복원 시, 오류 케이스

1. 데이터베이스 버전 설정 문제

System.Data.SqlClient.SqlError: The database was backed up on a server running version ${BACKUP_VERSION}. That version is incompatible with this server, which is running version ${RECOVERY_VERSION}. Either restore the database on a server that supports the backup, or use a backup that is compatible with this server. (Microsoft.SqlServer.SmoExtended)

  • 백업파일의 버전이 복원하려는 버전보다 높은 경우 발생하는 내용으로, 복원하려는 서버의 버전을 업그레이드 해야 합니다.
  • 만약, 업그레이드 할 수 없는 경우, [DB 데이터 내보내기]를 이용한 방법으로 데이터를 받아야합니다.

2. 데이터베이스 복원 파일 덮어쓰기 미설정

System.Data.SqlClient.SqlError: The backup set holds a backup of a database other than the existing ‘${database}’ database

  • 위와 같이 파일의 덮어쓰기 설정만 활성화하면 됩니다. (WITH REPLACE)
profile
개발 한웅큼 메모 한 스푼

0개의 댓글