Messages d'erreur Cloud SQL pour SQL Server

Cette page présente certains des messages d'erreur rencontrés dans Cloud SQL.

Présentation

Les messages d'erreur dans Cloud SQL proviennent de nombreuses sources et apparaissent à de nombreux endroits. Certains messages d'erreur proviennent des moteurs de base de données proprement dits, d'autres du service Cloud SQL ou d'applications clientes, et d'autres sont renvoyés par des appels à l'API Admin Cloud SQL.

Cette page couvre certaines des erreurs les plus courantes rencontrées dans Cloud SQL. Si vous n'y trouvez pas le code d'erreur ou le message qui vous intéresse, vous pouvez le rechercher dans les documents de référence sources ci-dessous :

Si vous ne trouvez pas le document de référence sur le message d'erreur qui s'affiche, vous pouvez également effectuer une recherche sur les sites suivants, où d'autres utilisateurs peuvent avoir une expérience pertinente :

Erreurs inconnues

Le tableau suivant présente quelques cas connus pouvant générer une erreur Unknown Error et répertorie des solutions spécifiques, le cas échéant. Toutefois, cette liste n'est pas exhaustive. Si votre cas n'apparaît pas dans le tableau, consultez l'outil public de suivi des problèmes de Cloud SQL. Si vous n'y trouvez pas votre problème, pensez à envoyer un rapport ou à consulter les autres options d'assistance.

Opération Cause possible Solutions possibles
Sauvegarde Si ce message s'affiche pendant les sauvegardes manuelles ou automatiques, il est probable que le disque de l'instance soit saturé. Si le fichier temporaire occupe trop d'espace, vous pouvez redémarrer l'instance afin de le supprimer et de libérer l'espace disque qu'il utilisait. Dans le cas contraire, vous devrez peut-être mettre à niveau votre instance vers un disque de taille plus importante.
Clonage Ce message peut s'afficher en raison d'un manque de ressources dans la zone sélectionnée. Essayez dans une autre zone de la région, ou patientez et réessayez plus tard.
Création d'une instance
  • Ce message peut s'afficher si vous essayez de réutiliser le même nom que celui d'une instance récemment supprimée.
  • Cela peut également être dû à des problèmes de connectivité intermittents.
  • Les journaux peuvent indiquer que l'API Service Networking n'est pas activée pour le projet.
  • L'erreur a également pu être observée lorsque vous essayez de créer plusieurs instances en parallèle. Les scripts Terraform, entre autres, peuvent vous permettre de réaliser cette tentative.
  • Il se peut également qu'une ressource spécifique soit épuisée ou qu'une limite de quota ait été dépassée. Recherchez une entrée du type Quota 'INTERNAL_FORWARDING_RULES_WITH_TARGET_INSTANCE_PER_NETWORK' exceeded. Limit: 100.0 globally dans les journaux.
  • Après avoir supprimé une instance, vous devez attendre environ une semaine avant de pouvoir réutiliser son nom.
  • Si vous rencontrez des problèmes de connectivité intermittents, la seule solution possible consiste à réessayer.
  • Activez l'API Service Networking pour le projet.
  • Les scripts de création d'instances parallèles ne parviendront à créer qu'une seule de ces instances. Modifiez le script pour laisser chaque opération de création d'instance aboutir avant de passer à la suivante.
Export Si ce message s'affiche lorsque vous essayez d'exporter une base de données vers un bucket Cloud Storage, le transfert peut échouer en raison d'un problème de bande passante. L'instance Cloud SQL peut se trouver dans une région différente de celle du bucket Cloud Storage. La lecture et l'écriture de données d'un continent à l'autre impliquent une utilisation importante du réseau, pouvant entraîner ce type de problèmes intermittents.
Basculement (automatique) Une opération de basculement automatique peut générer ce message d'erreur lorsque le service détecte que l'instance principale est toujours réactive. Dans ce cas, aucune action de votre part n'est nécessaire. Le basculement n'a pas lieu, car il n'est pas requis.
Importation Le fichier d'importation peut contenir des instructions qui nécessitent le rôle de super-utilisateur. Modifiez le fichier pour supprimer toutes les instructions nécessitant le rôle de super-utilisateur.

