Mensajes de error de Cloud SQL para PostgreSQL

Esta página analiza algunos de los mensajes de error encontrados en Cloud SQL.

Descripción general

Los mensajes de error en Cloud SQL provienen de diversas fuentes y aparecen en diversos lugares. Algunos mensajes de error provienen de los propios motores de base de datos, otros del servicio Cloud SQL, otros de las aplicaciones cliente y otros se devuelven mediante llamadas a la API de administración de Cloud SQL.

Esta página incluye algunos de los errores más comunes en Cloud SQL. Si no encuentra el código de error o el mensaje que busca, puede consultar el material de referencia aquí:

Si no encuentra el material de referencia para el mensaje de error que está viendo, también puede buscar en algunos de estos lugares donde otros usuarios pueden tener experiencia relevante:

Errores operativos

A | B | C | D | E | F | G | I | L | M | N | O | P | Q | R | S | T | U | O

Mensaje de error Solución de problemas
No se encontró el rango de IP asignado en la red. Los emparejamientos de VPC no se actualizaron después de que se modificó o eliminó un rango asignado.

Necesita modificar la conexión privada . Use el siguiente comando y asegúrese de usar el argumento --force :

gcloud services vpc-peerings update \
--network=VPC_NETWORK \
--ranges=ALLOCATED_RANGES \
--service=servicenetworking.googleapis.com \
--force
Mensaje de error Solución de problemas
Solicitud incorrecta. Este mensaje puede tener varias causas. Illegal Argument es una de las más comunes. En este caso, la solicitud utiliza un argumento incorrecto o un valor no válido. Para muchas otras causas, el mensaje de error puede contener una pista útil.

En caso de Illegal Argument , revise la solicitud para asegurarse de que cada argumento sea admisible y que cada valor sea válido. Para cualquier otra causa, revise los archivos de registro para ver si hay más información.

Mensaje de error Solución de problemas
No se pueden modificar los rangos asignados en CreateConnection. Utilice UpdateConnection. Los emparejamientos de VPC no se actualizaron después de que se modificó o eliminó un rango asignado.

Necesita modificar la conexión privada . Use el siguiente comando y asegúrese de usar el argumento --force :

gcloud services vpc-peerings update \
--network=VPC_NETWORK \
--ranges=ALLOCATED_RANGES \
--service=servicenetworking.googleapis.com \
--force
Conexión restablecida por el par.

Si intenta realizar una exportación y Cloud Storage no recibe ningún dato dentro de un período de tiempo determinado, la conexión se restablece.

Intente una exportación manual utilizando pg_dump .

Restricciones/sql.restrictAuthorizedNetworks. La operación de clonación está bloqueada por la configuración Authorized Networks . Authorized Networks se configuran para direcciones IP públicas en la sección Conectividad del... Google Cloud consola y la clonación no está permitida debido a consideraciones de seguridad .

Si es posible, elimine todas las entradas Authorized Networks de la instancia de Cloud SQL. De lo contrario, cree una réplica sin ninguna entrada Authorized Networks .

Mensaje de error Solución de problemas
user de la base de datos no existe. gcloud sql connect --user solo funciona con el usuario postgres predeterminado.

Conéctese con el usuario predeterminado y luego cambie de usuario.

El disco está lleno. El tamaño del disco de la instancia principal puede llenarse durante la creación de la réplica.

Edite la instancia principal para actualizarla a un tamaño de disco más grande.

Mensaje de error Solución de problemas
Error al crear la subred. No hay más direcciones disponibles en el rango de IP.

No se encontraron bloques libres en los rangos de IP asignados. Por favor, asigne nuevos rangos a este proveedor de servicios.

No hay más direcciones disponibles en el rango de IP asignado.

Considere estos posibles escenarios:

  • El tamaño del rango de IP asignado para la conexión de servicio privado es menor que /24.
  • El tamaño del rango de IP asignado para la conexión del servicio privado es demasiado pequeño para la cantidad de instancias de Cloud SQL.
  • El requisito de tamaño del rango de IP asignado será mayor si las instancias se crean en varias regiones. Consulte el tamaño del rango asignado.

