Questions fréquentes sur Cloud SQL pour PostgreSQL

À propos

Qu'est-ce que Cloud SQL ?
Cloud SQL est un service qui fournit des bases de données SQL entièrement gérées dans le cloud. Cloud SQL fournit des bases de données PostgreSQL, SQL Server et MySQL.
Quels sont les avantages offerts par Cloud SQL ?
Cloud SQL vous permet de confier à Google les tâches routinières, mais nécessaires et souvent chronophages, telles que l'application des correctifs et des mises à jour, la gestion des sauvegardes et la configuration des réplications. Vous pouvez ainsi vous concentrer sur la création d'applications de qualité. En outre, comme nous utilisons des protocoles filaires standards, vous pouvez vous connecter n'importe où et depuis n'importe quelle application.
Quelles sont les versions de bases de données disponibles avec Cloud SQL ? Comment les mises à jour sont-elles gérées ?

Cloud SQL pour PostgreSQL est compatible avec PostgreSQL 9.6, 10, 11, 12, 13, 14, 15, 16 (par défaut) et 17.

Les mises à jour de versions mineures sont déployées dans le cadre de la maintenance planifiée. Aucune autre action n'est requise de votre part. Pour en savoir plus sur les mises à jour, consultez la page Présentation de la maintenance sur les instances Cloud SQL.

Pour connaître la version actuelle de votre instance, accédez à Google Cloud Console, puis cliquez sur le nom de l'instance pour ouvrir la page Détails de l'instance. Vous pouvez également utiliser la commande gcloud sql instances describe.

Cloud SQL est-il compatible avec toutes les fonctionnalités de bases de données ?
Cloud SQL est compatible avec les fonctionnalités les plus courantes de PostgreSQL. Pour obtenir la liste de toutes les différences entre les fonctionnalités PostgreSQL standards et celles offertes par Cloud SQL, consultez la section sur les différences entre les fonctionnalités PostgreSQL standards et Cloud SQL.
Existe-t-il des limites de taille ou de RPS ?
Aucune limite relative aux requêtes par seconde (RPS) n'est définie pour les instances Cloud SQL. Pour en savoir plus sur les limites de taille et de nombre de connexions, ainsi que celles propres à App Engine, consultez la page Quotas et limites.
Comment être averti lorsque des modifications sont apportées à Cloud SQL ?
Vous pouvez vous inscrire au forum google-cloud-sql-announce, sur lequel nous publions des annonces et des informations concernant Cloud SQL.
Comment signaler un bug, demander une fonctionnalité ou poser une question ?
Vous pouvez signaler des bugs et demander une fonctionnalité dans notre groupe google-cloud-sql-discuss. Vous pouvez poser une question dans Stack Overflow. Pour voir d'autres options d'assistance, consultez la page Assistance Cloud SQL.
Haut de page

Premiers pas

Pourquoi ma nouvelle instance indique-t-elle que l'espace disque est utilisé alors qu'elle ne contient pas de données ?
Au moment de la création de l'instance, Cloud SQL et la base de données utilisent de l'espace pour les fichiers système et les métadonnées.
Haut de page

Stockage, réplication et authentification des données

Où mes données sont-elles stockées ?

Les données d'une instance sont stockées dans la région où celle-ci réside. Si vous ne spécifiez pas d'emplacement de stockage, vos sauvegardes sont stockées dans l'emplacement multirégional le plus proche géographiquement de l'emplacement de votre instance Cloud SQL. Par exemple, si votre instance Cloud SQL se trouve dans us-central1, vos sauvegardes sont stockées par défaut dans l'emplacement multirégional us. Toutefois, un emplacement par défaut tel que australia-southeast1 ne se trouve pas dans un emplacement multirégional. L'emplacement multirégional le plus proche est asia.

Qu'est-ce qu'une zone ?

Une zone est un emplacement géographique spécifique au sein duquel vous pouvez exécuter vos ressources. Par exemple, us-central1-a désigne une zone du centre des États-Unis.

Pour en savoir plus sur les zones, consultez la page Ressources zonales dans la documentation Compute Engine.

Quelles sont les limites de stockage ?
Pour en savoir plus sur les limites de stockage, consultez la page Quotas et limites.
Comment mes données sont-elles répliquées ?

Les instances PostgreSQL fournissent une configuration à haute disponibilité et des instances dupliquées avec accès en lecture.