Cloud SQL utilise également certains binaires tiers (par exemple, mysqld), qui peuvent générer des messages d'erreur inconnus. De telles erreurs sont internes aux binaires tiers et dépassent le cadre de Cloud SQL. Toutefois, une erreur plus spécifique peut parfois être consignée dans les fichiers journaux Cloud SQL à peu près au même instant.

Il peut également s'agir d'un code d'erreur inconnu. Dans ce cas, le message complet peut être Unknown Error Code.

Autres erreurs

Requête erronée

Le message d'erreur HTTP Error 400 Bad Request s'affiche.

Cause possible

Les requêtes incorrectes peuvent avoir plusieurs causes. L'une des plus courantes est un argument incorrect. Dans ce cas, la requête utilise le mauvais argument ou une valeur d'argument non valide. Pour les nombreuses autres causes possibles, le message d'erreur peut contenir un indice utile.

Solutions possibles

Dans le cas d'un argument incorrect, vérifiez la requête pour vous assurer que chaque argument est autorisé et que sa valeur est valide. Pour toutes les autres causes, consultez les fichiers journaux pour savoir si d'autres informations sont disponibles.


Accès refusé pour l'utilisateur

Le message d'erreur Access denied for user 'XXX'@'XXX' (using password: XXX) s'affiche.

Cause possible

Plusieurs causes sont possibles, dont les suivantes :

  • Le nom d'utilisateur (ou le mot de passe) est incorrect.
  • L'utilisateur se connecte à partir d'une URL autre que @XXX.
  • L'utilisateur ne dispose pas des droits d'accès appropriés pour la base de données à laquelle il tente de se connecter.

Solutions possibles

  • Vérifiez le nom d'utilisateur et le mot de passe correspondant.
  • Vérifiez l'origine de la connexion pour voir si elle correspond à l'URL pour laquelle l'utilisateur dispose de droits d'accès.
  • Vérifiez les droits d'accès de l'utilisateur dans la base de données.

Le disque est saturé

Soit le message d'erreur Disk is full s'affiche, soit vous constatez que l'espace disque est insuffisant.

Cause possible

Le disque de l'instance principale peut arriver à saturation lors de la création de l'instance dupliquée.

Solutions possibles

Modifiez l'instance principale en augmentant la taille du disque.


Erreur fatale lors de la mise à niveau

Le message d'erreur ERROR_INTERNAL_FATAL s'affiche lorsque vous mettez à niveau des ressources sur une instance.

Cause possible

Il peut y avoir de nombreuses causes.

Solutions possibles

Les journaux peuvent révéler davantage d'informations. Sinon, contactez le service client pour forcer la recréation de l'instance.


Erreur HTTP 409

Le message d'erreur HTTP Error 409 in a Terraform script ou Error 409 Operation failed because another operation was already in progress s'affiche.

Cause possible

  1. Vérifiez le script Terraform. Il doit attendre la fin de chaque opération avant de commencer la suivante.
  2. HTTP Error 409: Operation failed because another operation was already in progress
  3. Vous tentez de réutiliser le nom d'une instance récemment supprimée pour une nouvelle instance alors que le délai d'attente avant la réutilisation du nom n'est pas écoulé.

Solutions possibles

  1. Si vous exécutez un script Terraform, arrêtez son exécution jusqu'à ce que l'opération de chaque instance se termine. Demandez au script d'effectuer une interrogation et attendez qu'un code 200 soit renvoyé pour l'ID de l'opération précédente. Sinon, attendez la fin de l'opération en cours.
  2. Après avoir supprimé une instance, vous devez attendre une semaine avant de pouvoir réutiliser le même nom pour une nouvelle instance.

Erreur interne

Le message d'erreur {"ResourceType":"sqladmin.v1beta4.instance", "ResourceErrorCode":"INTERNAL_ERROR","ResourceErrorMessage":null} s'affiche.

Cause possible

Le compte de service de mise en réseau des services requis pour cette fonctionnalité peut ne pas être spécifié pour le projet de service.

Solutions possibles

Pour réparer les autorisations de service, désactivez l'API Service Networking API, attendez cinq minutes, puis réactivez-la.


