파일에서 MS SQL 2008 데이터베이스 복원

파일에서 MS SQL 2008 데이터베이스 복원

디렉터리/데이터 파일을 복사하여 MSSQL 서버를 복원할 수 있습니까? 하드 디스크가 손상되어 C:\Program Files (x86)\SQL Server 2008\MSSQL\MSSQL10.MYDATABASE 디렉터리를 복구할 수 있었습니다. 이를 새 설치에 복사하고 서비스를 시작하려고 시도했지만 실패했습니다. 어떻게 든 DB를 복원하는 것이 가능합니까?

저는 Windows 7 64비트와 MS SQL Server 2008 R2를 사용하고 있습니다.

답변1

파일에서 데이터베이스를 복원하려면 데이터 파일(MDF)이 필요하며 때로는 NDF도 존재하며 로그 파일(LDF)도 있습니다.

  1. SQL Server 관리 스튜디오 시작
  2. 마우스 오른쪽 버튼을 클릭하세요.데이터베이스마디
  3. 선택하다붙이다
  4. 딸깍 하는 소리추가하다
  5. 저장한 MDF 파일을 선택하세요
  6. LDF 파일이 자동으로 추가됩니다. 그렇지 않은 경우 '찾을 수 없음' 메시지가 표시되며 줄임표 버튼을 클릭하여 파일을 수동으로 추가해야 합니다.

여기에 이미지 설명을 입력하세요

실패하면 다음을 사용하여 MDF 파일만 첨부해 보십시오.sp_attach_single_file_db기능

EXEC sp_attach_single_file_db @dbname = 'AdventureWorks2012Restored' ,
@physname = N'D:\ApexSQL\backups\CS2.mdf';

이것이 실패하면 MDF 파일이 손상되었을 수 있습니다. MDF 파일을 읽고 데이터를 복구하는 타사 도구를 사용해 볼 수 있습니다.

ApexSQL 복구손상된 MDF 파일을 읽고, 모든 개체를 재생성하고, 테이블 레코드를 복구할 수 있는 도구입니다. T-SQL 스크립트를 생성하거나 데이터베이스 복사본을 생성할 수 있습니다.

면책 조항: 저는 ApexSQL에서 지원 엔지니어로 일하고 있습니다.

답변2

  1. 전체 디렉터리를 복사하면 안 됩니다. 해당 데이터베이스에 대한 데이터베이스 및 트랜잭션 로그 파일만 복사했어야 합니다.

  2. 대상 호스트에서 SQL Server를 제거하고 다시 설치합니다.

  3. 문제의 데이터베이스에 대한 데이터베이스 및 트랜잭션 로그 파일을 대상 호스트에 복사합니다.

  4. 데이터베이스를 연결합니다.

답변3

@joeqwerty가 말한 것과 정확히 일치하며, 미래에 대한 몇 가지 팁만 제공됩니다.

데이터베이스 파일 .MDF를 로그 파일 .LDF와 별도의 드라이브에 보관하는 것이 가장 좋습니다. 또한 모든 데이터베이스를 C: 드라이브에 보관하는 것이 좋습니다. TEMPDB는 자체적으로 드라이브에 있을 때 최고의 성능을 발휘합니다.

다음은 시스템 DB를 이동하는 방법에 대한 기사입니다.테크넷

관련 정보