Para cada uno de los escenarios anteriores, puede optar por ampliar el rango de IP existente o asignar un rango de IP adicional a la conexión de servicio privado.

Si está asignando un nuevo rango, tenga cuidado de no crear una asignación que se superponga con ninguna asignación existente.

Después de crear un nuevo rango de IP, actualice el emparejamiento de VPC con el siguiente comando:

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

Si amplía una asignación existente, asegúrese de aumentar únicamente el rango de asignación, no de reducirlo. Por ejemplo, si la asignación original era 10.0.10.0/24, la nueva asignación debe ser al menos 10.0.10.0/23.

En general, si se parte de una asignación /24, una buena regla general es decrementar la máscara / en 1 por cada condición (grupo de tipos de instancia adicional, región adicional). Por ejemplo, si se intenta crear ambos grupos de tipos de instancia en la misma asignación, basta con pasar de /24 a /23.

Después de expandir un rango de IP existente, actualice el emparejamiento de VPC con el siguiente comando:

gcloud services vpc-peerings update \
--service=servicenetworking.googleapis.com
--ranges=RESERVED_RANGE_NAME \
--network=VPC_NETWORK \
--project=PROJECT_ID \
--force
Mensaje de error Solución de problemas
(gcloud.sql.connect) Parece que su cliente no tiene conectividad IPv6 y la instancia de base de datos no tiene una dirección IPv4. Estás intentando conectarte a tu instancia de IP privada mediante Cloud Shell.

Actualmente no se admite la conexión desde Cloud Shell a una instancia con solo una dirección IP privada.

Mensaje de error Solución de problemas
Error interno. Es posible que al proyecto le falte la cuenta de servicio de red de servicios requerida para esta función.

Para reparar los permisos del servicio, deshabilite la Service Networking API , espere cinco minutos y luego vuelva a habilitarla.

Solicitud no válida: configuración de red de servicio incorrecta, por ejemplo. Service Networking API no está habilitada en el proyecto.

Habilite la Service Networking API en su proyecto. Si ve este error al intentar asignar una dirección IP privada a una instancia de Cloud SQL y usa una VPC compartida, también debe habilitar la Service Networking API para el proyecto host.

Mensaje de error Solución de problemas
Error en la asociación de red. La Service Networking API no está habilitada en el proyecto.

Habilite la Service Networking API en su proyecto. Si ve este error al intentar asignar una dirección IP privada a una instancia de Cloud SQL y usa una VPC compartida, también debe habilitar la Service Networking API para el proyecto host.

Mensaje de error Solución de problemas
La operación falló porque otra operación ya estaba en curso. La mayoría de las operaciones en Cloud SQL son síncronas. Solo se puede ejecutar una a la vez.

Espere a que finalice la operación anterior antes de comenzar otra.

La operación no es válida para esta instancia. Este error se devuelve desde una llamada API a instances.restoreBackup y significa que no se puede restaurar desde una copia de seguridad a una instancia con un tamaño de almacenamiento (XX GB) menor que el tamaño de la copia de seguridad (YY GB).

Edite la instancia de destino para aumentar su tamaño de almacenamiento.

Mensaje de error Solución de problemas
Error en la autenticación de contraseña para el usuario "postgres". Al crear una nueva instancia de Cloud SQL para PostgreSQL, se crea el usuario administrador predeterminado postgres , pero no la contraseña. Debe establecer una contraseña para este usuario antes de que pueda iniciar sesión.

Mensaje de error Solución de problemas
Cuota excedida. Has alcanzado el límite de tu cuota por minuto o diaria. Revisa las cuotas y los límites de Cloud SQL.

Solicita un aumento a tus cuotas a la Google Cloud consola .

Mensaje de error Solución de problemas
Las ranuras de conexión restantes están reservadas. Se han alcanzado las conexiones máximas permitidas.

