La plupart des échecs de connexion aux bases de données sur Square Cloud se résument à l’une de ces trois causes : un certificat SSL manquant, une liste blanche IP qui ne tient pas compte d’une IP dynamique, ou des identifiants incorrects. Trouvez l’erreur exacte ci-dessous.
« Host ‘X’ is not allowed to connect to this MySQL server »
Ce que ça signifie : le client MySQL rejette la connexion avec exactement ce message.
Pourquoi ça arrive : les bases de données hébergées par Square Cloud exigent SSL pour chaque connexion. Cette erreur apparaît quand la connexion est tentée sans le certificat chargé, et non à cause d’un pare-feu/liste blanche d’hôtes comme le message le laisse penser.
Comment corriger :
- Ouvrez la base de données dans le tableau de bord Square Cloud et téléchargez les fichiers de certificat (CA, cert, key, généralement 2-3 champs).
- Chargez-les dans la configuration SSL/TLS de votre client :
- Clients GUI (MySQL Workbench, DBeaver, HeidiSQL) : configurez les fichiers de certificat téléchargés dans l’onglet SSL du client, puis connectez-vous avec l’hôte/port/utilisateur/mot de passe affichés dans le tableau de bord.
- Code (Prisma ORM) : convertissez le certificat client + la clé en
.p12 :
Puis définissez :
Livrez client.p12 dans le .zip de l’application et définissez DATABASE_URL dans les Variables d’environnement du tableau de bord.
- Vérifiez que le nom d’utilisateur et le mot de passe correspondent à ceux affichés dans le tableau de bord, et redémarrez la base de données si le certificat vient juste d’être généré.
Ne commitez jamais certificate.pem ou client.p12 dans un dépôt public, gardez-les hors du contrôle de version, mais incluez-les bien dans le .zip de déploiement quand votre application les lit depuis le disque.
MongoNetworkError et échecs de liste blanche IP MongoDB Atlas
Ce que ça signifie : un cluster MongoDB Atlas hébergé en externe (pas une base de données gérée Square Cloud) refuse la connexion avec MongoNetworkError: connection ... closed, même si les identifiants sont corrects.
Pourquoi ça arrive : les conteneurs d’applications Square Cloud utilisent une adresse IPv4 dynamique qui change à chaque redémarrage. Une liste blanche IP MongoDB Atlas configurée pour une seule IP statique fonctionnera jusqu’au prochain redémarrage, puis échouera silencieusement.
Comment corriger, au choix :
- Recommandé si vous avez besoin d’Atlas externe : dans Atlas → Network Access, ajoutez
0.0.0.0/0 pour autoriser les connexions depuis n’importe quelle IP, et compensez la liste blanche élargie par des identifiants forts (mot de passe long et aléatoire, utilisateur de base de données dédié, chaîne de connexion conservée uniquement dans des variables d’environnement).
- Recommandé globalement : déplacez la base de données vers une base de données gérée Square Cloud au lieu d’un cluster Atlas externe. Héberger la base de données à côté de l’application élimine entièrement le problème de liste blanche IP et offre une latence quasi nulle.
Délai de connexion et ECONNREFUSED
Ce que ça signifie : l’application reste bloquée jusqu’au délai d’attente, ou échoue immédiatement avec ECONNREFUSED, en essayant d’atteindre une base de données.
Pourquoi ça arrive, en règle générale :
- Un délai d’attente (la connexion reste bloquée, pas de rejet immédiat) signifie généralement qu’un pare-feu ou une liste blanche IP sur la base de données de destination bloque la connexion. De nombreux fournisseurs externes bloquent par défaut les IP de datacenter/étrangères.
- Un ECONNREFUSED immédiat ou une « authentification échouée » signifie généralement que l’hôte/port est joignable mais que les identifiants, le nom de la base de données, ou le numéro de port sont incorrects.
Comment corriger :
- Si vous vous connectez à un fournisseur externe (pas une base de données gérée Square Cloud), autorisez les ASN de Square Cloud sur le pare-feu de destination :
398395 et 26548. Là où seule la liste blanche par IP est prise en charge (comme MongoDB Atlas), utilisez 0.0.0.0/0 avec des identifiants forts à la place, puisque l’IP source est dynamique.
- Vérifiez l’hôte, le port, le nom d’utilisateur et le mot de passe par rapport à ce qu’affiche le fournisseur ou le tableau de bord Square Cloud.
- Encodez en URL tout caractère spécial dans la chaîne de connexion (
@, :, /, etc. dans un mot de passe cassera l’analyse s’il est laissé brut).
- Vérifiez si le pilote du fournisseur nécessite un paramètre
ssl=true explicite (ou similaire) dans la chaîne de connexion.
Erreurs de connexion SSL/TLS
Ce que ça signifie : le client échoue à établir une poignée de main TLS avec la base de données, ou échoue juste après avec une erreur qui ressemble à un problème d’authentification mais est en réalité un problème de certificat.
Pourquoi ça arrive : les bases de données gérées Square Cloud exigent SSL pour chaque connexion. Chaque moteur de base de données attend le certificat sous une forme légèrement différente :
- Redis : le protocole doit être
rediss:// (deux s), jamais redis://. Forme : rediss://default:PASSWORD@HOST:PORT. node-redis accepte aussi socket: { tls: true, ca: fs.readFileSync("certificate.pem") } ; la bibliothèque Python redis prend ssl_ca_certs/ssl_certfile/ssl_keyfile (le certificate.pem combiné téléchargé depuis le tableau de bord fonctionne pour tous).
- Drizzle ORM (Postgres) : un
Pool pg standard avec ssl: { ca, cert, key }, tous chargés via fs.readFileSync depuis le certificate.pem combiné, et le même objet ssl dans drizzle.config.ts.
- JDBC (Java) : la clé du client doit être convertie au format PK8/DER et référencée dans les propriétés SSL de l’URL JDBC.
Comment corriger : retéléchargez le certificat depuis la page de la base de données dans le tableau de bord (un fichier de certificat ancien ou partiel est une cause fréquente), confirmez que la chaîne de connexion utilise le protocole/schéma compatible TLS pour votre moteur, et redémarrez la base de données si vous venez de la créer.
Pour créer et se connecter à une base de données gérée depuis zéro, consultez Bases de données.
Si le message d’erreur ne correspond à rien ci-dessus, notre équipe de support peut vous aider à diagnostiquer l’échec de connexion exact.
Si vous rencontrez toujours des difficultés techniques, notre équipe de support spécialisée est disponible pour vous aider. Contactez-nous et nous serons ravis de vous aider à résoudre tout problème. La qualité du support compte pour beaucoup dans la note que les développeurs donnent à Square Cloud, 4,9/5 sur 402 avis sur Google et Trustpilot.