MySQL: Principais mensagens de erro, suas causas e como resolver

MySQL: Principais mensagens de erro, suas causas e como resolver Erros no MySQL

Clique para expandir:

MySQL: Principais mensagens de erro, suas causas e como resolver #Can’t connect to local MySQL server through socket

Causa 1: O servidor MySQL roda separado do servidor WEB, por isso, não utilize o endereço LOCALHOST em seus scripts de conexão, para saber os dados de acesso ao MySQL consulte Informações de acesso ao banco MySQL

Causa 2: A diretiva do PHP safe_mode está habilitada (está On). Neste caso desabilite-a (deixe-a como Off). Veja como desabilitá-la aqui

MySQL: Principais mensagens de erro, suas causas e como resolver #User SeuLogin has exceeded the ‘max_user_connections’ resource (current value: XX)

Para evitar uma sobrecarga, o usuário do MySQL possui um limite de 30 conexões ao servidor nos planos Revenda, Hospedagem Expressa , Hospedagem Profissional (I, II e III), Hospedagem de sites (Basic, Plus, Business e MAX), Hospedagem Para Profissionais Web (Standard, Premium, Ultimate, Ultimate Cloud), antigo Cloud Hosting (Todos) e 70 conexões simultâneas no plano Hospedagem Profissional Premium.
Quando o seu usuário está com todas estas conexões abertas e tenta fazer mais uma conexão é apresentado esse erro.

Para ter seu problema resolvido será preciso encerrar as suas conexões abertas, veja como fazê-las acessando: Como fazer um gerenciamento avançado da sua base MySQL.

