CPanel Problema Upstream: MySQL 8.0.38 does not start (Segmentation Fault)

Solução para o problema de falha de segmentação na inicialização do MySQL 8.0.38, incluindo passos para downgrade e prevenção futura.

CPanel Problema Upstream: MySQL 8.0.38 does not start (Segmentation Fault)

Recentemente, MySQL 8.0.38 foi lançado upstream. Após atualizações automáticas, houve vários relatos de que o MySQL não está iniciando, resultando em uma falha de segmentação. Esse problema pode ser especialmente frustrante para administradores de sistemas e desenvolvedores que dependem da estabilidade e confiabilidade do MySQL para suas operações diárias.

Causa do Problema

A causa raiz deste problema foi identificada como um bug upstream, que afeta especificamente a versão 8.0.38 do MySQL. Esse bug provoca uma falha de segmentação ao tentar iniciar o serviço MySQL, impedindo que o banco de dados fique acessível.

Solução Temporária

Servidores Baseados em RHEL:

Para contornar este problema, é recomendável fazer downgrade para a subversão anterior do MySQL 8.0. Para isso, siga os passos abaixo:

yum downgrade mysql-community-*

Para prevenir que a atualização ocorra novamente, você pode bloquear a versão. No entanto, recomendamos remover o bloqueio uma vez que o problema upstream seja resolvido. Consulte o guia de como bloquear versões de pacotes RPM para mais detalhes.

Servidores Ubuntu:

Para servidores Ubuntu, não há um método nativo para fazer downgrade dos pacotes MySQL via comando "apt". Portanto, os pacotes precisam ser downgraded manualmente a partir do arquivo de pacotes do MySQL. Siga os passos abaixo:

  1. Faça login como usuário root e crie um novo diretório "mysqldown" na pasta root; mude para esse diretório:
    mkdir -v /root/mysqldown && cd /root/mysqldown
  2. Baixe o arquivo de pacotes para a versão 8.0.37 do MySQL:
    • Ubuntu 20.04:
      wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_8.0.37-1ubuntu20.04_amd64.deb-bundle.tar
    • Ubuntu 22.04:
      wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_8.0.37-1ubuntu22.04_amd64.deb-bundle.tar
  3. Extraia o arquivo de pacotes:
    • Ubuntu 20.04:
      tar xvf mysql-server_8.0.37-1ubuntu20.04_amd64.deb-bundle.tar
    • Ubuntu 22.04:
      tar xvf mysql-server_8.0.37-1ubuntu22.04_amd64.deb-bundle.tar
  4. Remova os pacotes desnecessários do diretório atual:
    • Ubuntu 20.04:
      rm -rvf ./mysql-community-test-debug_8.0.37-1ubuntu20.04_amd64.deb ./mysql-community-test_8.0.37-1ubuntu20.04_amd64.deb ./mysql-testsuite_8.0.37-1ubuntu20.04_amd64.deb
    • Ubuntu 22.04:
      rm -rvf ./mysql-community-test-debug_8.0.37-1ubuntu22.04_amd64.deb ./mysql-community-test_8.0.37-1ubuntu22.04_amd64.deb ./mysql-testsuite_8.0.37-1ubuntu22.04_amd64.deb
  5. Instale todos os pacotes restantes no diretório atual:
    dpkg -i *mysql*.deb
  6. Confirme que o serviço MySQL está funcionando:
    /scripts/restartsrv_mysql --status
  7. Para evitar que isso ocorra novamente na próxima atualização, bloqueie a versão dos pacotes com o seguinte comando:
    apt-mark hold mysql-client mysql-common mysql-community-client-core mysql-community-client-plugins mysql-community-client mysql-community-server-core mysql-community-server-debug mysql-community-server mysql-server mysql-shell

Prevenção Futura

Para minimizar o impacto de problemas similares no futuro, considere adotar as seguintes práticas:

  • Ambientes de Teste: Sempre teste novas atualizações em um ambiente de staging antes de aplicá-las em produção.
  • Backups Regulares: Mantenha backups regulares e atualizados de seus bancos de dados para que você possa restaurar facilmente se ocorrer um problema.
  • Monitoramento Ativo: Utilize ferramentas de monitoramento para acompanhar a saúde e o desempenho do seu servidor de banco de dados e detectar problemas precocemente.

Conclusão

Embora problemas como esse possam ser desafiadores, a comunidade de usuários e desenvolvedores do MySQL é robusta e proativa. Ao seguir as melhores práticas e manter-se informado sobre as atualizações, é possível mitigar o impacto de bugs críticos e garantir a continuidade das operações do seu banco de dados.

Esse conteúdo foi baseado em informações disponíveis publicamente sobre o problema específico com o MySQL 8.0.38, parafraseado e complementado com recomendações práticas. Para mais detalhes e a última atualização, consulte o artigo original.

Qual é a sua reação?

like

dislike

love

funny

angry

sad

wow