Aumente el valor del indicador max_connections . Consulte Configuración de indicadores de base de datos .

A la solicitud le falta una clave API válida. Es posible que no tenga un archivo JSON de clave de cuenta de servicio válido o que no esté almacenado en la ubicación esperada.

Verifique que tenga un archivo JSON de clave de cuenta de servicio válido en la ubicación almacenada en la variable de entorno GOOGLE_APPLICATION_CREDENTIALS y que la variable apunte a la ubicación correcta.

Mensaje de error Solución de problemas
Error de SSL: relleno no válido. Error de certificado del servidor.

Cree un nuevo certificado de servidor y gírelo .

Se produjo un error del sistema.
  • Es posible que el usuario no tenga todos los permisos de almacenamiento en la nube que necesita.
  • Es posible que la tabla de base de datos no exista.

Prueba estas cosas...

  • Comprueba que tienes al menos permisos WRITER en el bucket y de READER en el archivo de exportación. Para obtener más información sobre cómo configurar el control de acceso en Cloud Storage, consulta Crear y administrar listas de control de acceso.
  • Asegúrese de que la tabla exista. Si existe, confirme que tiene los permisos correctos en el contenedor de almacenamiento.

Mensaje de error Solución de problemas
Se modificó la definición de la tabla. Durante el proceso de exportación se produjo un cambio en la tabla.

La transacción de volcado puede fallar si utiliza las siguientes declaraciones durante la operación de exportación:

  • ALTER TABLE
  • CREATE TABLE
  • DROP TABLE
  • RENAME TABLE
  • TRUNCATE TABLE

Elimine cualquiera de estas declaraciones de la operación de volcado.

El tamaño del archivo temporal excede temp_file_limit. El indicador temp_file_limit está configurado demasiado bajo para el uso de su base de datos.

Aumente el tamaño de temp_file_limit . Consulte Configuración de indicadores de base de datos .

(Tiempo de espera) durante la exportación. Los formatos CSV y SQL se exportan de forma diferente. El formato SQL incluye toda la base de datos y probablemente tarde más en completarse.

Utilice el formato CSV y ejecute varios trabajos de exportación más pequeños para reducir el tamaño y la duración de cada operación.

Demasiadas conexiones. Configurar el indicador max_connections con un valor demasiado alto puede causar este error. Esto también puede deberse a la activación de un indicador fuera de secuencia.

Reduzca el valor del indicador max_connections o contacte con el servicio de atención al cliente para solicitar la eliminación del indicador y, a continuación, un hard drain . Esto obliga a la instancia a reiniciarse en un host diferente con una configuración nueva, sin el indicador ni la configuración.

Mensaje de error Solución de problemas
No autorizado para conectarse. Las causas pueden ser múltiples porque la autorización se produce en muchos niveles:
  • A nivel de base de datos, el usuario de la base de datos debe existir y su contraseña debe coincidir.
  • En el nivel del proyecto, es posible que el usuario no tenga los permisos de IAM correctos, incluidos los permisos serviceusage.services.use o cloudsql.instances.connect .
  • A nivel de red, si la instancia de Cloud SQL usa IP pública, la IP de origen de la conexión debe estar en una red autorizada.

Prueba estas cosas...

  • Asegúrese de que el usuario exista y su contraseña coincida.
  • Asignar el rol Service Usage Consumer a la cuenta de usuario. Este rol incluye el permiso serviceusage.services.use .
  • Si utiliza una IP pública, asegúrese de que la IP de origen esté en una red autorizada.
Mensaje de error Solución de problemas
x509: el certificado no es válido para ningún nombre. Problema conocido: el marcador proxy de Cloud SQL no es compatible con Go 1.15 en este momento.

Hasta que se solucione, consulte esta discusión en GitHub , que incluye una solución alternativa.

Errores desconocidos

