Saltar al contenido

Parámetros básicos para configurar MySQL 5.6.10

MySQL

Una vez instalado el servidor MySQL 5.6.10 y comprobado que funciona, no está mal del todo cofigurar el mismo para las necesidades que tenemos. En mi caso, es un servidor local, que como mucho tendrá unas 15 bases de datos, y sobre 20 Gigas de tamaño en total.

NOTA: Esta entrada también es válida para el servidor de bases de datos MariaDB.

Modificando la configuración en My.ini

Se trata de abrir my.ini con un editor de texto y modificar algunos parámetros.

En el apartado de cliente [client] es fundamental indicar el puerto de conexión. Por defecto es el 3306, pero puede ser otro.

[client]
no-beep

# pipe
# socket=mysql
port=3306

En el apartado de [Mysql], es muy importante decirle el juego de caracteres, que casi por obligación debe ser UTF-8:

[mysql]

default-character-set=utf8

El último apartado es [mysqld], y aquí se configuran muchas variables que afectan al rendimiento de nuestro servidor. Los parámetros principales a configurar es el puerto, que debe ser el mismo que el de cliente, el directorio donde está instalado MySQL 5.6.10, el directorio de datos, el juego de caracteres por defecto y el motor de almacenamiento por defecto. Otro parámetro importantes es el directorio temporal, tmpdir, o seam el lugar donde va guardando los ficheros temporales que va necesitando.

[mysqld]
# The TCP/IP Port the MySQL Server will listen on
port=3306

# Path to installation directory. All paths are usually resolved relative to this.
basedir=”C:\Archivos de programa\MySQL\MySQL Server 5.6\”

# Path to the database root
datadir=”C:\Documents and Settings\All Users\Datos de programa\MySQL\MySQL Server 5.6\data\”
character-set-server=utf8

default-storage-engine=INNODB

Los ficheros de logs

Otra de las características más importantes del fichero de configuración, y creo que bastante necesarios, son las configuraciones de los logs. En nuestro caso, escribimos los logs en un fichero, tanto el log general, como el de las consultas lentas, que queda establecido en 10 segundos según el valor de long_query_time.

# General and Slow logging.
log-output=FILE
general-log=1
general_log_file=”ruta/error.log”
slow-query-log=1
slow_query_log_file=”ruta/server-slow.log”
long_query_time=10

# Binary Logging.
log-bin=”ruta/server-bin”

# Error Logging.
log-error=”ruta/server_error.log”

Por último, y para completar esta configuración básica, nos centramos en 5 parámetros más:

  • innodb_buffer_pool_size, es la cantidad de espacio colchón para los datos e índices que usa InnoDB.
  • innodb_log_file_size, para el tamaño del fichero log del motor InnoDb
  • innodb_file_per_table, si queremos configurar un fichero InnoDB para cada tabla. Desde MySQL 5.6.6 es la opción por defecto, y es lo más deseable si vamos a usar tablas muy grandes.
  • query_cache_type = 0
  • query_cache_size = 0

Los 3 primeros afectan al motor InnoDB, mientras que los 2 últimos se centran en configuración de la cache para las consultas, en nuestro caso, se han configurado para no ser usadas.

Adicionalmente, es interesante terner activada la característica innodb_flush_log_at_trx_commit = 1 y sync_binlog = 1.

Y con esto, tenemos un fichero de configuración para el servidor MySQL listo para empezar!

Un saludo, y espero os sirva.

Manejando Datos Newsletter

Noticias, entradas, eventos, cursos, … News, entrances, events, courses, …


Gracias por unirte a la newsletter. Thanks for joining the newsletter.