Uma boa prática de programação é a de conectar ao banco, executar a query e encerrar a conexão ao banco, mas se seu site possuir uma grande quantidade de visitas e as otimizações não forem o suficiente para resolver seu problema, deve-se analisar a possibilidade de upgrade de plano para um servidor de maior capacidade:

    MySQL: Principais mensagens de erro, suas causas e como resolver #Provider error ‘8000ffff’ Catastrophic failure’

    Para quem utiliza Asp

    • Sugerimos que altere o driver de conexão com o banco de dados para o mais recente MySqlODBC 5.1.

    Para quem utiliza Asp.Net

    As sugestões já estão em uso ?
    Caso estas sugestões já encontrem-se em uso, consulte nosso http://statusblog.locaweb.com.br/ e verifique se existe algum problema de rede(conectividade entre servidores) confirmado. Constatamos que este é um erro genérico do driver de conexão (MySqlODBC), que pode ocorrer devido a problemas de conectividade entre o servidor Web x MySql.

    Quando o problema de rede estiver solucionado, basta reiniciar o pool de aplicativos do seu site conforme descrito no artigo: Como reiniciar seu Site (Pool) . Em caso de dúvidas/dificuldades, crie um chamado no HelpDesk na categoria ‘Windows – Desempenho’ solicitando verificação, no mesmo chamado informe como que a Locaweb pode reproduzir o problema. Dependendo da gravidade, utilize outros meios de contato.

    ATENÇÃO

    Dependendo do nível de critícidade da sua aplicação, sugerimos fortemente que analise a possibilidade de migrar sua base de dados MySql para um servidor MS SQL Server ( recomendado para sites na plataforma Windows).

    MySQL: Principais mensagens de erro, suas causas e como resolver #Unable to connect to any of the specified MySQL hosts

    Esta mensagem de erro pode ocorrer, caso esteja sendo utilizado o endereço (host / ip) incorreto de acesso ao servidor MySql.

    Para resolver esta dificuldade, sugerimos que reveja se os dados de conexão com o banco encontram-se corretamente configurados no seu script ou arquivo de configuração(Web.Config) e efetue novos testes.

    Se estiver tudo correto no seus scripts e o problema continua ocorrendo, consulte nosso http://statusblog.locaweb.com.br/ e verifique se existe algum problema de conectividade(rede) confirmado.
    Constatamos que este erro pode ocorrer devido a problemas de conectividade entre o servidor Web x MySql.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Too many connections

    Ocorre quando o limite máximo de conexão do servidor foi atingido, dificilmente isso ocorrerá por conta do limite de conexão por usuários. Você pode ajudar a evitar este problema seguindo as instruções deste link: Desempenho MYSQL.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Server shutdown in progress
    #Lost connection to server during query

    Quando você executa uma query pesada, ou seja, que demora muito tempo, pode-se deparar com este erro.
    Quando isso ocorre, é preciso otimizar a sua base de dados, como no exemplo contido em: Desempenho MYSQL, ou então, analisar a possibilidade de fazer um upgrade de plano:

    MySQL: Principais mensagens de erro, suas causas e como resolver #Lost connection to MySQL server at ’reading initial communication packet

    Ocorre quando você se conecta ao servidor correto, mas especifica uma porta incorreta. A porta padrão do MySQL é a 3306, ao qual é padrão na Locaweb também.
    Em alguns casos, isso pode ser problema na rede entre o servidor da aplicação e o servidor do banco de dados, portanto em casos como este você também poderá contatar-nos para verificação.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Server has gone away
    #MySQL server has gone away

    Este erro ocorre quando você demora para executar uma query após conectar-se ao servidor MySQL, por questões operacionais e de desempenho, o servidor encerra a conexão ociosa automaticamente.
    Para resolver este erro, programe seu script para conectar-se ao banco, executar a query e encerrar a conexão.
    O tempo de duração de uma conexão ociosa ao servidor é de 15 segundos.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Packet too large
    #MySQL server has gone away

    Ocorre quando se envia uma grande quantidade de dados ao servidor MySQL, que por questões operacionais e de performance, limita esta quantidade a 16 MB.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Illegal mix of collations (collation1,IMPLICIT) and (collation2,IMPLICIT) for operation

    Quando collation1 e collation2 estiverem diferentes você não terá uma consulta com êxito. Para resolver, consulte Sobre collations do MySQL 4.1/5.x e como alterá-los.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Table ‘nome_da_tabela‘ doesn’t exist
    #Can’t find file: ‘nome_da_tabela

    Ocorre quando a tabela especificada na query não existe. Este erro também ocorre se o nome da tabela conter letras maiúsculas ou minúsculas que não forem referenciadas na Query com os mesmos tipos de letras.

    Quem está acostumado com SQL Server e Access sentirá essa diferença, essa é uma característica do MySQL na Locaweb, pois ele está instalado em servidores Linux exclusivos para banco de dados (clientes de hospedagens Windows que utilizam MySQL também possuem suas bases alocadas em servidores Linux), cuja característica é case-sensitive (diferenciar maiúsculas e minúsculas).

    A alteração da configuração do MySQL para Case Insensitive em tabelas implicará na alteração global do servidor, o que pode causar perda de informações para outros clientes, neste caso a aquisição de um plano do tipo Servidores Dedicados será a solução se não houver a possibilidade de corrigir o nome das tabelas em sua aplicação.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Warning: Table ‘nome_da_tabela‘ is marked as crashed and should be repaired query:
    #Can’t open file: tabela.myi
    #Table-Corruption Issues

    Ocorre quando a tabela referenciada está corrompida, você pode resolver este problema com a query:

    REPAIR TABLE sua_tabela;

    Pelo phpMyAdmin você pode clicar em sua base de dados à esquerda, selecionar a(s) tabela(s) a ser(em) reparada(s) e no menu dropdown abaixo Reparar tabelas / Repair tables.

    A reparação excluirá todos os dados inconsistentes.

    O que são dados inconsistentes?

    São registros que estavam sendo inseridos (INSERT), modificados (UPDATE) ou excluídos (DELETE) no momento do corrompimento da tabela.

    Caso não consiga reparar a tabela, crie um chamado no HelpDesk informando:

    • Quais a(s) tabela(s) a ser(em) reparada(s);
    • Usuário e senha de acesso ao seu banco de dados no campo Dados Sigilosos do chamado (se preferir alterar a senha temporariamente, consulte: Definir ou alterar a senha do MySQL).
    • Informar que está ciente de que a reparação excluirá dados inconsistentes.

    Causas que levam uma tabela ao corrompimento:

    — Conexões abertas que não são encerradas.
    — Interrupção inesperada de um serviço MySQL (pode envolver instabilidades no sistema operacional do servidor), neste caso consulte abaixo as medidas preventivas.

    Medida preventiva:

    — Evite utilizar tabelas grandes (que ocupem bastante espaço), pois geralmente o tempo de resposta das operações nelas é maior, como alternativa você pode utilizar particionamento de tabelas (dividi-las).
    — Utilize InnoDB caso seja uma tabela que tenha muitos INSERTS, UPDATES e DELETES, pois são tabelas que tendem à ser grandes, além de muito utilizadas.
    Obs: MyISAM é mais rápido somente para SELECTS, além de retornar o número de registros com precisão, o InnoDB também retorna as consultas de forma precisa, porém é mais demorado e não tem contagem exata do total de registros. InnoDB além de ser mais seguro, suporta transações e rollback.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Client does not support authentication protocol

    Dificilmente ocorrerá, pois serão clientes do MySQL desenvolvidos para versões antigas (até 4.0). Neste caso você deve atualizar seu programa, que deverá ter suporte à conexão ao MySQL na versão 4.1 ou superior.

    MySQL: Principais mensagens de erro, suas causas e como resolver #The table is full

    Ocorre quando a tabela é muito grande, dificilmente você irá se deparar com esta mensagem, pois o limite conforme informado na documentação do MySQL (link abaixo) é muito alto.

    Para resolver, procure excluir registros desnecessários ou dividir a tabela.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Can’t create/write to file

    Crie um chamado no HelpDesk informando a query que tentou executar, e insira o usuário e a senha da sua base de dados no campo Dados Sigilosos, pois este erro ocorre quando há algum erro de permissão na estrutura de diretórios do MySQL.

    MySQL: Principais mensagens de erro, suas causas e como resolver #1030 – Got error 28 from storage engine

    Crie um chamado no HelpDesk ou entre em contato através de nossos canais de Atendimento.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Can’t initialize character set

    Quando você tenta utilizar charsets que não existem. Verifique se você configurou o charset corretamente nas queries ou em seu software de conexão ao banco, os mais utilizados são “latin1” e “utf8”, mas em alguns softwares os charsets são automáticos. Consulte a documentação de seu software para obter mais detalhes.

    MySQL: Principais mensagens de erro, suas causas e como resolver #The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay

    Este erro ocorre quando o banco de dados precisa procurar em mais de 1 milhão de linhas, para atender os requisitos de sua consulta. Essa limitação não diz respeito a quantidade de registros em uma tabela e sim, em quantos registros serão lidos para satisfazer uma consulta sendo assim, em uma tabela sem a devida otimização o mysql pode fazer várias consultas para atender ao resultado de uma query, a adição de índices, faz com que o mysql vasculhe menos registros. Para solucionar o erro em questão, sugerimos que você otimize sua query e também crie index em suas tabelas, aumentando assim a performance de sua base de dados.

    Caso as querys já estejam otimizadas, isso indica que sua aplicação necessita de mais recursos que o ambiente compartilhado pode oferecer, e nesse caso sugerimos um ambiente dedicado.

    MySQL: Principais mensagens de erro, suas causas e como resolver #MySql Error 1005: Can’t create table (errno: 150)

    Este erro pode ocorrer por diversos motivos. Segue abaixo os principais:

    • Os dois campos relacionados da Foreign Key não possuem mesmo tipo ou tamanho. Por exemplo: Se um campo é INT(10) o campo da chave precisa ser INT(10) também, se for colocado INT(11) ou TINYINY já não serve. Você deve verificar esses dados usando a query SHOW CREATE TABLE tblname;. Também confirme se ambos os campos são ’signed’ ou ‘unsigned’. Conclusão, os campos devem ser EXATAMENTE o mesmo!
    • O campo do qual você deseja se referenciar em outra tabela não tem um índice (index) ou não é uma chave primária (primary key). Se um dos campos que você deseja criar a relação não for uma “primary key”, você deve criar um índice para ela.
    • O nome da Foreign Key já existe em alguma chave. Confira se o nome de sua Foreign Key é única no seu banco de dados. Simplesmente adicione alguns caracteres aleatórios no fim do nome de sua key para testar essa condição.
    • Uma ou ambas as tabelas são MyISAM. Para utilizar Foreign Key ambas as tabelas devem usar InnoDB. Normalmente quando ambas as tabelas são MyISAM o MySQL não apresenta nenhuma mensagem de erro, simplesmente não cria a chave.
    • Você pode ter especificado “CASCADE ON DELETE SET NULL”, enquanto o campo é “NOT NULL”, esse é o erro mais comum.
    • Se o seu script está funcionando perfeitamente em um server, mas não em outro, verifique o collate ou charset, eles podem dar problemas caso sejam diferentes.
    • Você pode ter um valor default (ex. default=0) na sua coluna Foreign Key.
    • O nome de sua Foreign Key excede o limite de no máximo 64 caracteres.
    MySQL: Principais mensagens de erro, suas causas e como resolver #Lost connection to MySQL server at ‘reading authorization packet

    A Locaweb, preocupada com a segurança, configurou uma regra aplicada nos servidores Linux que impede que os sites nessa plataforma troquem pacotes com um banco de dados externo se a autenticação nesse banco for por meio de um usuário com nome root. A regra não se aplica somente a bancos de dados externos, mas a qualquer serviço externo que use o usuário root para autenticar. Nesse tipo de caso o servidor Linux irá derrubar a conexão com o serviço externo e pode aparecer em seu site o erro:

    Warning: mysql_connect() [function.mysql-connect]: Lost connection to MySQL server at ‘reading authorization packet’

    Se você precisa que seu site conecte em uma base de dados Mysql externa, e precisa que a autenticação seja feita através de um super usuário(não recomendado), ao invés de usar o usuário root pode criar um outro usuário com super privilégios. Apesar de não prestarmos suporte a esse procedimento ai vai a dica: você só precisar criar uma entrada na tabela user com os campos de privilégios configurados para ‘Y’. Não é necessário gerar entradas nas tabelas db ou host. Para mais informações veja a documentação oficial clicando aqui.

    MySQL: Principais mensagens de erro, suas causas e como resolver #Client does not support authentication protocol requested by server; consider upgrading MySQL client

    Esse erro ocorre quando você está tentando autenticar com um client de MySQL inferior a versão 4.1, ou quando utiliza a função password em suas senhas. Em nossos servidores, a variável old-password é desabilitada por questões de segurança, portanto ou você deve realizar a atualização do client de conexão, ou alterar a sua senha para um hash longo com 41 caracteres.

    Mais detalhes, pode conferir na documentação oficial:

    http://dev.mysql.com/doc/refman/5.1/en/password-hashing.html

    Veja a documentação abaixo que te auxilia a fazer a troca da senha para o novo padrão:

    Veja também

    Informações essenciais

    Informações específicas

    Backup e restore



    Nossos Clientes

    Conheça algumas empresas que fazem parte do nosso portifólio

    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver
    • MySQL: Principais mensagens de erro, suas causas e como resolver

    Not Found

    The requested URL /infraestrutura.html was not found on this server.