15 Consejos útiles de rendimiento y optimización de MySQL/MariadB

15 Consejos útiles de rendimiento y optimización de MySQL/MariadB

Mysql es un poderoso código abierto Sistema de gestión de bases de datos relacionales o en resumen RDBMS. Fue lanzado en 1995 (20 años). Usa lenguaje de consulta estructurado que es probablemente la opción más popular para administrar contenido dentro de una base de datos. La última versión de MySQL es 5.6.25 y fue lanzado en 29 de mayo de 2015.

Un hecho interesante sobre MySQL es el hecho de que el nombre proviene Michael Widenio (Creadora de MySQL) Hija Mi. Incluso Aunque hay muchos datos interesantes sobre MySQL, este artículo está destinado a mostrarle algunas prácticas útiles para ayudarlo a administrar su servidor MySQL.

Mysql Tuning de rendimiento

En abril 2009 Oracle compró el proyecto mysql. Como resultado, llamó a una bifurcación comunitaria de MySQL Mariada fue creado. La razón principal para crear la bifurcación era mantener el proyecto gratuito bajo la licencia pública general.

Hoy Mysql y Mariada son uno de los RDBM de uso más (si no más) utilizado para aplicaciones web como WordPress, Joomla, Magento y otros.

Este artículo le mostrará algunos consejos básicos pero útiles sobre cómo optimizar la melodía del rendimiento de MySQL/Mariadb. Tenga en cuenta que este artículo supone que ya tiene instalado MySQL o MariadB. Si todavía se pregunta cómo instalarlos en su sistema, puede seguir nuestras extensas guías aquí:

  1. Instalación de la lámpara en Rhel/Centos 7
  2. Instalación de la lámpara en Fedora 22
  3. Configuración de la lámpara en Ubuntu 15.04
  4. Instalación de mariadb en Debian 8
  5. Instale Mariadb en Gentoo Linux
  6. Instale MariadB en Arch Linux

Importante: Antes de comenzar, no acepte estas sugerencias a ciegas. Cada configuración de MySQL es única y requiere un pensamiento adicional, antes de hacer cualquier cambio.

Cosas que necesitas saber:

  1. El archivo de configuración de MySQL/Mariadb se encuentra en /etc/mi.CNF. Cada vez que modifique este archivo, deberá reiniciar el servicio MySQL para que los nuevos cambios puedan entrar en vigencia.
  2. Por escribir este artículo versión mysql 5.6 se ha utilizado como plantilla.

1. Habilitar el archivo innoDB por mesa

Primero es importante explicar que InnoDB es un motor de almacenamiento. Mysql y mariadb usan innodb como motor de almacenamiento predeterminado. En el pasado, MySQL se usa para mantener tablas e índices de bases de datos en un espacio de tabla del sistema. Este enfoque estaba destinado a servidores que el único propósito es el procesamiento de la base de datos y su disco de almacenamiento no se utiliza para ningún otro propósito.

El innodb proporciona un enfoque más flexible y cada información de la base de datos se mantiene en un .IBD archivo de datos. Cada .IBD El archivo representa un espacio de tabla propio. De esa manera, las operaciones de la base de datos como "TRUNCAR"Se puede completar más rápido y también puede reclamar espacio no utilizado al soltar o truncar una mesa de la base de datos.

Otro beneficio de esta configuración es el hecho de que puede mantener algunas de las tablas de bases de datos en un dispositivo de almacenamiento separado. Esto puede mejorar enormemente el E/S Carga en tus discos.

El innodb_file_per_table está habilitado de forma predeterminada en mysql 5.6 y más. Puedes ver eso en /etc/mi.CNF archivo. La directiva se ve así:

innodb_file_per_table = 1 

2. Almacene los datos de la base de datos MySQL en una partición separada

Nota: Esta configuración solo funciona con mysql, pero no con mariadb.

A veces, las lecturas/escrituras del sistema operativo pueden ralentizar el rendimiento de su servidor MySQL, especialmente si se encuentra en el mismo disco duro. En su lugar, recomendaría usar un disco duro separado (preferiblemente SSD) para el servicio MySQL.

Para completar esto, deberá adjuntar la nueva unidad a su computadora/servidor. Para el propósito de este artículo, asumiré que la unidad estará debajo /dev/sdb.

El siguiente paso es preparar la nueva unidad:

# fdisk /dev /sdb 

Ahora presiona "norte"Para crear una nueva partición. Siguiente presión "pag"Para hacer la nueva partición primaria. Después de eso, establezca el número de partición desde 1-4. Después de eso, seleccionará el tamaño de la partición. Presione Entrar aquí. En el siguiente paso deberá configurar el tamaño de la partición.

Si desea usar todo el disco, presione Entrar una vez más. De lo contrario, puede establecer manualmente el tamaño de la nueva partición. Cuando listo presione "w"Para escribir los cambios. Ahora necesitaremos crear un sistema de archivos para nuestra nueva partición. Esto se puede hacer fácilmente con:

# MKFS.ext4 /dev /sdb1 

Ahora montaremos nuestra nueva partición en una carpeta. He nombrado mi carpeta "SSD"Y creado en el directorio raíz:

# mkdir /ssd / 

Estamos listos para montar la nueva partición que acabamos de hacer en la nueva carpeta:

# MONTO /DEV /SDB1 /SSD / 

Puede realizar el montaje en el inicio agregando la siguiente línea en /etc/fstab archivo.

/dev /sdb1 /ssd ext3 predeterminados 0 0 0 

Ahora estás listo para mover mysql al nuevo disco. Primero detenga el servicio MySQL con:

# Servicio MySqld Stop 

También le recomendaría que detenga Apache/Nginx para evitar cualquier intento de escribir en las bases de datos:

# Servicio Httpd Stop # Servicio Nginx Stop 

Ahora copie todo el directorio MySQL en la nueva unidad:

# cp/var/lib/mysql/ssd/-rp 

Esto puede llevar un tiempo dependiendo del sitio de sus bases de datos MySQL. Una vez que este proceso esté completo, cambie el nombre del directorio MySQL:

# mv/var/lib/mysql/var/lib/mysql-backup 

A continuación, crearemos un enlace simbólico.

# ln -s/ssd/mysql/var/lib/mysql 

Ahora está listo para iniciar su servicio web MySQL y Web:

# Servicio MySqld Inicio # Servicio Httpd Inicio # Servicio Nginx Inicio 

En este punto, se accederá a sus bases de datos MySQL desde la nueva unidad.

Páginas: 1 2 3 4