Échec d'association de réseau

Le message d'erreur Network association failed due to the following error: set Service Networking service account as servicenetworking.serviceAgent role on consumer project s'affiche.

Cause possible

L'API Service Networking API n'est pas activée dans le projet.

Solutions possibles

Activez l'API Service Networking API dans votre projet. Si cette erreur s'affiche lorsque vous tentez d'attribuer une adresse IP privée à une instance Cloud SQL et que vous utilisez un VPC partagé, vous devez également activer l'API Service Networking API pour le projet hôte.


Connexion non autorisée

Le message d'erreur Unauthorized to connect s'affiche.

Cause possible

Il peut exister plusieurs causes, car l'autorisation se produit à plusieurs niveaux.

  • Au niveau de la base de données, il doit exister un utilisateur avec un mot de passe correspondant.
  • Au niveau du projet, l'utilisateur peut ne pas disposer des autorisations IAM appropriées, telles que serviceusage.services.use ou cloudsql.instances.connect.
  • Au niveau du réseau, si l'instance Cloud SQL utilise une adresse IP publique, l'adresse IP source de la connexion doit se trouver dans un réseau autorisé.

Solutions possibles

  • Assurez-vous qu'il existe un utilisateur avec un mot de passe correspondant.
  • Attribuez le rôle Service Usage Consumer au compte utilisateur. Ce rôle inclut l'autorisation serviceusage.services.use.
  • Si vous utilisez une adresse IP publique, assurez-vous que l'adresse IP source se trouve dans un réseau autorisé.

Quota dépassé

Le message d'erreur RESOURCE_EXHAUSTED: Quota exceeded ou GLOBAL_ADDRESSES_QUOTA_EXCEEDED s'affiche.

Cause possible

Vous avez atteint votre limite de quota par minute ou par jour. Vérifiez les quotas et limites pour Cloud SQL.

Solutions possibles

Demandez une augmentation de vos quotas depuis Google Cloud Console.


Il manque une clé API valide dans la requête

Le message d'erreur HTTP Error 403: PERMISSION_DENIED. The request is missing a valid API key s'affiche.

Cause possible

Il se peut que le fichier JSON de clé de compte de service ne soit pas valide ou qu'il ne soit pas stocké à l'emplacement attendu.

Solutions possibles

Vérifiez que vous disposez d'un fichier JSON de clé de compte de service valide à l'emplacement stocké dans la variable d'environnement GOOGLE_APPLICATION_CREDENTIALS et que cette dernière pointe vers l'emplacement approprié.


Une erreur système est survenue

Le message d'erreur [ERROR_RDBMS] system error occurred s'affiche.

Cause possible

  1. Il se peut que l'utilisateur ne dispose pas de toutes les autorisations Cloud Storage dont il a besoin.
  2. La table de base de données n'existe peut-être pas

Solutions possibles

  1. Vérifiez que vous disposez tout au moins des autorisations WRITER sur le bucket et READER sur le fichier d'exportation. Pour en savoir plus sur la configuration du contrôle d'accès dans Cloud Storage, consultez la page Créer et gérer des listes de contrôle d'accès.
  2. Assurez-vous que la table existe. Si tel est le cas, vérifiez alors que vous disposez des autorisations appropriées sur le bucket de stockage.

La définition de la table a changé

Le message d'erreur Table definition has changed, please retry transaction when dumping table s'affiche.

Cause possible

Pendant le processus d'exportation, la table a subi une modification.

Solutions possibles

La transaction de vidage peut échouer si vous utilisez les instructions ci-dessous lors de l'opération d'exportation :

  • ALTER TABLE
  • CREATE TABLE
  • DROP TABLE
  • RENAME TABLE
  • TRUNCATE TABLE
Supprimez l'une de ces instructions de l'opération de vidage.


La taille du fichier temporaire dépasse la valeur de "temp_file_limit"

Le message d'erreur Temporary file size exceeds temp_file_limit s'affiche.

Cause possible

La valeur de l'option temp_file_limit n'est pas suffisamment élevée pour votre utilisation de la base de données.

Solutions possibles

Augmentez la taille de temp_file_limit. Consultez la page Configurer des indicateurs de base de données.