1

is have a bunch of SQLite databases on a Linux server. I recently made a backup of them. The site where the databases where crashed and I had to reupload all the files.

Now the SQLite databases don't work anymore. The server is running Linux and I have Windows installed, but the files were only downloaded and they were never opened locally. Plus I made sure I download them from the server overnight so the nobody was communicating with the file at the time.

I read (now, after the damage has been done) that I have to use some sort of SQLite API to make backups which I didn't know at first.

So my question is - is there any way to save these malformed files? And why are they malformed in the first place?

Tnx!

EDIT: I am able to query SELECT * FROM sqlite_master on the database files, but nothing else...

4

1 に答える 1

3

SQLite ファイルのコピーを作成することは、現在誰も書き込みを行っていない限り、まったく問題ありません。

通常、FileZilla のデフォルトの転送モードはバイナリではないため、データベース ファイルが破損している可能性があります。

FTP 転送に ASCII モードを使用する場合、行末のように見えるすべてのバイト (Unix では 10、OS X では 13、Windows では 13+10) は、ターゲット システムの行末スタイルに変換されます。その後、元のバイトが何であったかを判断することは容易ではなく、自動的にも不可能であるため、実用上、データベースは回復できません。

于 2012-10-23T10:39:19.277 に答える