Como resolver problema de collation incorreta no MySQL
Olá, querido(a) cliente da GeHost! 😊
Se você está lendo este guia, provavelmente encontrou um erro relacionado à collation no seu banco de dados MySQL — algo como "Collation 'utf8mb4_unicode_ci' is not valid for the character set 'utf8mb4'" ou "Unknown collation: utf8mb4_unicode_ci". Não se preocupe! Esse é um problema comum, mas fácil de resolver. Vou te guiar passo a passo, como um verdadeiro Sensei da hospedagem. 💫
O que é collation?
Collation é uma regra que define como os caracteres são comparados e ordenados no banco de dados. Por exemplo, se você tem letras acentuadas como "á", "ç" ou "ñ", a collation diz como elas devem ser tratadas — se são iguais a suas versões sem acento, ou se são consideradas diferentes.
Dica do Sensei: A collation padrão recomendada para sites modernos é
utf8mb4_unicode_ci, pois suporta todos os caracteres, incluindo emojis! 😄
Por que esse erro acontece?
Esse erro geralmente ocorre quando:
- O banco de dados foi criado com uma collation antiga, como
utf8_general_cioulatin1_swedish_ci. - O sistema ou script tenta usar uma collation que não está disponível ou foi mal configurada.
- Alguns aplicativos (como WordPress, Laravel, etc.) exigem collation específica.
Passo a passo: Como corrigir a collation no MySQL
Entre no cPanel da sua conta. Você pode acessar pelo link:
seusite.com/cpanel(ouseusite.com:2083).
Na tela principal do cPanel (home), localize o grupo Bancos de Dados e clique em Bancos de Dados MySQL.
Na tela de gerenciamento de bancos de dados, localize o banco que está com o problema. Ele aparecerá na lista com o nome e um botão Modificar.
Clique em Modificar ao lado do banco problemático.
Na janela que abrir, você verá um campo chamado Collation. Altere-o para
utf8mb4_unicode_ci.Se não aparecer essa opção, selecione
utf8mb4_general_cicomo alternativa (menos precisa, mas funcional).Clique em Alterar para salvar a nova collation.
Se o sistema não permitir a alteração (por exemplo, se o banco já tem tabelas com collation diferente), o sistema avisará. Nesse caso, siga o próximo passo.
Se o banco já tem tabelas, você precisará alterar a collation de cada tabela individualmente. Para isso:
- Na mesma tela de gerenciamento de bancos, clique em phpMyAdmin (geralmente no canto superior direito).
- Na tela do phpMyAdmin, selecione o banco de dados no painel da esquerda.
- Clique na aba Opções (ou Índices, dependendo da versão).
- Na seção Collation, escolha
utf8mb4_unicode_ci. - Clique em Alterar para aplicar à tabela.
Se ainda houver erros, verifique se o charset do banco está definido como
utf8mb4(nãoutf8).Para isso, no phpMyAdmin, vá em Propriedades do Banco e confira se o charset é
utf8mb4.Por fim, teste seu site ou aplicativo. O erro de collation deve ter desaparecido!
Sensei diz: Se o problema persistir, verifique o arquivo de configuração do seu aplicativo (como
wp-config.phpoudatabase.php) e certifique-se de que está definindo a collation correta. Às vezes, o erro vem do código, não do banco.
Prevenção: Evite problemas no futuro
Para não passar por isso de novo:
- Crie novos bancos com
utf8mb4_unicode_cidesde o início. - Use ferramentas como phpMyAdmin ou o painel do cPanel para verificar a collation antes de importar dados.
- Se usar WordPress, Laravel ou outro sistema, verifique a documentação sobre collation recomendada.
Se ainda tiver dúvidas, não hesite em entrar em contato com nosso suporte — estamos aqui para te ajudar, sempre! 🤝
Com carinho,
Sensei da GeHost 🌟