Nesta página, mostramos algumas mensagens de erro encontradas no Cloud SQL.
Visão geral
As mensagens de erro no Cloud SQL provêm de muitas origens e aparecem em muitos lugares. Algumas mensagens de erro são derivadas dos próprios mecanismos de banco de dados, do serviço Cloud SQL, de aplicativos clientes, e outras retornadas por chamadas à API Cloud SQL Admin.
Nesta página, incluímos alguns dos erros mais comuns encontrados no Cloud SQL. Se você não encontrar nela o código de erro ou a mensagem que procura, pesquise o material de referência de origem nestes locais:
- Páginas de referência de erros do MySQL (em inglês)
- Páginas de referência de erros do PostgreSQL (em inglês)
- Páginas de referência de erros do SQL Server (em inglês)
Se você não encontrar o material de referência da mensagem de erro que aparece, pesquise também em alguns destes lugares, onde outros usuários podem ter experiência relevante:
- Perguntas do Cloud SQL no Stack Overflow (em inglês)
- Issue Tracker público do Cloud SQL
- DBA Stack Exchange (em inglês)
- Grupo de discussão do Cloud SQL (em inglês)
- Comunidade do Google Cloud no Slack (em inglês)
- Google Cloud no Reddit (em inglês)
Erros operacionais
A | B | C | D | E | F | G | I | L | M | N | O | P | Q | R | S | T | U | W
Mensagem de erro | Solução de problemas |
---|---|
Conexão xxx cancelada para db: DB_NAME. | O aplicativo não está encerrando as conexões corretamente.
Verifique as seguintes condições:
|
Acesso negado. Você precisa de (pelo menos um dos) SUPER privilégios para esta operação | Pode haver uma visualização, uma função ou um procedimento no banco de
dados de origem que referencie DEFINER de uma maneira que não é compatível com o
Cloud SQL.
Atualize o definidor nos bancos de dados externos. Por exemplo,
de |
Acesso negado para o usuário 'XXX'@'XXX' (usando a senha: XXX) | Pode haver várias causas, incluindo:
Tente fazer o seguinte:
|
Intervalo de IP alocado não encontrado na rede. | Os peerings de VPC não foram atualizados depois que um intervalo alocado foi modificado
ou removido.
É necessário
modificar a conexão particular. Use o seguinte comando e certifique-se
de usar o argumento gcloud services vpc-peerings update \ --network=VPC_NETWORK \ --ranges=ALLOCATED_RANGES \ --service=servicenetworking.googleapis.com \ --force |
Comando "ANY" negado ao usuário 'root'@'%' para a tabela: | O usuário não tem todas as permissões necessárias para a operação.
Tente o seguinte:
|
Mensagem de erro | Solução de problemas |
---|---|
Solicitação inválida. | Essa mensagem pode ter muitas causas. Illegal Argument é uma
das mais comuns. Nesse caso, a solicitação está usando o argumento
errado ou um valor inválido para ele. Para muitas outras
causas, a mensagem de erro pode
conter uma dica útil.
Para |
Mensagem de erro | Solução de problemas |
---|---|
Não é possível modificar intervalos alocados em CreateConnection. Use UpdateConnection. | Os peerings de VPC não são atualizados depois que um intervalo alocado é modificado ou removido.
É necessário modificar a conexão particular.
Use o seguinte comando e certifique-se de usar o argumento gcloud services vpc-peerings update \ --network=VPC_NETWORK \ --ranges=ALLOCATED_RANGES \ --service=servicenetworking.googleapis.com \ --force |
Conexão redefinida pelo peering. | Se você estiver tentando fazer uma exportação e o Cloud Storage não receber dados em um determinado período, a conexão será redefinida. Tente fazer uma exportação manual usando |
Constraints/sql.restrictAuthorizedNetworks. | A operação de clonagem é bloqueada pela
configuração Authorized Networks . Authorized Networks
são configurados para endereços IP públicos na seção "Conectividade" do
Console do Google Cloud, e a clonagem não é permitida devido a
considerações de segurança.
Remova todas as entradas |
Não foi possível alocar uma nova página para o banco de dados database_name
devido a espaço insuficiente em disco no grupo de arquivos PRIMARY . |
O grupo de arquivos PRIMARY , que é o grupo de arquivos principal e padrão em um
banco de dados, ficou sem espaço.
Use o comando Considere as seguintes soluções:
|
Mensagem de erro | Solução de problemas |
---|---|
O banco de dados user não existe. |
gcloud sql connect --user funciona apenas com o usuário
postgres padrão.
Conecte-se com o usuário padrão e mude os usuários. |
O disco está cheio. | O tamanho do disco da instância principal pode ficar cheio durante a criação da réplica.
Edite a instância principal com upgrade para um tamanho de disco maior. |
Mensagem de erro | Solução de problemas |
---|---|
Falha ao criar sub-rede. | Não há mais endereços disponíveis no intervalo de IP.
Não foi possível encontrar blocos gratuitos em intervalos de IP alocados. Aloque novos intervalos para este provedor de serviços. Não há mais endereços disponíveis no intervalo de IP alocado. Considere estes cenários possíveis:
Para cada um dos cenários acima, é possível expandir a opção atual ou alocar um intervalo de IP adicional para a conexão de serviço particular. Se você estiver alocando um novo intervalo, tenha cuidado para não criar uma alocação que se sobreponha a uma alocação existente. Depois de criar um novo intervalo de IP, atualize o peering VPC com o comando a seguir: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com --ranges=OLD_RESERVED_RANGE_NAME,NEW_RESERVED_RANGE_NAME \ --network=VPC_NETWORK --project=PROJECT_ID \ --force Se você estiver expandindo uma alocação atual, só aumente o intervalo de alocação em vez de diminuí-lo. Por exemplo, se a alocação original for 10.0.10.0/24, faça a nova alocação pelo menos 10.0.10.0/23. Em geral, se começar com uma alocação de /24, diminuir a /mascaramento em 1 para cada condição (grupo de tipo de instância adicional, região adicional) é uma boa regra geral. Por exemplo, se você tentar criar os dois grupos de tipos de instância na mesma alocação, a mudança de /24 para /23 será suficiente. Depois de expandir um intervalo de IP atual, use o seguinte comando para atualizar o peering VPC: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID \ --force |
Mensagem de erro | Solução de problemas |
---|---|
(gcloud.sql.connect) Parece que o cliente não tem conectividade ipv6, e a instância do banco de dados não tem um endereço ipv4. | Você está tentando se conectar à sua instância de IP particular usando o Cloud Shell.
No momento, não é possível se conectar do Cloud Shell a uma instância apenas com um endereço IP particular. |
Pacote maior que max_allowed_packet bytes ao
despejar tabela. |
O pacote era maior do que o permitido pelas configurações.
Use Para saber mais sobre como usar sinalizações |
Mensagem de erro | Solução de problemas |
---|---|
InnoDB: a gravação no arquivo ./ibtmp1 falhou no deslocamento XXXX, AAAA bytes deveriam ter sido gravados. Somente 0 foram gravados. | A instância atingiu um limite absoluto ao fazer um backup automatizado.
Verifique se o SO e o sistema de arquivos são compatíveis com arquivos desse tamanho. Verifique se o disco não está cheio ou com cota de disco insuficiente. É possível solicitar um aumento nas suas cotas pelo Console do Google Cloud ou editar a instância com upgrade para um tamanho de disco maior. |
Erro interno. | O projeto de serviço pode estar sem a conta de serviço de rede
necessária para esse recurso.
Para corrigir as permissões do serviço, desative
|
Solicitação inválida: configuração de rede de serviço incorreta, por exemplo. | Service Networking API não está ativado no projeto.
Ative a |
Mensagem de erro | Solução de problemas |
---|---|
Tabela de metadados bloqueada | Outra consulta, processo ou transação está bloqueando sua consulta e
bloqueou a tabela.
Encontre o processo que bloqueou a tabela e pare-o.
|
Mensagem de erro | Solução de problemas |
---|---|
Falha na associação de rede. | A Service Networking API não está ativada no projeto.
Ative a |
Mensagem de erro | Solução de problemas |
---|---|
A operação falhou porque outra operação ainda estava em andamento. | A maioria das operações no Cloud SQL é síncrona. É possível
executar apenas uma de cada vez.
Aguarde a operação anterior ser concluída antes de iniciar outra. |
A operação não é válida para esta instância. | Esse erro é retornado de uma chamada de API para instances.restoreBackup
e significa que não é possível restaurar do backup para uma instância com um tamanho de armazenamento
(XX GB) menor que o tamanho do backup (YY GB).
Edite a instância de destino para aumentar o tamanho de armazenamento dela. |
Mensagem de erro | Solução de problemas |
---|---|
Falha na autenticação da senha para o usuário "postgres". | Quando você cria uma nova instância do Cloud SQL para PostgreSQL, o usuário administrador
padrão postgres é criado, mas a senha não é criada.
É necessário
definir uma senha para esse usuário antes que o usuário faça login. |
Mensagem de erro | Solução de problemas |
---|---|
Cota excedida. | Você atingiu o limite de sua cota diária ou por minuto. Revise as cotas e limites do Cloud SQL.
Solicite um aumento nas suas cotas pelo Console do Google Cloud. |
Mensagem de erro | Solução de problemas |
---|---|
Os slots de conexão restantes estão reservados. | O número máximo de conexões permitidas foi atingido.
Aumente o valor da sinalização |
Falta uma chave de API válida na solicitação | Talvez você não tenha um arquivo JSON de chave de conta de serviço válida ou ele
não esteja armazenado no local esperado.
Verifique se você tem um arquivo JSON de chave de conta de serviço válido no local armazenado na variável de ambiente |
Mensagem de erro | Solução de problemas |
---|---|
A chave especificada era muito longa. O comprimento máximo da chave é 767 bytes. | A instância principal externa pode ter a variável
innodb_large_prefix definida.
Defina a sinalização |
Erro de SSL: padding inválido. | Erro de certificado do servidor.
Crie um novo certificado de servidor e alterne-o. |
Ocorreu um erro de sistema. |
Tente fazer o seguinte:
|
Mensagem de erro | Solução de problemas |
---|---|
A definição da tabela foi alterada. | Durante o processo de exportação, ocorreu uma alteração na tabela.
A transação de despejo poderá falhar se você usar as seguintes instruções durante a operação de exportação:
Remova qualquer uma dessas instruções da operação de despejo. |
O tamanho do arquivo temporário excede temp_file_limit. | A sinalização temp_file_limit está definida com valor muito baixo para o uso do banco de dados.
Aumente o tamanho de |
A tabela db.table não existe | Se uma ou mais tabelas InnoDB desaparecerem após uma reinicialização do MySQL e
o registro de erros do MySQL mostrar os seguintes avisos ao mesmo tempo, isso será devido à
chave externa e às colunas de chave referenciadas não estarem em sincronia.
[Warning] InnoDB: Load table db.table failed, the table has missing foreign key indexes. Turn off 'foreign_key_checks' and try again. [Warning] InnoDB: Cannot open table db/table from the internal data dictionary of InnoDB though the .frm file for the table exists. See InnoDB troubleshooting for more information. Após a reinicialização do banco de dados, o MySQL precisa carregar tabelas no cache do dicionário do InnoDB no primeiro acesso. Se detectar a discrepância, o acesso a essa tabela será bloqueado. mysql> select * from db.table; ERROR 1146 (42S02): Table db.table doesn't exist Desativar A incompatibilidade de chave externa deve ser corrigida para evitar outros problemas.
|
(Tempo limite) durante a exportação. | Os formatos CSV e SQL são exportados de maneira diferente. O formato SQL inclui todo o banco de dados e provavelmente levará mais tempo para ser concluído.
Use o formato CSV e execute vários jobs de exportação menores para reduzir o tamanho e a duração de cada operação. |
Muitas conexões. | Definir um valor muito alto para a sinalização max_connections pode causar esse
erro. Isso também pode ser causado pela ativação de uma sinalização fora de sequência.
Reduza o valor da sinalização |
Mensagem de erro | Solução de problemas |
---|---|
Sem autorização para se conectar. | Pode haver muitas causas, já que a autorização ocorre em muitos níveis:
Tente fazer o seguinte:
|
Tabela desconhecida COLUMN_STATISTICS em information_schema. |
Isso acontece se você usar o binário mysqldump do MySQL 8.0 para fazer dump
de dados de um banco de dados MySQL 5.7 e importá-los para um banco de dados MySQL 8.0.
Se você fizer dump de dados de um banco de dados MySQL 5.7 e importá-los para um banco de dados
MySQL 8.0, use o binário |
Mensagem de erro | Solução de problemas |
---|---|
x509: o certificado não é válido para nenhum nome. | Problema conhecido: no momento, o
Cloud SQL Proxy Dialer (em inglês) não é compatível com o Go 1.15.
Até que o problema seja resolvido, confira esta discussão no GitHub (em inglês), que inclui uma solução alternativa. |
Erros desconhecidos
A tabela a seguir mostra alguns casos conhecidos em que um Unknown Error
pode ocorrer e lista correções específicas quando aplicável. No entanto, esta não é
uma lista completa. Se você não encontrar seu caso na tabela, consulte o
Issue Tracker público do Cloud SQL.
Se você não encontrar o problema,
envie um relatório ou leia
outras opções de suporte.
Operação | O problema pode ser... | O que você deve tentar... |
---|---|---|
Adicionar usuário | Se o usuário já existir no banco de dados, esse erro poderá ocorrer quando você tentar adicioná-lo. | Verifique se o usuário já não existe no banco de dados. |
Backup | Se isso aparecer durante os backups automáticos ou manuais, é provável que o disco da instância esteja cheio. | Se o tamanho do arquivo temporário estiver ocupando muito espaço, reinicie a instância para remover esse arquivo e liberar o espaço no disco. Caso contrário, talvez seja necessário fazer upgrade da instância para um tamanho de disco maior. |
Clonar | Isso pode ocorrer quando há uma falta de recursos na zona selecionada. | Tente outra zona na região ou aguarde e tente novamente mais tarde. |
Criar instância |
|
|
Exportar | Se você vir isso ao tentar exportar um banco de dados para um bucket do Cloud Storage, a transferência poderá falhar devido a um problema de largura de banda. | A instância do Cloud SQL pode estar localizada em uma região diferente do bucket do Cloud Storage. A leitura e a gravação de dados de um continente para outro envolve o uso excessivo de rede e pode causar problemas intermitentes como esse. |
Failover (automático) | Uma operação de failover automática pode produzir essa mensagem de erro quando o serviço detecta que a instância principal ainda é responsiva. | Não há nada a ser feito nesse caso. O failover não ocorrerá porque não é necessário. |
Importar | O arquivo de importação pode conter instruções que exijam o papel de superusuário. | Edite o arquivo para remover instruções que exigem o papel de superusuário. |
O Cloud SQL também usa alguns binários de terceiros (por exemplo,
mysqld
), que podem gerar mensagens de erro desconhecidas. Esses erros são
internos para os binários de terceiros e estão fora do escopo do Cloud SQL.
No entanto, às vezes, um erro mais específico pode ser encontrado nos
arquivos de registros do Cloud SQL ao mesmo
tempo.
Além disso, algumas vezes é um código de erro desconhecido. Nesse caso,
a mensagem completa pode ser Unknown Error Code
.