2012-10-23 5 views
1

에는 Linux 서버에 많은 SQLite 데이터베이스가 있습니다. 최근에 나는 그들을 백업했다. 데이터베이스가 손상되어 어디에 모든 파일을 다시 업로드해야만했는지 확인합니다.SQLite FTP 다운로드/업로드 문제

이제 SQLite 데이터베이스가 더 이상 작동하지 않습니다. 서버에서 Linux가 실행 중이고 Windows가 설치되어 있지만 파일이 다운로드 된 것이므로 로컬로 열리지 않았습니다. 플러스 나는 밤새 서버에서 그들을 다운로드했다 그래서 아무도 당시에 파일과 교통하고 있었다.

내가 처음에는 모르는 백업을 만들기 위해 일종의 SQLite API를 사용해야한다는 (지금은 피해가 완료된 후) 내용을 읽었습니다.

제 질문은 - 이러한 형식의 파일을 저장할 수있는 방법이 있습니까? 왜 그들은 처음에 형식이 잘못 되었습니까?

Tnx!

편집 : 나는 아무도 현재 그들에게 서면으로하지 않습니다으로 SQLite는 파일의 복사본이만큼 무방 만들기 데이터베이스 파일에 SELECT * FROM sqlite_master,하지만 아무것도 ...

+0

그럼 이러한 데이터베이스를 복구해야합니까? Google은 '수리 sqlite 데이터베이스'를 검색 할 때 많은 인기를 얻었습니다 ... – arkascha

+0

글쎄, 지금까지 아무것도 beacuse 나는 어떻게 그리고 왜 간단한 다운로드가이 문제를 일으킬 수 있는지 알아 내려고 노력하고 있습니다 ...하지만 검색하고 있습니다. 지금 sqlite 복구에 대한 좋은 aricle 소스가 있습니다 – Andrej

+0

파일을 업로드/다운로드 할 때'binary' 파일 전송을 설정 했습니까? – choroba

답변

2

를 조회 할 수 있어요.

FileZilla의 기본 전송 모드는 일반적으로 이 아니고 이진 파일이므로 데이터베이스 파일이 손상되었을 수 있습니다.

FTP 전송에 ASCII 모드를 사용하는 경우 줄 끝 (Unix에서는 10, Windows에서는 13, Windows에서는 13)과 같은 모든 바이트가 대상 시스템의 줄 끝 스타일로 변환됩니다. 그런 다음 원래 바이트가 무엇인지 판별하는 것이 쉽지 않거나 자동으로 가능하지 않으므로 실용 상 데이터베이스를 복구 할 수 없습니다.

+0

예 ... 이것이 문제의 원인입니다 ... 전송을 바이너리가 아니었고 이제는 데이터를 저장할 수있는 방법이 없기 때문에 서버를 하드 드라이브 (백업용)로 잘못 작성했습니다. – Andrej