MySQL: Resolução de Problemas

Problemas comuns e soluções para MySQL

👋 Bem-vindo à documentação da Stackhero!

A Stackhero disponibiliza um serviço MySQL cloud totalmente gerido, que simplifica o deployment e a gestão para workloads de produção:

  • Ligações e transferências de dados ilimitadas.
  • Interface web phpMyAdmin integrada para uma gestão fácil da base de dados.
  • Atualizações sem complicações, com upgrades em apenas um clique.
  • Desempenho consistente e segurança reforçada numa infraestrutura privada e dedicada.

Com a Stackhero, pode ter uma base de dados MySQL fiável pronta em poucos minutos. Poupe tempo na configuração e manutenção, e dedique-se ao desenvolvimento das suas aplicações. Experimente hoje mesmo o MySQL cloud hosting na Stackhero.

Se encontrar timeouts ao usar o phpMyAdmin, pode ser devido ao manuseio de uma quantidade substancial de dados. Como o phpMyAdmin opera em PHP, pode ter dificuldades com pedidos longos ou exportações de dados volumosos. Para gerir consultas mais complexas, pode considerar usar a interface de linha de comandos do MySQL ou um cliente não baseado na web.

O MySQL 8 utiliza por padrão o sistema de autenticação caching_sha2_password. Ao trabalhar com bibliotecas cliente mais antigas, pode encontrar o erro: "Authentication plugin 'caching_sha2_password' cannot be loaded". Para resolver isto, pode modificar o método de autenticação padrão para usar a senha nativa do MySQL.

No seu painel de controlo Stackhero, navegue até à secção de configuração do MySQL e selecione "MySQL native password" como o plugin de autenticação. Esta configuração afeta o utilizador root e quaisquer novos utilizadores criados.

Para utilizadores existentes (excluindo o utilizador root), pode executar os seguintes comandos usando a interface de linha de comandos do MySQL ou phpMyAdmin:

USE mysql;
ALTER USER '<userToUpdate>'@'%' IDENTIFIED WITH mysql_native_password BY '<userPassword>';
FLUSH PRIVILEGES;

Se encontrar o erro "ERROR 2026 (HY000): SSL connection error: unknown error number", isso geralmente indica que o seu cliente não suporta versões modernas de TLS. As instâncias MySQL da Stackhero estão configuradas para suportar apenas protocolos e cifras TLS atualizados para uma segurança reforçada.

Este erro pode ocorrer se o seu cliente tentar usar TLS v1.1, que está obsoleto e não é suportado pelas versões modernas de MySQL e MariaDB. Para resolver este problema, pode ser necessário atualizar o seu cliente MySQL para uma versão que suporte os protocolos TLS mais recentes.

Se acidentalmente modificar permissões, alterar a senha ou eliminar o utilizador "root", pode reiniciar a sua instância MySQL. Isso recriará automaticamente o utilizador root com a senha e permissões corretas.

Quando os dados são eliminados de uma tabela MySQL, o espaço em disco que ocupavam não é imediatamente recuperado. Para recuperar este espaço, pode executar o seguinte comando:

OPTIMIZE TABLE <table>;

Este processo cria uma tabela temporária, transfere os dados para ela e depois substitui a tabela original. Durante o processo de otimização, a tabela será bloqueada e temporariamente indisponível. A duração deste bloqueio e o tempo total necessário dependem do tamanho da tabela. Como esta operação é intensiva em recursos, é aconselhável agendá-la durante períodos de baixa atividade do servidor para minimizar qualquer impacto no desempenho e disponibilidade.