前陣子由於分割槽空間滿出現了sqlite3資料庫檔案損壞的現象,操作的時候報錯:
error: database disk image is malformed
這裡記錄一下修復的操作過程:
sqlite3 test_file.db #開啟損壞的資料庫檔案
.output recovery.sql #設定輸出檔案
.dump # 匯出檔案
.q vim recovery.sql
將匯出的recovery.sql檔案最後一行rollback改為commit;
sqlite3 fix.db #開啟用於匯入修復後的資料庫資料
.read recovery.sql #讀取資料檔案
.q
SQLite資料庫損壞修復
the database disk image is malformed 進入到sqlite3操作指定的資料庫 或者直接 sqlite3 e item.db 操作此資料庫 sqlite databases main e item.db sqlite tables 顯示列表 檢查資料庫是否損壞 sql...
sqlite3資料庫修復方法
使用第三方軟體 sqlite expert 開啟資料庫有乙個 repair 按鍵 使用sqlite3.exe 修復 執行命令列命令,將你的資料庫中的資料匯出為sql語句檔案 sqlite3 my.db sqlite output tmp.sql sqlite dump sqlite quit 最後匯...
SQLite資料庫損壞與修復
導致sqlite資料庫損壞的情況大致可歸結為4類 檔案覆蓋問題 檔案鎖問題 資料同步問題 記憶體問題 sqlite資料庫檔案被覆蓋是可能的,畢竟是乙個普通的磁碟檔案,意味著所有的程序都可以開啟和覆蓋,所以不可能完全避免檔案覆蓋的情況。1.多執行緒寫資料庫問題。sqlite資料庫是支援多程序併發讀寫,...