Если Mail.app у вас стал гораздо медленнее работать, то стоит сделать Vacuum на базу данных SQLite. Предварительно нужно выйти из Mail.app. Для наглядности можно вывести размер базы до операции и после (к сожалению, я этого не сделал).
$ ls -alh ~/Library/Mail/Envelope\ Index $ sqlite3 ~/Library/Mail/Envelope\ Index vacuum; $ sqlite3 ~/Library/Mail/Envelope\ Index vacuum index; $ sqlite3 ~/Library/Mail/Envelope\ Index vacuum subjects; $ sqlite3 ~/Library/Mail/Envelope\ Index vacuum recipients; $ sqlite3 ~/Library/Mail/Envelope\ Index vacuum messages; $ sqlite3 ~/Library/Mail/Envelope\ Index vacuum threads; $ ls -alh ~/Library/Mail/Envelope\ Index
Скорее всего достаточно просто команды “vacuum”, но я дополнительно прошёлся по всем таблицам с большим количеством записей и прихватил индексы.
Если интересно, то посмотреть схему базы данных можно командой:
$ sqlite3 ~/Library/Mail/Envelope\ Index sqlite> .schema CREATE TABLE addresses (ROWID INTEGER PRIMARY KEY, address COLLATE NOCASE, comment, UNIQUE(address, comment)); ...
Перечень таблиц:
sqlite> .tables addresses ews_folders subjects alarms feeds threads associations mailboxes todo_notes attachments messages todos calendars properties todos_deleted_log events recipients todos_server_snapshot
Количество записей в таблицах:
sqlite> select count(*) from messages; sqlite> select count(*) from subjects; ...
Помощь:
sqlite> .help
Описание работы с SQLite можно посмотреть в статьях ”Command Line Shell For SQLite” и ”SQLite Tutorial”.