星期一, 九月 14, 2009

Firefox 3收藏庫是不是該減肥了

結束我的Firefox需耗時近20秒,原來是因為收藏庫太過臃腫。

Firefox 3改以SQLite資料庫存放書籤、下載記錄、搜尋列與表單輸入的內容、網站表單Cookie和瀏覽歷程,並以『收藏庫』作為使用者存取書籤或歷程的GUI。這種作法的好處不少,但如果資料庫檔案太大,就會影響效率。

這個資料庫檔案名稱是places.sqlite,如果是Windows XP或Windows 2000,它的位置在(其他作業系統的位置請參考這裡):

%APPDATA%\Mozilla\Firefox\Profiles\<隨機數.default>

如果是Windows 7或Vista,預設位置是在

C:\Users\<user>\AppData\Roaming\Mozilla\Firefox\Profiles\<隨機數.default>

非常驚人的是,我的places.sqlit竟然有230 MB。容量這麼大的檔案,常會有效率低落的結果,也讓我聯想到,這與結束我的Firefox需耗時近20秒(表面上程式已關閉,但從『工作管理員』仍可看到程式),或許也有關係。

如果只是儲存書籤,places.sqlit的容量不至於暴漲,暴漲的原因往往是歷史記錄,尤其Firefox預設會儲存90天的歷史記錄。

減掉贅肉

利用收藏庫可以刪除個別的瀏覽記錄或書籤,Firefox本身的『清除最近歷史記錄』(工具/選項/個人隱私),也可依照時間範圍來刪除特定的項目(例如『瀏覽與下載記錄』)。

 清除最近的歷史記錄

以上都是不錯的選擇,不過Irvin在《Firefox 3 日漸肥大的收藏庫減肥法:最新版!》提供了更好的方法。他利用Firefox的『錯誤主控台』來執行6行內含SQL  statement的JavaScript  statement,可以只刪除瀏覽次數不超過2次的記錄、刪除Google Toolbar『新分頁網頁』的縮圖(),最後再壓縮檔案空間,讓places.sqlit變小。他們甚至已經將手動輸入statement的程序寫成Firefox附加元件《PlacesCleaner  收藏庫清潔工》。

藉由Irvin提供的方法,我230  MB的places.sqlit瘦身成12  MB(另一個只用了1個月的places.sqlit,也從42  MB變成5.3  MB),而且結束Firefox也不需再耗時20秒了。

還有一種清除歷史記錄的終極作法,刪掉places.sqlit,開啟Firefox之後,Firefox找不到places.sqlit,就會自行重建。

不要復胖

除了定時清理、壓縮places.sqlit檔案(或安裝PlacesCleaner附件元件),另一個方式是不要儲存沒有必要的資料。尤其Firefox 3預設會儲存所有的歷史記錄,但也允許使用者自訂歷史記錄的儲存選項;甚至可以在Firefox結束時,就清除歷史記錄。

自訂歷史記錄的儲存選項


:Firefox  3的附加元件也能將資料存入places.sqlit,因此若使用不當,附加元件也可能是讓places.sqlit暴肥的原因。之前Google Toolbar 5某個版本的『新分頁網頁』縮圖,會塞爆places.sqlit。目前的Google Toolbar  5就算不塞爆,依然是將縮圖存到places.sqlit,因此Irvin的作法依然有效。如果沒有用到這項功能,可取消Google Toolbar選項交談窗的『搜尋/啟用Google新分頁網頁』。

選項交談窗

3 意見:

小賤健 提到...

另外也可以使用 Vacuum Places Improved 這個 Extesion,它可以清/整理 places.sqlite 資料庫。

~影子~ 提到...

是呀!慢爆了啦> <
希望未來的版本會有所改進!!

賴榮樞 提到...

感謝小賤健提供的資訊。也感謝影子的留言。