그래서 testdisk를 사용하여 포맷 된 디스크에서 sqlite 데이터베이스를 가져 왔습니다. 나는 파일을 가지고 있지만 그 중간에 이상한 것들이 잔뜩 있는데, 그것은 어떤 로그로부터 어떤 로그처럼 보였다. 요점은 그것이 심각하게 손상되었다는 것입니다.디스크 데이터 복구에서 검색된 손상된 sqlite 데이터베이스 복구
나는 파일의
이전 버전이 다른 파일에 이상한 물건을 가지고 모든 데이터를 포함 ....하지만 SQLite는 파일의 이전 버전을해야합니까. 손상되지 않은 파일이 정상적으로 표시되지 않는 손상된 파일이있는 최신 항목입니다.
다양한 echo .dump 방법과 그 모든 것을 사용하여 손상된 파일을 복구하려고했지만 빈 파일이 있습니다.
Baxters-MacBook-Pro:desktop bax$ sqlite3 corrupted.sqlite3
SQLite version 3.7.13 2012-06-11 02:05:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> pragma integrity_check;
Error: database disk image is malformed
덤핑
저를 제공합니다PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
/****** CORRUPTION ERROR *******/
/****** database disk image is malformed ******/
/****** ERROR: database disk image is malformed ******/
/****** CORRUPTION ERROR *******/
/****** database disk image is malformed ******/
/****** ERROR: database disk image is malformed ******/
/**** ERROR: (11) database disk image is malformed *****/
ROLLBACK; -- due to errors
내가 HEX에 dumbly 그들에 합류했습니다. 손상된 파일의 겹쳐진 정보를 통해 오래된 (손상되지 않은 데이터베이스가 아닌) 내용을 붙여 넣었습니다. 즉, 손상되지 않은 파일의 마지막 데이터 비트는 시간 소인
15:15:14.419734
(데이터베이스는 이전 레일 응용 프로그램의 것임)이었습니다. 손상된 파일에서 해당 파일을 발견하고 손상되지 않은 파일 16 진수를 손상된 파일의 모든 지점에 붙여 넣었습니다. 이제 열리지 만, 놀랍지 만 손상되지 않은 파일 (160 개 항목 중 122 개 정도)의 데이터 만 가져올 수 있습니다.
어디 두 사람은 다음과 같습니다 가입 :
15:15:14.419734√Ö√£) �√ÖYAA{1B, 8B
1B, 8B
이 항목의 시작입니다. 진수에서
: 날이 두 데이터베이스를 가입하거나, 내가 뼈하니
31353A 31353A31 342E3431 39373334 C3851FC3 A3290900
01C38501 59014141 7B31422C 203842
어떤 방법이 있습니까?
답장을 보내 주셔서 감사합니다. 이전에 파일 형식 문서를 살펴본 결과, 헤드 나 꼬리를 만들 수 없었습니다 (16 진수 편집 경험 없음). 데이터를 기억하는 것이 훨씬 저렴할 것 같습니다. 그래서 그것이 내가 할 일입니다. –