Acelera el rendimiento de Mail limpiando su base de datos

Mail, como cliente de correo electrónico, no está mal, pero a veces sufre problemas crónicos de rendimiento sobre todo cuando arrastra a lo largo de los años inmensas cantidades de correos electrónicos. Pero hay una opción para acelerar un poco el rendimiento de Mail, especialmente cuando tenemos buzones con inmensas cantidades de correos electrónicos.

El truco es «pegarle un repaso» a la base de datos (SQLite3) de Mail, eliminando los espacios innecesarios generados por la eliminación de información así como fragmentación en la base de datos. El comando que vamos a utilizar, vacuum, está documentado en este enlace, y permite reconstruir la base de datos.

Antes de empezar, cierra Mail. Luego, para OS X 10.8 Mountain Lion (y posiblemente también para OS X 10.7 Lion), abre el Terminal en Aplicaciones > Utilidades y añade este comando:

 sqlite3 ~/Library/Mail/V2/MailData/Envelope Index vacuum;

En función del tamaño de esa base de datos el comando llevará cierto tiempo en terminar su operación. Y cuando vuelvas a abrir Mail, lo notarás más ágil, sobre todo a la hora de explorar buzones con grandes cantidades de correo electrónico.

Este comando, no obstante, quizás pueda causarte algún problema. Yo lo he probado y no he tenido efectos colaterales, pero en el peor de los casos, siempre puedes, si ha habido algún problema, cerrar Mail y recuperar el archivo directamente desde la copia de seguridad de Time Machine.

8 Comments

  1. erretxea

    Duda: He abierto la carpeta ~/Library/Mail/V2/MailData/ y encuentro tres «Envelope»: Envelope Index, …Index-shm e …Index-wal (25 Mb, 33 Kb y 2,3 Mb respectivamente, los tres modificados prácticamente a la vez, hoy). ¿De cuál hago la copia de seguridad? ¿Cambia esto en algo el comando de Terminal?

    Gracias.

  2. Alberto Lozano

    Yo guardo todos los mensajes en [url=http://www.mailsteward.com/]Mailsteward[/url] y en Mail sólo tengo el último mes. Tengo Mailsteward configurado para que descargue de la BD de Mail el nuevo correo automáticamente cada mes.
    Nunca he tenido problema alguno y ya tengo cerca de 100.000 mensajes guardados en Mailsteward.

  3. juandesant

    #4 yo tengo Mail yendo como un tiro en un SSD Crucial m4 de 500GB… con 229.088 mensajes, ocupando 15GB… Por ahora no me preocupo de migrarlo a ninguna parte 😉 Eso sí, lo del [b]vacuum[/b] hay que hacerlo si has borrado muchos mensajes, mientras tanto no es necesario. Y si acabas de importar (o re-importar) el correo a Mail, no sirve de nada.

    ps. De hecho, ahora tengo menos estructura de carpetas que antes…

    pps. Un truco parecido se puede usar para saber:

    a) cuántos mensajes tienes:

    [quote]sqlite3 ~/Library/Mail/V2/MailData/Envelope Index ‘select count(*) from messages’;[/quote]

    b) cuántos asuntos distintos has utilizado:

    [quote]sqlite3 ~/Library/Mail/V2/MailData/Envelope Index ‘select count(*) from subjects’;[/quote]

  4. Alberto Lozano

    #7
    Yo comencé con Mailsteward gratis, luego me pasé al de pago cuando alcancé el límite de mensajes para la versión gratuita y posteriormente me actualicé a la versión Pro de modo que almaceno mis mensajes en una base MySql alojada en mi servidor que a su vez está en un datacenter en Canadá donde se hacen copias de seguridad Idera (se guardan los últimos 10 días de una forma muy similar a Timemachine) en un servidor de backups situado en otra ubicación física.
    De esta manera me aseguro la seguridad segura 🙂
    …Aunque no sé de que sirve guardar todo ese email, quizás a otras personas que andan presentando emails ante el juez, pero no es mi caso ni tengo millones en Suiza.
    En cualquier caso no deja de ser divertido por aquello de explorar las posibilidades de las IT.

Deja una respuesta