Solucionador de problemas de almacenamiento de bases de datos en Adobe Commerce

Este artículo proporciona una guía de solución de problemas paso a paso para diagnosticar y resolver problemas de almacenamiento de bases de datos en Adobe Commerce. Ayuda a identificar las causas raíz relacionadas con la falta de espacio en /tmp y /data/mysql, el agotamiento de los nodos y los cambios de configuración, como el tmpdir MySQL no predeterminado. Cada paso presenta una pregunta de diagnóstico y le dirige a los comandos, registros o documentación relevantes basados en su respuesta.

Descripción description

Entorno

Adobe Commerce en la infraestructura en la nube

Problema/Síntomas

  • Interrupción del sitio o tiempo de inactividad causado por problemas de almacenamiento de la base de datos
  • Errores como No queda espacio en el dispositivo (28)
  • No se puede SSH en un nodo debido a un montaje completo de /tmp
  • Uso de disco alto en /tmp o /data/mysql directorios
  • Los clientes no pueden agregar productos al carro de compras
  • Errores de conexión a base de datos
  • Errores de clúster de Galera como SQLSTATE[ 08S01] : Error de vínculo de comunicación: 1047 WSREP
  • Consultas que agotan el almacenamiento disponible y causan bloqueos de nodos
  • Agotamiento del nodo (demasiados archivos) indicado por IUse% > 90%

Resolución resolution

Paso 1: Identificación del directorio con un problema de espacio

¿Tiene un problema de /tmp debido a la falta de espacio?

Esto puede estar indicado por una serie de síntomas que incluyen:

  • /tmp montaje lleno
  • Sitio inactivo o interrumpido
  • No se puede SSH en un nodo
  • Errores como No queda espacio en el dispositivo (28)

Para obtener una lista de errores resultantes de que /tmp esté lleno, revise /tmp mount full.

¿O tiene un problema de /data/mysql debido a la falta de espacio? Los síntomas incluyen:

  • Interrupción del sitio
  • Los clientes no pueden agregar productos al carro de compras
  • Error de conexión a base de datos
  • Errores de Galera como SQLSTATE[ 08S01] : Error de vínculo de comunicación: 1047 WSREP

Para obtener una lista de errores resultantes de un espacio en disco MySQL bajo, consulte Espacio en disco MySQL bajo en Adobe Commerce en la infraestructura en la nube.

Si no está seguro de tener un problema de espacio en disco y tiene una cuenta de New Relic, vaya a la página Hosts de supervisión de infraestructura de New Relic. A partir de ahí:

  • Haga clic en la ficha Almacenamiento
  • Cambiar el menú desplegable Gráfico que muestra de 5 a 20 resultados
  • Busque en la tabla un uso de disco alto en el gráfico % de disco usado o en la tabla

Para ver los pasos más detallados, consulte Supervisión de la infraestructura de New Relic > pestaña de almacenamiento.

Si tiene alguno de los síntomas descritos anteriormente, compruebe el estado de sus inodes para asegurarse de que esto no se debe a un problema con el número de archivo. Ejecute en CLI/Terminal:

code language-none
df -ih

¿Es IUse% > 90%?

A continuación, continúe con el paso 3.

Paso 2: Comprobación del espacio en disco

Comprobar el uso del espacio en disco?

Después de reducir el número de archivos, ejecute el siguiente comando en CLI/Terminal para comprobar el uso del espacio en disco en /tmp y /data/mysql.

code language-none
df -h | grep mysql
df -h | grep tmp

¿Se utiliza más del 70% para /tmp o /data/mysql?

  • - Continúe con el paso 3.

  • NO: es posible que las consultas agoten el almacenamiento disponible. Esto podría bloquear el nodo, desactivando la consulta y eliminando los tmp archivos. Inicie sesión en el cliente de línea de comandos de MySQL y ejecute:

    code language-none
    SHOW PROCESSLIST;
    

Examine el resultado para ver si hay consultas problemáticas. Si no se resuelve, envíe un vale de soporte técnico solicitando más espacio.

Paso 3: Identificar el directorio con un uso elevado

¿Qué directorio ha usado más del 70%?
  • /tmp - Continúe con el paso 4.
  • /data/mysql - Continúe con el paso 5.

Nota: De forma predeterminada, el tmpdir de la base de datos escribe en /tmp. Para comprobar la configuración de la base de datos, inicie sesión en el cliente de línea de comandos MySQL y ejecute:

code language-none
SHOW VARIABLES LIKE "TMPDIR";

Si tmpdir sigue escribiendo en /tmp, verá /tmp en la columna Valor.

Paso 4: Solución de problemas del montaje /tmp completo

Solucionar problemas del montaje /tmp completo

Seguir resolución de problemas /tmp montaje completo para Adobe Commerce. Después de aplicar las soluciones, ejecute en la CLI/terminal:

code language-none
df -h | grep mysql
df -h | grep tmp

¿Es el 70% el uso de <?

Nota: Las soluciones de Solucionar problemas de /tmp mount full están diseñadas para comerciantes que no han cambiado las variables de la base de datos tmpdir, que de forma predeterminada escribe en /tmp. Si ha cambiado el valor tmpdir, las instrucciones de Solucionar problemas de /tmp mount full no ayudarán.

Paso 5: Comprobación del valor predeterminado

Comprobar predeterminado

Es posible que la configuración de la base de datos ya no sea la predeterminada original. Busque la configuración tmpdir de la base de datos ejecutando en el cliente de línea de comandos MySQL: SELECT @@DATADIR;

Si se produce /data/mysql/, tmpdir está escribiendo en /data/mysql/. Aumente el espacio siguiendo los pasos indicados en MySQL disk space is low on Adobe Commerce on cloud Infrastructure. A continuación, ejecute en CLI/Terminal:

code language-none
df -h | grep mysql
df -h | grep tmp

¿Es el 70% el uso de <?

Lectura relacionada

Prácticas recomendadas para modificar tablas de base de datos en el libro de estrategias de implementación de Commerce.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f