Mozilla Thunderbird:从global-messages-db.sqlite恢复电子邮件

时间:2018-10-08 20:07:04

标签: sql sqlite recovery thunderbird mbox

如何从Thunderbird的 global-messages-db.sqlite 中恢复丢失的电子邮件?

在将某些电子邮件从Imap迁移到本地存储的过程中,我的PC内核陷入了恐慌。结果,该迁移未完成向磁盘的写入。

由于迁移失败, global-messages-db.sqlite 中存在许多电子邮件,但在相应的mbox文件中不存在(例如, Mail/username@hostname.tld <中不存在) / em>)。我通过sqlitebrowser验证了电子邮件是否存在于 global-messages-db.sqlite 中。实际上,我已经成功地手动提取了一些关键消息的内容。

启动时,雷鸟正在从在mbox文件中找不到的 global-messages-db.sqlite 电子邮件中清除。如果我用包含丢失电子邮件的版本替换活动的 global-messages-db.sqlite ,Thunderbird将忽略并最终删除那些丢失的电子邮件。

如果我仍然可以访问Imap帐户,这将是一个小难题。不幸的是,我没有。

1 个答案:

答案 0 :(得分:0)

编写转换器脚本很简单

我会快速编写gloda-> mbox转换器的代码,这可能是您最快的成功之路。您已经发现了gloda数据库的结构。现在,只需在node.js中编写一些JavaScript,即可打开一个sqlite数据库,依次遍历文件夹,然后遍历每个文件夹中的消息,并为每个文件夹编写一个mbox文件。 mbox文件格式很简单(只需注意“发件人”)。完成后,您只需覆盖现有的空本地文件夹即可在Thunderbird中打开这些mbox文件。

P.S。提醒您:进行备份。 Esp。在进行此类迁移操作之前,还应定期进行。