디렉터리/데이터 파일을 복사하여 MSSQL 서버를 복원할 수 있습니까? 하드 디스크가 손상되어 C:\Program Files (x86)\SQL Server 2008\MSSQL\MSSQL10.MYDATABASE 디렉터리를 복구할 수 있었습니다. 이를 새 설치에 복사하고 서비스를 시작하려고 시도했지만 실패했습니다. 어떻게 든 DB를 복원하는 것이 가능합니까?
저는 Windows 7 64비트와 MS SQL Server 2008 R2를 사용하고 있습니다.
답변1
파일에서 데이터베이스를 복원하려면 데이터 파일(MDF)이 필요하며 때로는 NDF도 존재하며 로그 파일(LDF)도 있습니다.
- SQL Server 관리 스튜디오 시작
- 마우스 오른쪽 버튼을 클릭하세요.데이터베이스마디
- 선택하다붙이다
- 딸깍 하는 소리추가하다
- 저장한 MDF 파일을 선택하세요
- 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
전체 디렉터리를 복사하면 안 됩니다. 해당 데이터베이스에 대한 데이터베이스 및 트랜잭션 로그 파일만 복사했어야 합니다.
대상 호스트에서 SQL Server를 제거하고 다시 설치합니다.
문제의 데이터베이스에 대한 데이터베이스 및 트랜잭션 로그 파일을 대상 호스트에 복사합니다.
데이터베이스를 연결합니다.
답변3
@joeqwerty가 말한 것과 정확히 일치하며, 미래에 대한 몇 가지 팁만 제공됩니다.
데이터베이스 파일 .MDF를 로그 파일 .LDF와 별도의 드라이브에 보관하는 것이 가장 좋습니다. 또한 모든 데이터베이스를 C: 드라이브에 보관하는 것이 좋습니다. TEMPDB는 자체적으로 드라이브에 있을 때 최고의 성능을 발휘합니다.
다음은 시스템 DB를 이동하는 방법에 대한 기사입니다.테크넷