从 Firefox SQLite 数据库中删除旧记录

从 Firefox SQLite 数据库中删除旧记录

我在 ~/.mozilla/firefox/profilename 中有一些大型 sqlite3 数据库

尤其是 places.sqlite (12 MB) 和 urlclassifier3.sqlite (33 MB)。

是否可以截断它们并删除其中最旧的记录?

当然,我可以完全擦除它们,但这不是我的目标——我只是想在保留最新记录的同时最小化这些文件的大小。

答案1

数据库places.sqlite包含您的所有书签和历史记录 - 您可以从 Firefox 中删除不需要的历史记录。urlclassifier3.sqlite是网络钓鱼网站 URL 的列表,您可以将其完全删除 - 启用反网络钓鱼后,它将自动重新填充(之后可能会变小,因此删除是没有用的)。

如果您想完全禁用反网络钓鱼,您可以在设置中关闭这两个复选框: Firefox 设置

如果你想进一步优化它们,请检查本文

答案2

如果你有 SQLite,你可以运行以下命令:

echo 'DELETE FROM moz_historyvisits
WHERE visit_date < strftime("%s", "now", "-5 month") * 1000000; VACUUM;' |
sqlite3 places.sqlite

答案3

由此文章,你所要做的就是进入Tools=>Error Console并粘贴Components.classes["@mozilla.org/browser/nav-history-service;1"].getService(Components.interfaces.nsPIPlacesDatabase).DBConnection.executeSimpleSQL("VACUUM");

答案4

另一种选择(如果你使用的是 Windows)是使用已经有用的其他原因CCleaner(又名 CrapCleaner)。它包含一个选项,用于清理和压缩 Firefox 数据库,作为其常规清理任务的一部分。

相关内容