資料庫損壞解決 資料庫已損壞,無法分配空間

2021-07-14 04:09:51 字數 892 閱讀 4397

問題描述:

使用者將domino公升級完成之後,當使用者試圖訪問server上的郵箱庫時,碰到錯誤資訊「資料庫已損壞,無法分配空間」

解答:這個錯誤資訊通常意味著資料庫損壞,在這種情況下,我們通常要用fixup/compact/updall這幾個命令來嘗試修復資料庫。

1.fixup -f (這樣的引數會強制fixup檢查資料庫中的所有文件)

2.compact -i -c -d -k(分別代表了忽略錯誤、拷貝樣式的壓縮、刪除檢視索引、設定較大的unk**)

3.updall -r(重建所有已使用的檢視)

動態修復是在伺服器啟動的狀態下,在伺服器控制台上對資料庫做下面的修復操作。如果您的資料庫比較大,這些操作會花費一定的時間,等乙個命令執行完了之後再做下乙個。注意拷貝式壓縮的方式要求資料庫在關閉的狀態。

load fixup -f mail\db.nsf 這裡的mail\db.nsf對應要修復資料庫的目錄和名稱,您可以根據實際情況修改。

load updall -r mail\db.nsf 

load compact -i -c -d -k mail\db.nsf 

離線修復是把伺服器停下來之後,開啟乙個命令列視窗,進入domino的資料目錄。以windows為例,執行nfixup -f mail\db.nsf(資料庫的全路徑),按照同樣的方式去執行下面的兩個命令。這些操作可能會花費一些時間,耐心等都結束了之後再去啟動伺服器。

ncompact -i -c -d -k mail\db.nsf

nupdall -r mail\db.nsf

注意:對於unix作業系統,執行的命令為:

fixup -f mail\db.nsf

compact -i -c -d -k mail\db.nsf

updall -r mail\db.nsf

SQLite資料庫損壞修復

the database disk image is malformed 進入到sqlite3操作指定的資料庫 或者直接 sqlite3 e item.db 操作此資料庫 sqlite databases main e item.db sqlite tables 顯示列表 檢查資料庫是否損壞 sql...

資料庫表損壞的修復

用命令列訪問出現 開始時使用myisamchk r o home test test user.myi進行修復,出現錯誤 myisamchk error myisam sort buffer size is too small。df發現是mysql temp目錄太小,此錶太大。更改my.cnf檔案修...

SQLite資料庫損壞與修復

導致sqlite資料庫損壞的情況大致可歸結為4類 檔案覆蓋問題 檔案鎖問題 資料同步問題 記憶體問題 sqlite資料庫檔案被覆蓋是可能的,畢竟是乙個普通的磁碟檔案,意味著所有的程序都可以開啟和覆蓋,所以不可能完全避免檔案覆蓋的情況。1.多執行緒寫資料庫問題。sqlite資料庫是支援多程序併發讀寫,...