Solução de problemas de armazenamento de banco de dados no Adobe Commerce

Este artigo fornece um guia de solução de problemas passo a passo para diagnosticar e resolver problemas de armazenamento de banco de dados no Adobe Commerce. Ele ajuda a identificar as causas raiz relacionadas à falta de espaço em /tmp e /data/mysql, esgotamento do inode e alterações de configuração, como tmpdir MySQL não padrão. Cada etapa apresenta uma pergunta de diagnóstico e o direciona para comandos, registros ou documentação relevantes com base na sua resposta.

Descrição description

Ambiente

Adobe Commerce na infraestrutura em nuvem

Problema/Sintomas

  • Paralisação do site ou tempo de inatividade causado por problemas de armazenamento do banco de dados
  • Erros como Não há mais espaço no dispositivo (28)
  • Não é possível SSH em um nó devido à montagem completa de /tmp
  • Alto uso do disco em /tmp ou /data/mysql diretórios
  • Os clientes não conseguem adicionar produtos ao carrinho
  • Falhas de conexão com o banco de dados
  • Erros de cluster Galera como SQLSTATE[ 08S01] : Falha de link de comunicação: 1047 WSREP
  • Consultas que esgotam o armazenamento disponível e causam falhas no nó
  • Exaustão de nós (muitos arquivos) indicada por IUse% > 90%

Resolução resolution

Etapa 1 - Identificar o diretório com um problema de espaço

Você tem um problema de /tmp causado por falta de espaço?

Isso pode ser indicado por uma variedade de sintomas, incluindo:

  • /tmp montagem está cheia
  • Site inativo ou paralisado
  • Não é possível aplicar SSH a um nó
  • Erros como Não há mais espaço no dispositivo (28)

Para obter uma lista de erros resultantes de /tmp estar cheio, consulte /tmp mount full.

Ou você tem um problema /data/mysql causado por falta de espaço? Os sintomas incluem:

  • Interrupção do site
  • Os clientes não conseguem adicionar produtos ao carrinho
  • Falha na conexão com o banco de dados
  • Erros de galeria como SQLSTATE[ 08S01] : Falha no link de comunicação: 1047 WSREP

Para obter uma lista de erros resultantes de pouco espaço em disco no MySQL, consulte Pouco espaço em disco no MySQL na infraestrutura de nuvem do Adobe Commerce.

Se você não tiver certeza se tem um problema de espaço em disco e se tem uma conta do New Relic, vá para a página Hosts de monitoramento do New Relic Infrastructure. A partir daí:

  • Clique na guia Armazenamento
  • Altere a lista suspensa Exibições de Gráfico de 5 para 20 resultados
  • Examine a tabela para alto uso do disco no gráfico ou tabela % de Disco Usado

Para obter etapas mais detalhadas, consulte a guia Armazenamento do New Relic Infrastructure Monitoring >.

Se você tiver algum dos sintomas descritos acima, verifique o estado dos inodes para ter certeza de que isso não está sendo causado por um problema de número de arquivo. Executar na CLI/Terminal:

code language-none
df -ih

IUse% > 90%?

Em seguida, prossiga para a Etapa 3.

Etapa 2 - Verificar o espaço em disco

Verificar uso do espaço em disco?

Depois de reduzir o número de arquivos, execute o seguinte comando no CLI/Terminal para verificar o uso do espaço em disco em /tmp e /data/mysql.

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

Mais de 70% é usado para /tmp ou /data/mysql?

  • SIM - Continue na Etapa 3.

  • NÃO - As consultas podem estar esgotando o armazenamento disponível. Isso pode travar o nó, matando a consulta e removendo os arquivos tmp. Faça logon no cliente de linha de comando MySQL e execute:

    code language-none
    SHOW PROCESSLIST;
    

Examine a saída de consultas problemáticas. Se não for resolvido, envie um tíquete de suporte solicitando mais espaço.

Etapa 3 - Identificar diretório com alto uso

Qual diretório tem mais de 70% de uso?
  • /tmp - Continue com a Etapa 4.
  • /data/mysql - Continue com a Etapa 5.

Observação: por padrão, tmpdir do banco de dados grava em /tmp. Para verificar a configuração do banco de dados, faça logon no cliente de linha de comando MySQL e execute:

code language-none
SHOW VARIABLES LIKE "TMPDIR";

Se tmpdir ainda estiver gravando em /tmp, você verá /tmp na coluna Valor.

Etapa 4 - Solução de problemas /tmp mount full

Solução de problemas /tmp mount full

Siga Solução de problemas /tmp montagem completa para o Adobe Commerce. Após aplicar as soluções, execute na CLI/Terminal:

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

O uso é < 70%?

Observação: as soluções em Solução de problemas /tmp mount full foram criadas para comerciantes que não alteraram as variáveis para tmpdir de banco de dados, que por padrão grava em /tmp. Se você alterou o valor tmpdir, as instruções em Solução de problemas /tmp mount full não ajudarão.

Etapa 5 - Verificar padrão

Verificar padrão

A configuração do banco de dados pode não estar mais no padrão original. Localize a configuração tmpdir do banco de dados executando no cliente da linha de comando MySQL: SELECT @@DATADIR;

Se /data/mysql/ for emitido, tmpdir está gravando em /data/mysql/. Aumente o espaço seguindo as etapas no Pouco espaço em disco do MySQL na infraestrutura de nuvem do Adobe Commerce. Em seguida, execute no CLI/Terminal:

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

O uso é < 70%?

Leitura relacionada

Práticas recomendadas para modificar tabelas de banco de dados no Manual de implementação do Commerce.

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