Quel type d'instances dupliquées avec accès en lecture puis-je créer ?

Pour en savoir plus sur les instances dupliquées avec accès en lecture, y compris sur les cas d'utilisation pour chaque type, consultez la page Options de réplication.

Comment fonctionne le basculement Cloud SQL ?

Pour en savoir plus sur le basculement, consultez la page Présentation de la configuration de la haute disponibilité.

Mes données sont-elles chiffrées ?
Les données client Cloud SQL sont chiffrées lorsqu'elles sont stockées dans des tables de base de données, des fichiers temporaires et des sauvegardes. Les connexions externes peuvent être chiffrées à l'aide du protocole SSL ou du proxy d'authentification Cloud SQL.
Comment le chiffrement est-il géré pour les données au repos ?

Les données sont chiffrées à l'aide de la norme Advanced Encryption Standard 256 bits (AES-256), ou mieux, avec des clés symétriques : la même clé permet de chiffrer les données lors de leur stockage et de les déchiffrer lors de leur utilisation. Ces clés de données sont elles-mêmes chiffrées à l'aide d'une clé stockée dans un keystore sécurisé, et elles sont régulièrement modifiées.

Pour en savoir plus, consultez la page Chiffrement au repos dans Google Cloud.

Comment le chiffrement est-il géré pour les données en transit ?

Google chiffre et authentifie toutes les données en transit sur une ou plusieurs couches réseau lorsque des données sont transférées en dehors des limites physiques qui ne sont pas contrôlées par ou pour le compte de Google. Les données en transit se trouvant au sein d'une limite physique contrôlée par ou pour le compte de Google sont généralement authentifiées, mais elles peuvent ne pas être chiffrées par défaut. Si vous vous connectez à une instance à l'aide de son adresse IP publique, utilisez des certificats SSL/TLS afin que les données soient sécurisées pendant leur transmission. Selon votre modèle de gestion des menaces, vous pouvez choisir d'appliquer des mesures de sécurité supplémentaires. Par exemple, vous pouvez configurer SSL pour les connexions intrazones à Cloud SQL.

Pour en savoir plus, consultez la page Chiffrement en transit dans Google Cloud.

Haut de page

Migration des données

Comment les données et les contraintes sont-elles migrées vers Cloud SQL ?
Au cours du processus de migration, les données sont transférées en premier et les contraintes (par exemple, les clés primaires, les clés étrangères et les index) sont recréées ultérieurement sur l'instance.
Comment accélérer la migration de mes données ?
Vous pouvez maintenant migrer les données des tables de votre base de données en parallèle. Les performances sont améliorées, car Cloud SQL peut transférer les données via des processus parallèles au sein d'une même base de données. Vous pouvez définir la vitesse à laquelle Cloud SQL transfère ces données vers min, optimal ou max. Pour en savoir plus, consultez la section Utiliser une importation gérée pour configurer la réplication à partir de bases de données externes.
Haut de page

Sauvegarde et récupération

Comment récupérer une instance ?

Pour restaurer une sauvegarde, vous pouvez utiliser Google Cloud Console ou l'outil de ligne de commande gcloud. Pour en savoir plus, consultez la page Restaurer une instance.

Pour restaurer une instance à un moment spécifique, utilisez une récupération à un moment précis. Pour en savoir plus, consultez la section Utiliser la récupération à un moment précis.

Combien coûtent les sauvegardes ?

Les sauvegardes sont facturées au tarif de stockage de l'instance.

Pour en savoir plus sur la tarification du stockage des instances et les tarifs appliqués aux instances, consultez la page Tarifs.

Puis-je accéder à des sauvegardes automatiques datant de plus de sept jours ?

Les sauvegardes automatiques ont lieu chaque jour et sont conservées par défaut pendant sept jours. Vous pouvez configurer la valeur de conservation des sauvegardes de 1 à 365 sauvegardes. À la fin de la période de conservation, la sauvegarde la plus ancienne est supprimée. Les sauvegardes automatiques sont incrémentielles. Elles ne contiennent que des données qui ont été modifiées depuis la dernière sauvegarde. Ainsi, la taille de la sauvegarde la plus ancienne est comparable à celle de la base de données. Lorsque la sauvegarde la plus ancienne est supprimée, la taille de la deuxième sauvegarde la plus ancienne augmente. Il existe donc toujours une sauvegarde complète.

