2011-12-14 3 views
0

나는 최근에 이전 MSSQL .bak 파일에서 데이터를 복구하는 슬픈 작업을 물려 받았습니다. 이것이 웹 데이터베이스로 들어가기 때문에, PHP가 액세스하고 읽을 수 있다면 흥미롭고 이상적입니다.PHP에서 MSSQL .bak 파일 읽기

현재이 백업 파일을 복원 할 수있는 MS SQL 관리 콘솔을로드 할 Windows 컴퓨터에 액세스 할 수 없습니다.

누구든지이 .bak 파일의 데이터에 쉽게 액세스 할 수있는 라이브러리가 있는지 알고 있습니까?

답변

0

Red-Gate Virtual Restore과 같은 도구가 있습니다. 그러나이 도구는 SQL Server 인스턴스가 SQL Server의 IO 요청을 Microsoft SQL Server로 매핑하여 적절한 복원을 통해 .bak 파일을 읽을 수 있도록하는 가상 파일 매퍼 일 뿐이므로 완전한 SQL Server 설치가 필요합니다. bak 파일 (Hyperbak 참조). 이 도구의 이점은 .bak 파일 내용을 검사하고 전체 복원 (기본적으로 데이터베이스 복원에 필요한 실제 .MDF/.LDF 파일을 만들지 않아도 됨)없이 데이터 검색을 허용하는 것입니다.

적절한 경우 SQL Server 인스턴스에서 .bak 파일을 복원해야합니다. 운이 좋았고 원래 데이터베이스에 엔터프라이즈 전용 기능 (sys.dm_db_persisted_sku_features이 비어 있음)이없고 데이터베이스가 10Gb SQL Express 제한을 초과하지 않으면 무료 SQL Server 2008R2 Express 인스턴스로 백업 파일을 복원 할 수 있습니다.

1

바이너리 .bak 파일에서 데이터를 읽을 수있는 유일한 방법은 MS SQL 관리 콘솔을 사용하는 것입니다. 다른 도구를 사용하여 쉽게 구문 분석 할 수있는 평범한 텍스트가 아니라는 사실을 눈치 챘을 것이며 (그리고 Google이 알고있는 한) 실제 제공되는 MS 도구 이외의 다른 bak 파일을 처리 할 수있는 신뢰할만한 도구가 없습니다. 고 말했다. 이 파일을 읽으려면 올바른 버전의 SQL을 설치해야합니다.

+0

실제로, 나는 여기에 게시하기 전에 Google 대 군주와상의했으며, 실패했습니다. – Kisda

+0

예 - Google에서 찾을 수없는 제안을 제공하는 것이 좋지만 이러한 경우는 아닙니다. –

1

MS SQL이 없지만 일부 Windows 버전을 사용하는 경우 Microsoft SQL Server 2000 Desktop Engine을 사용해보십시오. 무료 다운로드 http://www.microsoft.com/en-us/download/details.aspx?id=22661

이 라이브는 http://forums.mysql.com/read.php?65,72796,207081#msg-207081 에 있습니다. 여기서 Tim은 라이브 ODBC 데이터 소스를 만들 수 있음을 언급합니다.

지금까지 필자는 자신의 가상 머신에 XP가 설치되지 않았지만 지금까지는 성공하지 못했으며 요즘 적절한 SQL 덤프 중 하나를 얻게 될 것입니다.