Consejos para MySQL 5.7 Ajuste de la base de datos y el rendimiento

Si bien no existe una bala mágica para ajustar la base de datos MySQL 5.7, hay algunas áreas en las que se puede enfocar para comenzar y que pueden mejorar drásticamente el rendimiento de su instalación de MySQL. Si bien se ha publicado mucha información sobre este tema a lo largo de los años, quería desglosar algunos de los parámetros más críticos que cualquiera puede implementar, sin suposiciones necesarias.

Dependiendo de la versión de MySQL que esté ejecutando, algunos de los valores predeterminados utilizados en esta publicación pueden diferir de su instalación, pero la premisa sigue siendo en gran medida la misma. Veamos MySQL 5.7 para los propósitos de este artículo.

El ajuste inicial del rendimiento de MySQL se puede dividir en las siguientes categorías:

  • Tuning para su hardware
  • Ajuste para el mejor rendimiento/mejores prácticas
  • Adaptación a su carga de trabajo

Ajuste de la base de datos MySQL 5.7

Ajuste para su hardware

Según el hardware en el que haya instalado MySQL, será necesario configurar algunas variables según las especificaciones de la máquina (o VM). Las siguientes variables dependen en gran medida de su hardware:

innodb_buffer_pool_size

  • En general, ajústelo al 50% – 70% de su RAM total como punto de partida.
  • No debe establecerse más grande que el tamaño total de la base de datos.

innodb_log_file_size

  • Esto generalmente se establece entre 128M – 2G.
  • No debe ser más grande que el grupo de búfer.

innodb_flush_log_at_trx_commit

  • Establecerlo en «1» (predeterminado en 5.7) brinda la mayor durabilidad.
  • El ajuste a «0» o «2» dará más rendimiento pero menos durabilidad.

innodb_flush_método

  • Establecer esto en O_DIRECT evitará la penalización de rendimiento de doble búfer.

Ajuste para el mejor rendimiento/mejores prácticas

innodb_file_per_table

  • Establecer esto en «ON» genera un espacio de tabla InnoDB independiente para cada tabla en la base de datos.

innodb_stats_on_metadata

  • Establecer esto en «APAGADO» evita actualizaciones innecesarias de las estadísticas de InnoDB y puede mejorar en gran medida la velocidad de lectura.

innodb_buffer_pool_instances

  • Una buena práctica es establecer esto en «8» a menos que el tamaño del grupo de búfer sea <1G, en cuyo caso se establece en "1".

tipo_caché_consulta & tamaño_caché_consulta

  • Establecer estos dos en «0» deshabilitará completamente el caché de consultas.

Sintonice su carga de trabajo

Para sintonizar más, se necesitará más información. La mejor manera de recopilar esta información es instalar una herramienta de monitoreo/gráficos de MySQL como Percona Monitoring and Management (PMM). Una vez que haya instalado una herramienta, podemos sumergirnos en métricas individuales y comenzar a personalizar según los datos.

Recomendaría comenzar con una de las variables más impactantes: la innodb_buffer_pool_size. Compare la RAM y la cantidad de páginas libres en su instancia con el tamaño del grupo de búfer total. En función de estas métricas, puede determinar si necesita aumentar o disminuir su parámetro de tamaño de grupo de búfer general.

sintonizando la base de datos mysql

A continuación, eche un vistazo a sus métricas para usar el archivo de registro de InnoDB. La regla general es que sus archivos de registro deben contener aproximadamente una hora de datos. Si ve que los datos escritos en los archivos de registro cada hora exceden el tamaño total de los archivos de registro, querrá aumentar el innodb_log_file_size variable y reinicia MySQL. También puede verificar con «MOSTRAR ESTADO DEL MOTOR INNODB;» a través de MySQL CLI para ayudar a calcular un buen tamaño de archivo de registro de InnoDB.

afinando mysql

En breve

Si bien este no es un artículo completo sobre cómo ajustar la base de datos MySQL 5.7, los consejos anteriores deberían eliminar algunas de las molestias y acercar su sistema a una configuración ideal. Al igual que con todos los acuerdos de bases de datos, su proceso debe ser continuo basado en la información actual.

  • Examine los parámetros propuestos anteriormente e impleméntelos si tienen sentido para su entorno/carga de trabajo.
  • Instale una buena herramienta de monitoreo para dar una idea de la base de datos (Percona Monitoring and Management es nuestra sugerencia).
  • Esté atento a sus gráficos de monitoreo para determinar otras áreas en las que puede necesitar sintonizar.

Author: Ing. Luis

A lo largo de conocer Windows y otros sistemas operativos me eh encontrado con diversos tipos de error, ahora brindo soluciones según mi experiencia-

Deja un comentario