La siguiente tabla muestra algunos casos conocidos donde puede ocurrir un Unknown Error y enumera soluciones específicas cuando corresponda. Sin embargo, esta no es una lista completa. Si no encuentra su caso en la tabla, consulte el rastreador de problemas público de Cloud SQL . Si no encuentra el problema, considere enviar un informe o revisar otras opciones de soporte .

Operación El problema podría ser... Cosas para probar...
Agregar usuario Si el usuario ya existe en la base de datos, este error puede ocurrir cuando intenta agregarlo. Verifique que el usuario no exista ya en la base de datos.
Respaldo Si ve esto durante las copias de seguridad automáticas o manuales, es probable que el disco de la instancia esté lleno. Si el tamaño del archivo temporal ocupa demasiado espacio, puede reiniciar la instancia para eliminarlo y liberar espacio en disco. De lo contrario, podría necesitar ampliar el tamaño de disco de su instancia.
Clon Esto puede ocurrir cuando hay escasez de recursos en la zona seleccionada. Pruebe en otra zona de la región o espere y vuelva a intentarlo más tarde.
Crear instancia
  • Esto puede ocurrir cuando intentas volver a utilizar el mismo nombre que una instancia eliminada recientemente.
  • También puede deberse a problemas de conectividad intermitentes.
  • Los registros podrían mostrar que la API de red de servicios no está habilitada para el proyecto.
  • El error también se ha observado al intentar crear varias instancias en paralelo. Por ejemplo, los scripts de Terraform permiten este intento.
  • Otra causa puede ser que se haya agotado un recurso específico o se haya superado el límite de cuota. Busque en los registros una entrada como Quota 'INTERNAL_FORWARDING_RULES_WITH_TARGET_INSTANCE_PER_NETWORK' exceeded. Limit: 100.0 globally
  • Este error puede ocurrir si la creación de una subred falla cuando no hay más direcciones disponibles en el rango de IP.
  • Los nombres de instancia no se pueden reutilizar hasta aproximadamente una semana después de su eliminación.
  • En caso de problemas de conectividad intermitentes, la única solución es volver a intentarlo.
  • Habilite la API de redes de servicios para el proyecto.
  • Los scripts de creación de instancias en paralelo solo crearán una instancia. Modifique el script para que espere a que se complete cada operación de creación de instancia antes de continuar con la siguiente.
  • Asignar nuevos rangos .
Crear réplica Es probable que haya un error más específico en los archivos de registro. Inspeccione los registros en Cloud Logging para encontrar el error real.

Si el error indica que set Service Networking service account as servicenetworking.serviceAgent role on consumer project , deshabilite y vuelva a habilitar la Service Networking API . Esta acción crea la cuenta de servicio necesaria para continuar con el proceso.

Si el error es The instance creation failed due to a permission error with the CMEK key defined , revise la configuración y la ubicación de la clave .

Exportar Si ve esto al intentar exportar una base de datos a un depósito de Cloud Storage, es posible que la transferencia falle debido a un problema de ancho de banda. La instancia de Cloud SQL puede estar ubicada en una región distinta a la del bucket de Cloud Storage. Leer y escribir datos de un continente a otro implica un alto consumo de red y puede causar problemas intermitentes como este.
Conmutación por error (automática) Una operación de conmutación por error automática puede producir este mensaje de error cuando el servicio detecta que la instancia principal aún responde. En este caso, no hay nada que hacer. La conmutación por error no se producirá porque no es necesaria.
Importar El archivo de importación puede contener declaraciones que requieren el rol de superusuario. Edite el archivo para eliminar cualquier declaración que requiera el rol de superusuario.

Cloud SQL también utiliza binarios de terceros (por ejemplo, mysqld ), lo que puede generar mensajes de error desconocidos. Estos errores son internos a los binarios de terceros y quedan fuera del alcance de Cloud SQL. Sin embargo, a veces se puede encontrar un error más específico en los archivos de registro de Cloud SQL aproximadamente al mismo tiempo.

También, a veces se trata de un código de error desconocido. En este caso, el mensaje completo puede ser Unknown Error Code .