Notez que les sauvegardes à la demande ne sont pas supprimées tant que vous ne les supprimez pas manuellement.

Quand dois-je utiliser la réplication externe plutôt qu'interrégionale à des fins de protection contre les défaillances régionales ?
Réplication externe Réplication interrégionale
Autogérée par le client Instance dupliquée interrégionale gérée par Cloud SQL
Réplication possible entre des instances Google Cloud et autres que Google Cloud Réplication possible uniquement entre instances Cloud SQL
Permet de migrer vers/depuis Google Cloud pour limiter les temps d'arrêt et de protéger des données hybrides/multicloud Permet de migrer des données entre les régions Google Cloud pour minimiser les temps d'arrêt
Compatible avec la duplication d'instances entre versions majeures Non compatible avec la duplication d'instances entre versions majeures
Haut de page

Gestion de vos instances

Quelles actions peuvent entraîner le redémarrage des instances Cloud SQL ?
Les actions suivantes entraînent le redémarrage des instances Cloud SQL, qu'elles soient effectuées par vous-même ou par Cloud SQL :
  • Mettre à jour
  • Créer
  • Promouvoir une instance dupliquée
  • Maintenance
  • Recréer l'instance dupliquée
  • Basculement
  • Redémarrer
  • Restauration de l'instance à partir d'une sauvegarde
  • Activation de la haute disponibilité sur une instance existante (correspond à une mise à jour de l'instance)
  • Ajout d'une option de base de données qui nécessite un redémarrage

Les adresses IP publiques ou privées d'une instance ne sont pas modifiées en cas de redémarrage.

Consultez la section suivante : Pendant combien de temps les instances sont-elles arrêtées au redémarrage ?

Pendant combien de temps les instances sont-elles arrêtées au redémarrage ?

Lors du redémarrage des instances, la plupart d'entre elles sont arrêtées pendant une à deux minutes. Avant l'arrêt d'une instance, toutes les connexions sont terminées, et le travail en cours est vidé du disque.

Si l'instance présente une charge importante, ce processus prend plus de temps, et l'instance peut sembler bloquée. Dans ce cas, un délai d'une heure peut être nécessaire pour que l'instance s'arrête et redémarre. L'arrêt et le redémarrage d'une instance peuvent par exemple prendre du temps lorsque l'utilisateur dispose de nombreuses transactions d'écriture ou lorsque celles-ci s'exécutent pendant une longue période.

Puis-je agrandir ou réduire ma base de données ?

Vous pouvez augmenter l'espace de stockage disponible pour votre instance à tout moment, sans aucun temps d'arrêt. Vous ne pouvez pas réduire la taille de l'espace de stockage de l'instance. Vous pouvez également configurer cette dernière pour augmenter automatiquement sa capacité de stockage lorsque l'espace est insuffisant. En savoir plus

Puis-je mettre à niveau les processeurs virtuels et revenir à une version antérieure ?

Oui. Vous pouvez modifier le nombre de processeurs virtuels utilisés sur votre instance. Vous pouvez augmenter ou diminuer le nombre de cœurs utilisés autant de fois que vous le souhaitez. En règle générale, la modification du nombre de processeurs virtuels entraîne un temps d'arrêt de moins de cinq minutes. Si vous augmentez le nombre de processeurs virtuels sur votre instance principale Cloud SQL Enterprise Plus, la modification prend effet avec un temps d'arrêt quasiment nul.

Dois-je utiliser Google Cloud Console pour gérer Cloud SQL ?
Non. Toutes les tâches de gestion réalisables via la console peuvent également être effectuées de façon automatisée via l'API Cloud SQL Admin ou via un script à l'aide de l'outil de ligne de commande gcloud.
Comment récupérer l'espace utilisé par les fichiers temporaires ?
Le volume de fichiers temporaires peut croître en cas de création de nombreuses tables temporaires par les requêtes SQL. Pour récupérer l'espace utilisé par les tables temporaires, vous devez redémarrer la base de données. Notez que le redémarrage de la base de données ne réduit pas l'espace disque provisionné résultant de l'augmentation des fichiers temporaires.
Puis-je importer ou exporter une base de données spécifique ?
Oui. Vous ne pouvez importer ou exporter qu'une base de données spécifique. Il n'est pas possible d'importer ou d'exporter plus d'une base de données à la fois. Pour en savoir plus, consultez les informations sur l'importation ou l'exportation de données.
Puis-je importer ou exporter un fichier CSV ?
Vous pouvez importer ou exporter un fichier CSV pour MySQL ou PostgreSQL. Pour en savoir plus, consultez la section sur la création d'un fichier CSV.

Le format CSV n'est actuellement pas compatible avec Cloud SQL pour SQL Server.

Ai-je besoin d'un compte Cloud Storage pour importer ou exporter des données vers une instance ?
Cloud SQL accepte l'importation et l'exportation de bases de données à l'aide de fichiers CSV ou pg_dump. Pour en savoir plus, consultez les sections Exporter et importer à l'aide de pg_dump et pg_restore ou Exporter et importer à l'aide de fichiers CSV.
Si je supprime une instance, puis-je réutiliser son nom ?
Oui.
Quel niveau d'isolation des transactions Cloud SQL offre-t-il ?

Instances PostgreSQL : Cloud SQL assure l'isolation des transactions Read committed. Vous pouvez modifier le niveau d'isolation des transactions pour une transaction spécifique, mais il est généralement préférable de conserver la valeur par défaut. Pour en savoir plus, consultez la page Isolation des transactions dans la documentation PostgreSQL.

Comment protéger mon instance contre toute suppression accidentelle ?
La protection contre la suppression peut être activée lors de la création d'une instance ou plus tard. Si ce paramètre est activé, vous devez le désactiver avant de supprimer l'instance. Consultez la section Empêcher la suppression d'une instance.
Haut de page

Insights

Je ne trouve pas l'exemple de plan de requête dans Insights. Pourquoi ?
Nous ne disposons que d'exemples de requêtes pour obtenir le plan de requête, en raison de l'impact de ses performances sur la requête. Par conséquent, il arrive que des plans de requête n'apparaissent pas.
Haut de page

Tarification et facturation

Comment essayer Cloud SQL ?
La plus petite instance est db-f1-micro. Vous pouvez vous en servir pour tester le service. Sachez que le contrat de niveau de service ne couvre pas les instances à cœur partagé.
Combien d'instances puis-je créer dans un projet ?
Pour en savoir plus sur la limite du nombre d'instances, consultez la page Quotas et limites.
De quelle taille d'instance de base de données ai-je besoin ? De combien de mémoire RAM ?
En général, vous pouvez augmenter les performances de votre base de données en choisissant une instance plus grande avec davantage de RAM et de processeur. Cela augmente les performances de nombreuses requêtes impliquant de grandes quantités de calculs, telles que celles impliquant des jointures, des clauses ORDER BY ou GROUPing. En revanche, l'incidence sur les performances des mises à jour affectant les lignes individuelles est minime. Cependant, plus la taille de l'instance est grande, plus la latence opérationnelle est importante. Pour en savoir plus sur les tailles d'instance et la tarification, consultez la page Tarifs.
Comment l'utilisation de mon instance est-elle calculée ?

Vous êtes facturé à la minute pour le temps d'activation de l'instance.

Comment le stockage est-il calculé ?
Le stockage est calculé en fonction de la quantité d'espace de stockage que vous avez configurée pour votre instance. Le stockage pour les sauvegardes est facturé en fonction de la quantité d'espace utilisée par vos sauvegardes. Il vous est facturé, que votre instance soit activée ou désactivée.
Comment voir le montant qui me sera facturé ?
L'onglet Facturation de Google Cloud Console affiche les frais encourus par vos instances depuis l'émission de la dernière facture.
Que se passe-t-il lorsque mon instance atteint la taille maximale autorisée ?
Si l'instance atteint la taille de stockage configurée, et que vous n'activez pas l'augmentation automatique de l'espace de stockage ou qu'elle a atteint sa limite configurée, les futures écritures dans la base de données ne sont pas autorisées tant que vous n'augmentez pas la taille de stockage. L'augmentation de la taille de stockage ne nécessite pas de temps d'arrêt ni de redémarrer d'instance.
Pourquoi mon instance est-elle suspendue ?
Cela est probablement dû à un problème avec votre compte Google Cloud. Vous pouvez déterminer votre état de facturation en créant une demande d'aide concernant la facturation. Une fois le problème de facturation résolu, l'instance revient à l'état exécutable dans les heures qui suivent. Sachez que les instances MySQL suspendues sont supprimées au bout de 90 jours.
Pourquoi mon instance a-t-elle été supprimée ?
Les instances suspendues pendant 90 jours sont supprimées. Cette mesure s'applique aux instances dont l'état est SUSPENDED. Les instances arrêtées, dont l'état est RUNNABLE, ne sont pas supprimées.
Comment annuler mon compte Cloud SQL ?
Pour désactiver Cloud SQL pour un projet, accédez à Google Cloud Console, sélectionnez le projet, puis le service API pour ouvrir le tableau de bord des API. Recherchez l'API Cloud SQL, puis cliquez sur Désactiver pour cette API.
Comment désactiver la facturation ?
Vous pouvez désactiver la facturation en cliquant sur Désactiver la facturation dans le panneau Facturation et paramètres de la console Google Cloud pour un projet. Si vous désactivez la facturation, vous désactivez également le service Cloud SQL. Assurez-vous que vous souhaitez vraiment désactiver le service Cloud SQL avant de désactiver la facturation.

Une fois la facturation désactivée, vous recevez une dernière facture pour les frais engendrés entre le début du cycle de facturation et l'annulation.

Haut de page

Utiliser Cloud SQL avec App Engine

Puis-je me connecter à une instance PostgreSQL depuis App Engine ?
Vous pouvez vous connecter à une instance PostgreSQL depuis une application App Engine, en fonction de l'environnement et du langage que vous utilisez. Pour en savoir plus, consultez les pages Se connecter depuis l'environnement standard App Engine et Se connecter depuis l'environnement flexible App Engine.
Mon application App Engine située aux États-Unis peut-elle accéder à mon instance Cloud SQL située dans l'Union européenne (et inversement) ?

Si vous vous connectez à une instance Cloud SQL, l'application App Engine n'a pas besoin d'être dans la même région. Toutefois, plus la distance entre l'instance Cloud SQL et l'application App Engine est importante, plus la latence des connexions à la base de données est élevée.

Quel service de base de données Google Cloud me convient-il le mieux ?
Cela dépend des exigences de votre application. Google Cloud propose de nombreuses options pour stocker, gérer et récupérer vos données. Pour en savoir plus, consultez la page Bases de données Google Cloud.
Dois-je installer un serveur de base de données local pour utiliser le serveur de développement App Engine ?
Non. Vous pouvez configurer App Engine de façon à utiliser Cloud SQL ou un serveur de base de données installé localement lors de l'exécution sur le serveur de développement.
Quels langages puis-je utiliser pour accéder à mon instance ?
L'environnement standard App Engine est compatible avec plusieurs langages que vous pouvez utiliser pour vous connecter à vos instances. Pour en savoir plus, consultez les pages Se connecter depuis l'environnement standard App Engine et Se connecter depuis l'environnement flexible App Engine.

Si vous n'utilisez pas App Engine, vous pouvez utiliser n'importe quel langage ayant une API ou un connecteur associé.

Puis-je utiliser Django avec Cloud SQL ?
Oui. Cloud SQL est compatible avec Django. Consultez la page Premiers pas avec Django.
Quels espaces réservés puis-je utiliser dans ma chaîne de requête Python ?
Les utilisateurs de Python peuvent uniquement utiliser le code de format %s lors de la substitution de paramètres. Par conséquent, l'instruction suivante est incorrecte : cursor.execute('INSERT INTO entries (guestAge) VALUES (%d)', (age)).
Comment gérer les connexions ?

La gestion efficace de vos connexions à la base de données est un aspect important du développement d'applications de base de données, y compris l'utilisation du regroupement de connexions et d'un intervalle exponentiel entre les tentatives. Pour consulter des exemples d'utilisation de ces techniques dans différents langages et frameworks, consultez la page Gérer les connexions à la base de données.

Pour en savoir plus sur les limites de connexion des instances, consultez la page Quotas et limites.

Que signifie l'exception SQLException avec le message "ID de connexion non valide" ?
Cela signifie que la connexion n'est plus ouverte sur le serveur et qu'elle est supprimée par le client. Vous n'avez pas besoin d'appeler "close" sur ces connexions, car elles sont déjà fermées.
Puis-je accéder à mon instance Cloud SQL de manière automatisée en dehors d'App Engine ?
Oui. Vous pouvez accéder de manière automatisée aux instances Cloud SQL à partir d'applications externes en utilisant n'importe quel langage compatible. Consultez la page Présentation du processus de connexion.
Haut de page