Mysql tunning & Zarafa

linux

Estos dí­as, me ha tocado migrar otro exchange a zarafa. Ha ido todo bien, pero a medida que iba incluyendo buzones y la BBDD se iba haciendo grande (> 15 Gb), el rendimiento caí­a en picado….. al seleccionar emails, tardaba una eternidad y era preocupante.
El servidor, un ML 110 G5, con 5 Gb de ram y un xeon, dedicado solo a correo, deberí­a de ir bien… buscando un poco de info por el amigo google, me dedido a tunear el mysql.
Primero de todo, paramos los servicios:

# /etc/init.d/zarafa-server stop
# /etc/init.d/mysql stop

Una vez parados los servicios, vamos al fichero de configuración /etc/mysql/my.cnf . debajo de la sección [mysqld], insertamos:

innodb_buffer_pool_size = 2048M
innodb_log_file_size = 512M
innodb_log_buffer_size = 32M
max_allowed_packet = 16M
max_connections = 500
innodb_file_per_table

Vamos por partes y leyendo la wiki de zarafa:
innodb_buffer_pool_size: Recomiendan que el tamaño sea el 50% de la ram que tengas, en mi caso 4096 Mb. Esto reduce los accesos a disco para cachearlo en ram.
innodb_log_file_size: es el tamaño de los ficheros de logs. Recomiendan que sea el 25% del tamaño anterior aprox, pero podemos jugar con los valores y medir el rendimiento.
innodb_log_buffer_size = 32M
max_allowed_packet = 16M
max_connections = 500

Los otros tres, recomiendan dejarlo tal cual.
Movemos los ficheros de logs:

#mv /var/lib/mysql/ib_logfile0 /var/lib/mysql/ib_logfile0.bak
#mv /var/lib/mysql/ib_logfile1 /var/lib/mysql/ib_logfile1.bak

Y reiniciamos los servicios:

# /etc/init.d/mysql start
# /etc/init.d/zarafa-server start

and enjoy your server 🙂

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *