Ajuste del rendimiento de Mariadb
A veces los valores predeterminados que vienen con un producto son exactamente lo que usted quiere. Otras veces no lo son y hay que hacer algunos cambios. Cuando se trata de MySQL, probablemente te irá bien si nunca cambias nada, pero probablemente puedes hacerlo mejor que los valores predeterminados con algunos ajustes.
La semana pasada empecé a hablar de MySQL como parte de una serie más amplia sobre el rendimiento de los sitios web dinámicos. Hablé de los diferentes esquemas utilizados por MySQL y mencioné brevemente por qué podría querer desactivar las búsquedas de DNS de MySQL y la variable de configuración para hacerlo. Mencioné que tendría más que decir sobre la configuración de MySQL.
Hoy quiero compartir algunas ideas sobre la configuración de MySQL y guiarte a través de un puñado de las muchas variables que puedes cambiar de sus valores predeterminados. También te indicaré algunos recursos para obtener más información sobre otras variables que no menciono aquí.
Antes de empezar, permítame decir que no es probable que vea un gran impacto en el rendimiento a través de la modificación de las variables de configuración de MySQL, ciertamente no cuando se compara con otras cosas que podría ajustar. Al mismo tiempo, es probable que algunos de los valores de configuración por defecto no sean lo que usted quiere y un poco de optimización vale la pena su tiempo.
Ejemplo de My.cnf
MySQL 8.0 tiene una característica para configurar adaptativamente los parámetros de InnoDB, se recomienda utilizar este método para averiguar una configuración que se ajuste al rendimiento del sistema existente. Para dejar que MySQL configure automáticamente las variables de InnoDB, establezca el parámetro innodb_dedicated_server = ON. Se configurarán las siguientes variables:
Los valores que se indican a continuación deben ajustarse en función de la memoria física (RAM) disponible en el servidor MySQL (los valores aquí indicados son ejemplos generales, se aconseja utilizar los valores configurados automáticamente como punto de partida):
Ajuste del rendimiento de Mysql 8
Desgraciadamente esta configuración no funciona a partir de MariaDB 10.6, lo he probado yo mismo el servicio no arranca. Creo que esto también se debe a que algunos archivos han sido divididos en /etc/my.cnf.d/ por alguna razón.
El registro binario está ahora deshabilitado por defecto, “innodb_sort_buffer_size” ha sido aumentado a 4M como un mejor valor por defecto, “default_authentication_plugin” está referenciado (pero comentado por defecto – lea los comentarios allí), nuevos comentarios relacionados con el rendimiento añadidos en la sección de buffers.
@locksmithunit ¿Qué quieres decir? La nube es frecuente. Tengo muchas instancias pequeñas que no tienen muchos carneros. Y prefiero tener una menor cantidad de core pero más fuerte. Si la configuración no es del todo perfecta para ti, puedes editarla, los comentarios están para leerlos 🙂
@locksmithunit Yo no tuve ningún problema con esta configuración. 2vcore y 2Go o más (máximo 32gb) con algunos ajustes. Estoy corriendo al menos cientos de hosts con esta configuración. El uso excesivo es probablemente cierto. Cada sitio web es único.
Mi cnf de alto rendimiento
MySQL es la opción más adecuada de base de datos para aplicaciones web. Es un componente central de la pila de software de aplicaciones web LAMP más utilizada. Después de la instalación de MySQL, la configuración es necesaria. Sin embargo, no es necesario hacer la configuración de MySQL cada vez que se reinicia. Se refiere al archivo de configuración. Con esta configuración, también es importante pensar en el rendimiento del servidor. El rendimiento del servidor es la cosa básica detrás de una aplicación estable. El rendimiento lleva a crear beneficios junto con la productividad. Por lo tanto, es esencial para ajustar la base de datos MySQL para el mejor rendimiento y para extraer las conexiones durmientes.
El archivo de opciones de MySQL puede ser corto o largo. Se basa en el número de configuraciones que uno establece. Las opciones relacionadas con el servidor se almacenan en el directorio $MYSQL-HOME mientras que las configuraciones relacionadas con el usuario se almacenan en el directorio del usuario que contiene el carácter de tilde con la barra. Con Windows, no es necesario buscar en los directorios para encontrar los archivos de opciones para max_connections.